summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools
Commit message (Collapse)AuthorAgeFilesLines
* Fix QLocale::standaloneMonthName when d->m_data == systemData()El Mehdi Fekari2013-05-216-3/+17
| | | | | | | | | | | | | | | | | At the moment if d->m_data == systemData() it calls systemLocale()->query but forgets about the standalone part so you get the wrong data This patch introduces the new enums so that backends can implement properly the standaloneMonthName feature properly. At the moment the Windows and Mac ones still return the monthName, the Unix and Blackberry ones return the data we store in months_data. cherry picked from qtbase/b1de018e9a1efcd0f9e298ae4c865197feb47895 Change-Id: I1054420dc696ed2be0d52bdc6567ebaf202faf12 Reviewed-by: Albert Astals Cid <albert.astals@canonical.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Special-case the forward declaration of STL types for libc++.Raphael Kubo da Costa2013-05-111-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is somewhat of a follow-up to 5210d47aa66214e3cb16f394d0510a91f770c1b1. libc++ declares the STL types in an inline namespace within the "std" one if clang is used. If one includes a header such as <iterator> before a Qt one and builds with QT_NO_STL, the following ends up happening: // <iterator> namespace std { inline namespace __1 { struct random_access_iterator ... ; } } // qiterator.h #ifdef QT_NO_STL namespace std { struct random_access_iterator; } #endif qiterator.h's declaration shadows the original one, and the compiler complains random_access_iterator lacks an actual declaration. Solve this by checking for libc++ and forward-declaring the iterator types we need within the same inline namespace. Not backported from qtbase because QT_NO_STL does not exist in Qt 5. Change-Id: I6742d540f6538a30aa060a4447c288cfb9cd781d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Check that 3DNow! instructions are supported before including mm3dnow.h.Raphael Kubo da Costa2013-05-101-1/+1
| | | | | | | | | | | | | | | | | | Include mm3dnow.h the way we already include the (S)SSE{3,4} and AVX instruction headers: by checking that the compiler is set to support those instructions besides verifying that QT_HAVE_3DNOW evalues to true (which only means the compiler supported them when the build was being configured). This has not caused a problem in most cases so far because GCC protects its mm3dnow.h header with an #ifdef __3dNOW__ (contrary to what it does on, say, pmmintrin.h). clang's mm3dnow.h, on the other hand, does not have that check and can fail if -march is set to, for example, i386 or i486. Not backported from qt5 because qtbase because qsimd_p.h does not include the 3DNow! headers after commit a1b30b49ef09bef2e97b9a0622bf7ad622678fee. Change-Id: I15ab5e936c71c55f89c3f25777ab27fbd262e9cd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make QContiguousCache with zero capacity not crashThiago Macieira2013-05-071-0/+6
| | | | | | | | | | | These containers don't make sense and will just result in no action being taken (all items added will simply be discarded), but it shouldn't crash due to a division by zero. Task-number: QTBUG-27339 Change-Id: Ib9acf5c0a9a826e6853e7beaf5e56511fde98dc6 (cherry-picked from qt5 commit 320c4e31e124f99601399d00935362b587c77510) Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* QLocale: Add fr_MA localeEl Mehdi Fekari2013-05-031-868/+873
| | | | | | | | French_Morocco locale was introduced in CLDRv22.1 and already exists in Qt5 Change-Id: I4f0452f421cf074eb2c4fae22351d430d5f02e42 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Use LC_MESSAGES instead of LC_NUMERIC in QSystemLocale::fallbackLocale()Dmitry Shachnev2013-04-071-1/+1
| | | | | | | Backported from QtBase 7dfee3ffc5129307. Change-Id: I5e7d0116ed95ede87c97d8ac2b9eff3b922818f7 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix a bug in QSystemLocale on BB10El Mehdi Fekari2013-04-042-18/+20
| | | | | | | | | | | Call qt_safe_open in the constructor to avoid opening the pps files several times. backport: f1d8987b82ce6b0a852b715a8713608bfd72aabf Change-Id: Ia6b8ca339fa2f9f85df28792e95242b6ff7b70ca Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Inital port of QSystemLocale on BlackBerry 10El Mehdi Fekari2013-03-205-107/+422
| | | | | | | | Backport of: a0c4a712263dbacd2c8d95da64e00bd213d05cbf Change-Id: I4253067b42a8aa93325d48eeaa3a9937be2d2b75 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Fixed bug in QTimeLine::setPaused(false)Jan Arve Saether2013-03-201-0/+3
| | | | | | | | | | | | | The problem was that the elapsed timer was not restarted, causing the currentTime() not being adjusted for the time it was paused. (cherry-picked from Qt 5: 75614792fa2370b6b0402117bf) Task-number: QTBUG-30108 Change-Id: I9718aa408075623514717328321c34e7ab3af436 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Update Irish locale to return correct date formatEl Mehdi Fekari2013-03-131-2/+2
| | | | | Change-Id: I89ad9b97dba6f76d34a23ec03b119fb51e592917 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Workaround a bug in mktime on QNXFabian Bumberger2013-03-131-0/+10
| | | | | | | | | | | | | Under certain circumstances, mktime failes to convert the tm struct into secs since epoch. This is a workaround and fixes the qdatetime and qqmllocale autotests. Backport of: 56820382f26 Change-Id: I7d819aad2d6901cd096b441f2c18fd97108d9abb Reviewed-by: Mehdi Fekari <mfekari@rim.com> Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QLocale: Update tamil's AM/PM textEl Mehdi Fekari2013-02-151-107/+106
| | | | | | Change-Id: I355d24fcaaf2c76b8bdbc51f71f931118f5cb3cd Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* QLocale: Update the Japanese and Czech localeEl Mehdi Fekari2013-02-121-5/+5
| | | | | | | | | | | - Japanese locale: Year should be displayed in 4 digits instead of 2 in short format - Czech locale: monthName should be displayed in lower case N.B: The changes above are already fixed on Qt 5 that uses an updated version (v22.1) of CLDR Change-Id: I40535ea60b1f6abdd3717a28adbcddaa63b39997 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* BlackBerry: The MeasurementSystem port was for BlackBerry OS not QNXSamuli Piippo2013-02-012-11/+11
| | | | | | | | | | (cherry picked from qtbase/18260ed21240fe4c2d1892def80353448096e54c) Change-Id: I4de18389fc3ad7743d80b3f72b44083708d72e77 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Kalle Viironen <kalle.viironen@digia.com> Reviewed-by: Mehdi Fekari <mfekari@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Use stub function gettimeofday for VxWorksPasi Petäjäjärvi2013-01-281-0/+4
| | | | | | | | | Vxworks does not have gettimeofday function, use function implementation from qfunctions_vxworks.h/cpp instead. Change-Id: Iad0b811049b974c555febe1e47398b7df9ddda34 (cherry picked from qtbase/1309d9a9d68af902821d0ba5f76aa6e994aa6963) Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Update the Indonisian and Catalan locales in CLDR data:Mehdi Fekari2013-01-181-215/+214
| | | | | | | | - Indonisian locale (in.xml): to return correct AM/PM text and correct time Fomat - Catalan locale (ca.xml): to return correct time Format Change-Id: I65bbabdc6311dc3c958605cbc04e7a034243e9db Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-13108-108/+108
| | | | | | Change-Id: I52bf8ef0447b701b4ebf7d7d240013a72adb9425 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Add struct keyword for timeval variable to remove ambiguityPasi Petäjäjärvi2013-01-101-1/+1
| | | | | | | | | | VxWorks does not have gettimeofday function, so make sure we pick correct definition for timeval. This is not needed in Qt5, because there is already struct keyword used for timeval variable. Change-Id: Iedb47e7c50610f64b0178527127fc003ee67ff4a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Update Canadian(English) localeMehdi Fekari2013-01-101-2/+2
| | | | | | | | | Update dateFormat in Canadian(English) locale ("en_CA") to return: M/d/yy instead of: yy-MM-dd (Long: dddd, MMMM d, yyyy instead of EEEE, d MMMM, y) N.B: This doesn't concern Qt5 that uses the most recent version of CLDR (22.1) which already contain the fix above. Change-Id: I99f841c8f397086435d928d749c4d67e779f31f8 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Update Turkish and Irish locales dataMehdi Fekari2013-01-071-2624/+2641
| | | | | | | | | | | | | | | Update Turkish and Irish locales data The Irish/Gaelic locale data (CLDRv2.0) in Qt4.8 doesn't provide all month/day names, and the Turkish AM/PM texts are not updated. This patch updates the locales data below and provides an autotest to compare the expected vs returned values: - Irisch locale data (based on ga.xml file): Add month/day names in both short and long foramt based on CLDRv22.1 data. - Turkish locale data (basod on tr.xml file): Update AM/PM text to return "ÖÖ/ÖS" instead of "AM/PM". N.B: This doesn't concern Qt5 that uses the most recent version of CLDR (22.1) which already contains the fixes above. Change-Id: Ic61ba192619582bdc6bb729f4b91f31ae2894ee0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Don't increase the reference count if dynamic_cast failedThiago Macieira2013-01-051-0/+2
| | | | | | | | | | | | | | If the dynamic_cast failed in QSharedPointer::dynamicCast or qSharedPointerDynamicCast, we should avoid creating the QSharedPointer that shares the weak and strong reference counts. In Qt 5, this does not imply a leak since the original pointer is stored internally for deletion. In Qt 4 it implies a leak under certain circumstances, which this change fixes. Task-number: QTBUG-28924 Change-Id: Id2de140de4cf676461e14b201ad250c53666b79d (cherry-picked from qt5 commit a094bf5a893c3cccffff10c1420bfbe3a3c02a7c) Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Elaborate shortDayName(), etc using default locale.Leonard Lee2012-12-201-10/+10
| | | | | | | | | | | | QDate::toString() should explain QDate::shortDayName() and QDate::shortMonthName() will be localized name using the default locale from the system. Task-number: QTBUG-28522 Change-Id: I3d475a11066b181945d85ace4d3cbb4d8fa19b73 (cherry picked from commit qtbase/4cf112b641f7ea9fb1ba87cefcef7ee98b6b0831) Reviewed-by: Liang Qi <liang.qi@digia.com>
* Update defaultNumberingSystem value for some indic and slovak countries/regionsmfekari2012-12-141-19/+19
| | | | | | | | | | | | | | | | | Qt gets the information about locale digits from the <defaultNumberingSystem> entries in the CLDR data xm files. Current CLDR data in Qt4.8 is 2.0, which specifies native digits for most of Indic locales and arabic digits for slovak locale. This doesn't concern Qt5 that uses the most recent version of CLDR (22.1) which specify Latin digits for the locales in question. This patch updates the defaultNumberingSystem (to latin) and provides an autotest to compare the returned vs expected digits for the following langagues/regions: - Gujarati, Hindi, Kannada, Konkani, Malayalam, Marathi, Nepali, Punjabi, Tamil, Telugu (to use latin digits instead of native ones) - Slovak (to use latin digits instead of arabic ones) Change-Id: I04364cdb80292f7705b1321377623298a01a9c5b Reviewed-by: Vladimir Minenko <vminenko@rim.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Qnx: Check if QCoreApplication::instance() exists before using QSocketNotifiermfekari2012-11-291-2/+5
| | | | | | | This is a back port from: 5e59215ac649190a5b86f9af283d0cf41b88b3bf Change-Id: I889f8b69a0c81a5e0ed71d28a65279fe6e238e2f Reviewed-by: Peter Hartmann <phartmann@rim.com>
* Qnx: Handle the MeasurementSystem in QNXmfekari2012-11-232-0/+100
| | | | | | | | | This is a back port from: 3853035a45abb87c94314ac9f61f0c454a7f0262 Change-Id: If31252555406cb7347e6f7b676cda3938c420f78 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
* QString doesn't work with old ABI on ARM.Tomasz Duda2012-11-172-2/+11
| | | | | | | | | | | | QString doesn't work on ARM platform with old ABI because QChar has wrong size. Macro Q_PACKED was removed by commit 1ec8acd77b6c048f5a68887ac7750b0764ade598. Some projects still use old ABI. It is better to check version of ABI during compiling. Task-number: QTBUG-15784 Change-Id: I92180b864679e01363fa837260707b67674d0a26 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update Qlocale data with CLDR 2.0.0Konstantin Ritt2012-11-103-4532/+5150
| | | | | | | Change-Id: Ia5adad0b51a8db6e91ad60288eab67e506c19e47 Reviewed-by: Mehdi Fekari <mfekari@rim.com> Reviewed-by: Denis Dzyubenko <denis@ddenis.info> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update Qlocale data with CLDR 1.9.1Konstantin Ritt2012-11-103-3387/+3431
| | | | | | | | this is the same data we have in Qt 5 right now. Change-Id: Ic4cea4fdde2001432f33b0cb658508756cc9e8d3 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Denis Dzyubenko <denis@ddenis.info>
* Prevent an overflow warning in assertions.Christian Kandeler2012-10-143-7/+7
| | | | | | | | | | | | | | | | | | | Functions like QByteArray::at() assert the given index: Q_ASSERT(i >= 0 && i < size(); These functions typically get inlined. Now if the index is e.g. size() - 2, then gcc will emit an ugly warning in client code ("assuming signed overflow does not occur when assuming that (X - c) > X is always false"). This can be easily prevented by casting both sides of the second comparison in the assertion to their unsigned type. The explicit comparison to zero is then no longer necessary, since that condition is tested implicitly by the other comparison due to unsigned arithmetic. Change-Id: Ic7244e1fa5da00a47d1fe0ed56fb81c23d444dfe Reviewed-by: hjk <qthjk@ovi.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from qtbase/8e90e0805f2981014d3382d8841617b4c56dfc50)
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-29108-2522/+2522
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: I280c0a575987d1770e354b4948f1d4d767d711ea Reviewed-by: Simo Fält <simo.falt@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* QElapsedTimer: Fix typo in restart() documentationJonathan Liu2012-09-261-1/+1
| | | | | | | Change-Id: Iac5df9edbe16ec841f783bc5266091a6e34e9cab (cherry picked from commit 4efd73bc3ac318ec40adea2f21b3c9359ea1795a) Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Refactor coreservices -> ios & QT_NO_CORESERVICES -> Q_OS_IOSIan Dean2012-09-182-2/+2
| | | | | | | Similar work was done in Qt5 in Change Id3b02316 Change-Id: I392d2a5bfffb9a335f28d5dbc5ea27b800fc4487 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Fixes possible memory leak in QContiguousCacheFabian Bumberger2012-08-301-2/+4
| | | | | | | | | When inserting an item on a position that is already occupied, the destructor of the old item was never invoked. Qt5 SHA1: b4075c8ea31b235cdbb61fcd6290105b9914d627 Change-Id: I842fd81f284d9ca58760bce7e1adfea84da0a788 Reviewed-by: Peter Hartmann <phartmann@rim.com>
* QSharedPointer: make QT_SHAREDPOINTER_TRACK_POINTERS work with QObjectsGiuseppe D'Angelo2012-08-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | If setQObjectShared crashes because a QObject is tracked by two different QSharedPointers, we lose the debug feature offered by #defining QT_SHAREDPOINTER_TRACK_POINTERS, as the check done by this define happens after the setQObjectShared call. Therefore, move setQObjectShared after the internalSafetyCheckAdd2 call. This way, the error raised by QSharedPointer created changes from f.i. QSharedPointer: pointer 0xa10010 already has reference counting to the more "debuggable" (and consistent with non-QObjects) QSharedPointer: internal self-check failed: pointer 0x1dd90e0 was already tracked by another QSharedPointer object 0x1dd9330 "Backport" of change-id I71340d0f878828354537762d01c46d441efc918c from qtbase (although, as of commit 609b0a9c2e69180ceff5d89c42e0d9468491d7e3, this issue is not present there, as setQObjectShared does nothing). Change-Id: I4cea83d705795eae0e05da128a3f189aea36f5ce Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Mac: Don't crash if language preferences can't be retrieved.Eike Ziller2012-08-101-1/+1
| | | | | | | | | That can happen when e.g. running an application with sudo. Task-number: QTBUG-26547 Change-Id: I4b1d4b71716da4026dfa0f68bad905f0010d0968 (cherry-picked from 67d082223c90912a88f5282af90d8fc05f4a389b in Qt5) Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix valgrind errors due to "const char *getSystemLocale"David Faure2012-08-061-1/+1
| | | | | | | | | | qgetenv returns a QByteArray, so casting that to a char* leads to using deleted memory. This was introduced by 25c4ce6deef20c69d00fe1197a60e8b7587c81cb. Change-Id: I27ccad022e327e119fea3c3cdcf9beb541ab9097 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Nick Ratelle <nratelle@qnx.com>
* Update contact information in license headers.Sergio Ahumada2012-08-01108-216/+216
| | | | | | | | | | | | | - Replace Nokia contact email address with Qt Project website. - Remove "All rights reserved" line from license headers. As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: Ie7ba62011752fcb149b99b26317c54f2a0cfa931 Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
* Use improved QLibrary search heuristics for ICU in QLocaleSean Harmer2012-07-271-0/+2
| | | | | Change-Id: Ia39350adbc43ded4faa06885e00eead45261f87f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Disable MacOSX 10.6+ locale code for iOS builds.Ian Dean2012-07-271-1/+1
| | | | | Change-Id: Ic2e9437aac10cb23479e8915ff6abf89d6d20169 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Only forward-declare some std classes if QT_NO_STL is defined.Raphael Kubo da Costa2012-07-171-0/+2
| | | | | | | | | | | | | | | | | If that is not done, building with clang, libc++ and C++11 support does not work: libc++ defines the iterator tag classes in an inline namespace inside the std namespace, and forward-declaring those classes inside the std namespace itself in qiterator.h causes an ambiguity that clang solves by choosing the incomplete-declared class declared in the enclosing std namespace. This is probably the "clang build problem" reported in commit 19e2b4d6eb733d9fd4eb69c0622b699fd08a3203 to qtbase, which cannot be directly cherry-picked without breaking other classes due to QT_NO_STL still being present in Qt 4. Change-Id: I26e33915347d3f94ef2e10b68fca6b2099ec9491 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Fix access to uninitialized pointerTobias Hunger2012-07-031-1/+1
| | | | | | | | | | | | The C++ standard says in 9.4..2 that the object expression is evaluated, so any compliant compiler may access d. So this syntax is a bug in this place. This is a backport of commit 88cf9402e336fddeb673c92f3c14da47a9f8450b from qtbase. Change-Id: I02a9a1b73f7c18e8342aafeae412759f78086fa6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* UCD 5.0: Apply Unicode Corrigendum #6Konstantin Ritt2012-06-131-788/+789
| | | | | | | | | | | | | | http://unicode.org/versions/corrigendum6.html: > in Unicode 5.0, the list of characters with the Bidi_Mirrored property > was made consistent for brackets and quotation marks, in preparation for > new constraints on bidi mirroring. However, after publication of > Unicode 5.0.0 it was discovered that this change adversely affected > several quotation mark characters in deployed data. Task-number: QTBUG-25169 Change-Id: I2cd6a70a69f4b2c37a3f191e05233854a16f10d1 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix local variable is initialized but not referenced warningNicolas Arnaud-Cormos2012-05-231-6/+7
| | | | | | | | The pragma needs to enclose the whole function. This change is not necessary in Qt 5 since QMap was rewritten. Change-Id: I63bb94ec09b9cb3c499938cde9c7fb690039406e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRegExp: fix crashGiuseppe D'Angelo2012-05-231-0/+2
| | | | | | | | | | | | | | | Fixes a crash when invoking various QRegExp methods on an object *before* doing any match. For instance fixes: QRegExp re; re.matchedLength(); // crash Backport of commit 136c2bf18446f2bbe7052d638c29edbc0b8ef6bc from qtbase. Task-number: QTBUG-23352 Change-Id: I9c239ff790a139c7820ef1aeced89d31320ae6b0 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Janne Anttila <janne.anttila@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRegExp: fix autotest, fix usage of uninitialized valuesGiuseppe D'Angelo2012-05-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | A (probable) typo was causing the code dealing with anchors to use uninitialized values. This used to work by chance, but was indeed detected by Valgrind f.i. when running tst_qregexp -- the indexIn test on anc11 data reported: ==3015== Conditional jump or move depends on uninitialised value(s) ==3015== at 0x514B4EA: PeppeQt::QRegExpMatchState::testAnchor(int, int, int const*) (qregexp.cpp:1813) [...] ==3015== Uninitialised value was created by a stack allocation ==3015== at 0x514B3EB: PeppeQt::QRegExpMatchState::testAnchor(int, int, int const*) (qregexp.cpp:1803) Fixing the code also makes the aforementioned test to succeed, therefore the #if 0 sections can be droppped. Backport of commits 281771ee201e591d4f40a161b93c71914b1b38f2 and 1fe7e557d75962c9c79cc344037a02ed50369430 from qtbase. Change-Id: I4d6cffdae737def1a47e72b46e40979e0aee1719 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: hjk <qthjk@ovi.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* fix composition (C/KC) of some sequencesKonstantin Ritt2012-05-111-2/+3
| | | | | | | | | | | | | an unassigned code point should be treated like a starter code point; thus, if we have met an unassigned code point in the currently processed sequence, we should start process the next one (but we know there are no composed character for an unassigned starter -> simply skip it) This patch doesn't apply to qtbase, commit 46b78113b22428e6f8540193fcf0e00591dbd724 solved the same issue in a different way. Change-Id: I781a26024878d8b83a182b0fd4e681be2a6d9a27 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Use value of LANG if LC_TIME is empty.Thomas Sondergaard2012-04-041-0/+2
| | | | | | | Task-number: QTBUG-24912 Change-Id: I68d91c02f5d82b7fc4cae0d2dedafb862a3b323b Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com> Reviewed-by: John Layt <jlayt@kde.org>
* Support changing locales at runtime in QPA plugins.Nick Ratelle2012-03-121-2/+33
| | | | | Change-Id: Id65798b81db2fa9fb5b1d929e4a94103995c6707 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Fix a crash in QSystemLocalePrivate::uiLanguages().Friedemann Kleint2012-02-251-1/+1
| | | | | | | | | Use the correct calling convention. Discovered by the mimetype test in Qt 5. Change-Id: I79b97325dd69466885a64c238935107bf14e9a0d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* QElapsedTimer/Win: Fix 64-bit integer overflowJonathan Liu2012-02-211-1/+3
| | | | | | | | | | | | The ticksToNanoseconds function in qelapsedtimer_win.cpp multiplies ticks from performance counter with 1000000000 which can sometimes result in 64-bit integer overflow. This can cause the elapsed time to reset or jump around. Task-number: QTBUG-23150 Change-Id: I464503e03cbe64e13906e773beafbf88e7dc256a Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>