summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Doc: corrected error in doc static pluginsNico Vertriest2015-11-131-3/+3
| | | | | | | Task-number: QTBUG-43160 Change-Id: I94f92318cec095391050b2af90980010bd1066b9 Reviewed-by: Topi Reiniö <topi.reinio@digia.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* Document performance of QMutexOlivier Goffart2015-11-131-0/+7
| | | | | Change-Id: I4de2fd5ba717975b5de98ffe7ca6348afbed1b2f Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Docs: Add a note clarifying that Q_MOVABLE_TYPE is not about move semanticsOlivier Goffart2015-11-131-1/+2
| | | | | Change-Id: Ib1fb9ac00c0437ed2312c46e3e97d7ece05ba8e8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* JSON: Fix MSVC2013 warningsOrgad Shaneh2015-11-132-4/+4
| | | | | | | | | | | | json_p.h(283) : warning C4800: 'uint64_t' : forcing value to bool 'true' or 'false' (performance warning) json_p.h(546) : warning C4800: 'uint32_t' : forcing value to bool 'true' or 'false' (performance warning) qjsonvalue.cpp(176) : warning C4244: '=' : conversion from 'int64_t' to 'double', possible loss of data qjsonvalue.cpp(518) : warning C4244: 'return' : conversion from 'const double' to 'int', possible loss of data Change-Id: I2a24f90f7615aeb47f747ecbe3b580f23773ebda Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: hjk <hjk@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Do not overwrite detailed error message if process fails to launchKai Koehne2015-11-125-8/+9
| | | | | | | | | | | | | On Unix we get a detailed error message when a process fails to start, but later on we overwrite it with a generic "Process fails to start". Fix this by keeping the original error message (if one is available). This fixes a regression introduced in commit 5147f73ac3. Task-number: QTBUG-49286 Change-Id: Idd0f0fed9773d39f2947fc3e532b51e670952caf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Prefer "daylight-saving time" and "DST" over "daylight time".Edward Welbourne2015-11-126-87/+85
| | | | | | | | | | | The first two are the "proper" terms; the last is a colloquialism. Also amended "daylight savings" (which summons to mind a hybrid of "daylight robbery" and "bargain-basket savings"). Improved related wording in many of the places amended. Task-number: QTBUG-49308 Change-Id: I726f18a344b2fe37f765a14684d1447c8b7ab00c Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Eliminate duplicate "between"Edward Welbourne2015-11-121-2/+3
| | | | | Change-Id: I548e2df4cb94e41bb5247fc6977a3c3f67bf0bda Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Doc: Added more details to QIODevice::readAll()Nico Vertriest2015-11-091-1/+1
| | | | | | | Task-number: QTBUG-43666 Change-Id: Ibe56a72f9fa7a31a320aceda645fde9b08645271 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Fix false claim in comment.Edward Welbourne2015-11-061-1/+1
| | | | | | | | | | Given that % and / have a defined consistency relation, neither is any better defined for -ve operands than the other. The code is in fact avoiding using -ve operands, not preferring "well-defined" / over (allegedly less so) %, as it claimed. Change-Id: I666690872f078c0f21f9af7a227c2bbf291704e8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Mark qt_from_latin1() as nothrowMarc Mutz2015-11-052-2/+2
| | | | | | | | | | | | | | It's used from a different TU, too, so we can't rely on the compiler to inspect it to draw this conclusion itself. This function has technically not a wide contract, because the output buffer needs to be large enough to hold the result. However, this precondition cannot be checked from within the function, therefore no assertion can ever be added and the nothrow marker becomes acceptable (even desireable). Change-Id: I2dc6c4f3d9d8147c6483865c5c4bbc8e9af291b7 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QUtf8: remove an unused variableMarc Mutz2015-11-051-2/+1
| | | | | | | | 'need' was never anything but zero, so drop it. Change-Id: I4b52107afc7ed47c19ae1942cef0c92cbd0e1a36 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* Re-generate Unicode data tablesKonstantin Ritt2015-11-052-5115/+5891
| | | | | Change-Id: I53fb254709764e56e9889531655fe6046f15b251 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Update Unicode data & algorithms up to v8.0Konstantin Ritt2015-11-053-26/+55
| | | | | | | | | | | | | | | | | | | * Georgian lari currency symbol * A large collection of CJK unified ideographs * Emoji symbols and symbol modifiers * Letters to support the Ik language in Uganda, Kulango in the Côte d’Ivoire, and other languages of Africa * A set of lowercase Cherokee syllables, forming case pairs with the existing Cherokee characters * The Ahom script for support of the Tai Ahom language in India * Arabic letters to support Arwi—the Tamil language written in the Arabic script For more details, see http://www.unicode.org/versions/Unicode8.0.0/ [ChangeLog][QtCore] Unicode data updated to v.8.0 Change-Id: If255f95c9c45655b721369a116299da3cabbba0a Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* [docs] QVector: don't scare people away from reserve()Marc Mutz2015-11-041-9/+18
| | | | | | | | | | reserve() is a good thing, and key to getting top performance out of any data structure that provides them, yet the existing docs scared people away by claiming that "you will rarely ever need to call this function". Change-Id: I88e30d96960443c0ed759a79c6fa9ee6af0d1e07 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Doc: fixed broken linksNico Vertriest2015-11-044-6/+6
| | | | | | Task-number: QTBUG-43810 Change-Id: If6ac30a0407731b31e8aaad28d33e2bb49dee6f3 Reviewed-by: Martin Smith <martin.smith@digia.com>
* winrt: Don't wait for runOnXamlThread to finish for timers.Samuel Nevala2015-11-042-13/+15
| | | | | | | | | Fixes possible deadlock that occurs when synchronous WS event handling (introduced in ee767c8) is used across threads. Task-Id: QTBUG-49051 Change-Id: Iae973c2d4f4619b9eeb6e9393330b166ec608d27 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
* Workaround part 2: don't use the version tagging symbols on AndroidThiago Macieira2015-11-041-1/+1
| | | | | | | | | | | | | | Commit d020e0781cf8647d87f7088350e40adf4f0cf8fe added a workaround to the QtCore build due to a qmake bug in handling the extra target on a Windows host. The workaround removed the tagging symbols from QtCore. This commit removes the using of those symbols from everywhere else. Task-number: QTBUG-49208 Change-Id: Idba8c29717f34c70a58fffff14133399f9f0b7f2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Merge "Merge remote-tracking branch 'origin/5.5' into 5.6" into refs/staging/5.6Liang Qi2015-11-043-17/+59
|\
| * Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-11-043-17/+59
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qstorageinfo_unix.cpp src/plugins/platforms/windows/qwindowsmousehandler.cpp src/widgets/styles/qwindowsvistastyle.cpp Change-Id: Ie1725933815891cc8c86258d4c0e8ed0ab386edf
| | * QWindowsPipeReader: fix occasional "Unknown error 995"Joerg Bornemann2015-11-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After canceling the asynchronous read operation, the notified() slot receives ERROR_OPERATION_ABORTED. We must not handle this situation as an error. This amends commit 5ce567c5. Task-number: QTBUG-48336 Change-Id: Iff948ceb3ad1f805a9de8c188fbc39ed4c76ba82 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * Fix QStorageInfo on BSD4 systemsDmitry Shachnev2015-10-271-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - On NetBSD, the defines were not properly defined; - On all other BSD systems, we use statfs which does not have f_frsize member, revert to using f_bsize there. Task-number: QTBUG-48267 Change-Id: Ia1ed484ac61a615fcbb5b45affb516b5e86a64b0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * fix growth of event queue in QWinOverlappedIoNotifier::waitFor*Joerg Bornemann2015-10-261-15/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | Do not emit _q_notified when we're in a wait function. Otherwise, the queued signals could pile up in the event queue. Task-number: QTBUG-48653 Change-Id: I071863e2356e17c7004e3b7ca359967cb115e343 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | Make variable const as it should beEdward Welbourne2015-11-041-1/+1
| | | | | | | | | | | | | | | Change-Id: If5782473eceaa38de75b25d1da247dea9fe135da Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | | Use memset to clear struct tm before filling fields.Edward Welbourne2015-11-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | This ensures any non-standard fields (e.g. glibc's tm_gmtoff) are clear, as well as the other fields mktime overtly promises to ignore. Change-Id: I45d69eff7b5cb37ab910bf3d4d2d1481fd93aedb Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | | Update high-DPI scaling enablers.Morten Johan Sørvig2015-11-042-3/+16
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make it possible to enable and disable both at the environment variable level and at the source code level. This applies to scaling done by Qt using display density information provided by the operating system. Disabling is done with a 'veto' system: both the environment and source code my prevent the other for enabling scaling. This covers use cases of 'my system does not provide correct display metrics' and 'my application needs access to display pixels', respectively. On the environment, scaling is now enabled with QT_AUTO_SCREEN_SCALE_FACTOR=1 and disabled with QT_AUTO_SCREEN_SCALE_FACTOR=0. In source code the corresponding application attributes are AA_EnableHighDpiScaling and AA_DisapleHighDpiScaling. Not setting any of these indicates 'no preference'. The global scale factor set by QT_SCALE_FACTOR is not affected by any if the disablers. Task-number: QTBUG-46615 Change-Id: If18607d4b56ace1914a710e5aa60b2f0968e0010 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | Doc: Fix snippet tags for QString::[last]indexOf() overloadsTopi Reinio2015-11-022-6/+6
| | | | | | | | | | | | | | | | | | Duplicate identifiers were introduced for QString code snippets, resulting in the wrong snippets to be quoted. Change-Id: I75e9c99cbc73bf39262079f7f53342a6ac90c2a7 Task-number: QTBUG-49111 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* | qcoreapplication_win.cpp: Correct FIXME comment on qWinMain().Friedemann Kleint2015-11-021-3/+4
| | | | | | | | | | | | | | | | | | Mention that it is still used by Active Qt. Task-number: QTBUG-49148 Change-Id: Ic31b2f60b25886cd55c5fa516082d79311ab84cc Reviewed-by: Fredrik Orderud <forderud@gmail.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* | State machine: fix removeConflictingTransitions()Jarek Kobus2015-10-301-2/+2
| | | | | | | | | | | | | | | | | | Since QSet<>::intersect() modifies the original set, exitSetT1 has wrong content for next iterations. Use intersects() instead. Change-Id: I09e0961ec6dfb34ade88d48d1e009529aeab82b4 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Fix C++11 compiler detection for QNX.Rafael Roquetto2015-10-291-7/+9
| | | | | | | | | | | | | | | | | | | | 1. _HAS_DINKUM_CLIB is defined whenever a C header is included, even when Dinkum is disabled. 2. _HAS_* macros are always defined, as either 0 or 1. Change-Id: I727b854a6a733e2028e6facc327e264d0c4c9e90 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Workaround: don't create ELF version scripts for AndroidThiago Macieira2015-10-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Somehow qmake doesn't add the correct rules for the Android makefiles, so the build fails when cross-compiling from Windows. The reason for that is unknown (could be related to that "qt_android_deps" config, but that isn't used anywhere in qmake or the buildsystem). This isn't likely to be a problem, since there are no global installs of Qt on Android. Change-Id: I1d0f78915b5942aab07cffff140f95ce32324030 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QLocale: Actually get the language script for the system localeThiago Macieira2015-10-281-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Windows code was always returning AnyScript, which in turn made QLocale::textDirection() for the default and system locales always return LTR, even if the Windows UI was in RTL mode. [ChangeLog][QtCore][QLocale] Fixed a bug that caused QLocale::textDirection() to always return Qt::LeftToRight and QLocale::script() to return QLocale::AnyScript on for the Windows system locale. Task-number: QTBUG-49031 Change-Id: I7e6338336dd6468ead24ffff14112c8d348eedba Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | QLocale: Add Q_ENUM for QLocale::ScriptThiago Macieira2015-10-281-0/+1
| | | | | | | | | | Change-Id: I7e6338336dd6468ead24ffff141129d557330f00 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Doc: corrected minor language mistakeNico Vertriest2015-10-281-2/+2
| | | | | | | | | | | | Task-number: QTBUG-42977 Change-Id: Icdd70a41c9ef72224992d59342f4f97c65de78fc Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | QIODevice: fix interleaving read() and write() in text mode under WindowsAlex Trotsenko2015-10-271-3/+4
| | | | | | | | | | | | | | | | Skip the correct number of bytes in the read buffer when expanding '\n' into "\r\n" upon writing. Change-Id: I5b01fc47c330dee5c83001abf0acd7d63d790b96 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge "Merge remote-tracking branch 'origin/5.5' into 5.6" into refs/staging/5.6Liang Qi2015-10-261-0/+1
|\ \
| * | Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-10-231-0/+1
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qcfsocketnotifier.cpp src/tools/qdoc/qdocindexfiles.cpp Change-Id: Iae365b23afc611de8794f22cceae8b210d25aa8a
* | | Move pointer size detection entirely to qprocessordetection.hThiago Macieira2015-10-263-23/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes the legacy ptrsize check, which was deficient because it did not work for multiarch systems (when we supported fat OS X binaries) and did not work for bootstrap builds because the size might be different when cross-compiling. Instead, let's rely on the predefined preprocessor macros to detect correctly. As a nice side-effect, this fixes 64-bit Android builds cross-compiled from Windows. Task-number: QTBUG-48932 Change-Id: I1d0f78915b5942aab07cffff140f9a52b9342f23 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
* | | Android: use Q_UNIMPLEMENTED()Marc Mutz2015-10-262-11/+11
|/ / | | | | | | | | | | | | ... instead of explicit qWarnings() Change-Id: I986a11bf519eaefd400813776d173b0ab2c2bc62 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Compile the 64-bit version of some code on all 64-bit processorsThiago Macieira2015-10-231-1/+1
| | | | | | | | | | | | | | This is true for ILP32 on x86-64, IA-64 and AArch64. Change-Id: I1d0f78915b5942aab07cffff140f9d4c277bb5d4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Convert some QDateTime::currentDateTime() to currentDateTimeUtc() (I)Marc Mutz2015-10-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The latter is much faster as it doesn't have to deal with time zones. This change handles the trivial ones: Either the call to currentDateTime() is immediately followed by a call to toUTC() or toTime_t(). The latter is much faster on UTC QDateTimes, too. Credits to Milian Wolff, from whose QtWS15 talk this advice is taken. Change-Id: I872f5bbb26cbecedc1e5c0dbee4d5ac2c6eb67ee Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* | QTextStream: optimize streaming of QLatin1String and const char*Marc Mutz2015-10-232-4/+48
| | | | | | | | | | | | | | | | | | | | | | Instead of converting the QLatin1String to a QString at the first opportunity, keep it around until it is appended to one of the internal QStrings in write(). Avoids a memory allocation per QLatin1String / const char* streamed. Change-Id: Id973a9b743e5a6696defbc4ef4ed2db1ef54e9cc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QTextStream: Extract Method padding() from putString()Marc Mutz2015-10-222-29/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | This is in preparation of adding a putString(QLatin1String) overload. To keep the change simple, I kept the construction of the padChar chain per putString() call. It probably makes sense to have a QString::resize(int, QChar) to perform the padding operation in-place. Let's leave that for another changeset. Change-Id: I9ef66b8df38117e1669fd2bece6ee180a2ce3369 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Several cases of s/decelerating from/decelerating to/.Edward Welbourne2015-10-211-4/+4
| | | | | | | | | | | | | | | | | | The relevant easing curves all start out fast and end stationery; so it's at the *end* that they attain zero "velocity", so they're decelerating *to* zero, not from it. Change-Id: I69874c46c8d42f185ff815295c4470a195cc43ae Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Doc: Update examplesinstallpath to include the repository nameTopi Reinio2015-10-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The examplesinstallpath variable in .qdocconf files defines the path under QT_INSTALL_EXAMPLES where examples are found. To match the way examples are packaged in Qt 5.6, prefix each install path with the repository name. Task-number: QTBUG-48736 Change-Id: I6a35c94fdacaad21cd044411aba02027b9019300 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* | Add an automatic use of the ELF-versioned QtCore symbolThiago Macieira2015-10-203-1/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See the comment in the header for an explanation of what it does. This trick is enabled for every single .o that is compiled, unless QT_NO_VERSION_TAGGING is defined. The assembly expands to a COMDAT section, which is mergeable by the linker, so only one copy of the output is present in the ELF module. This is enabled only for Linux and x86 / x86-64 / x32 due to the requirement of writing assembly and relocations, so it needs to be tested on each platform, which I have not done. It might work on Solaris/x86, but again it requires testing. Support for other architectures requires different assembly output and relocations and can be added as needed, but they are not as important since this trick is has most value on desktop systems. Change-Id: I049a653beeb5454c9539ffff13e3ff5782a8cb86 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Rex Dieter <rdieter@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Update qversiontagging.cpp not to use too much assembler magicThiago Macieira2015-10-202-57/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The only reason I had used them in the first place was because C preprocessor macros cannot call themselves recursively. But the magic was too magic and caused issues with some builds, so let's choose the safer option. Anyway, this solution now works for all ELF architectures, independent of the processor, whereas previously it was restricted to x86 and Linux/ FreeBSD. However, this does not apply to the assembly in qversiontagging.h. Change-Id: I42e7ef1a481840699a8dffff1404f032fc5cacb8 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | winrt: use correct winapi family defines in mkspecs and system detectionAndrew Knight2015-10-201-1/+1
| | | | | | | | | | | | | | | | WINAPI_FAMILY_APP is deprecated, so use WINAPI_FAMILY_PC_APP instead. Also, open up the phone partition for use on MSVC2015. Change-Id: I7476d71c31395b2914f5a1439e8088341976bf2f Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
* | QLatin1String: add some nothrowMarc Mutz2015-10-201-24/+24
| | | | | | | | | | Change-Id: I488fe7c4122febf46caa6487d92f61391edd41a5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | [docs] QLatin1String: add some guidance as to when to use itMarc Mutz2015-10-201-0/+7
| | | | | | | | | | | | | | Change-Id: I391be8bda3a5cb4873b89b437d2b76b1cd88261f Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* | Android: Warnings--BogDan Vatra2015-10-201-1/+1
| | | | | | | | | | Change-Id: I79bef1e5e73fedf2bae61d6cfc9634a14958ba0e Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>