summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Add qtwidgetsglobal.h and qtwidgetsglobal_p.hLars Knoll2016-07-141-6/+0
| | | | | | | | | | | | | The new modular configuration system requires one global header per module, that is included by all other files in this module. That header will later on #include the configuration file for Qt Widgets. For now it defines the Q_WIDGETS_EXPORT macro for this library. Change-Id: I6698989b952b9bac94d086d9f219e03c000f7d53 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Clean up qwindowdefs_win.hLars Knoll2016-07-142-4/+5
| | | | | | | | | | | | | The file lives in Qt Gui, but declares a few methods from Qt Core and Widgets. All of those methods are actually mostly unused, not documented and pretty trivial. This patch removes the last few places the methods got used and removes the declarations. The implementations should get removed in a future release. Change-Id: I2b609c29f403d2ed4824ff4346008be08b3fd067 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* qdoc: Documentation for qFuzzyIsNull() is addedMartin Smith2016-07-142-6/+18
| | | | | | | | | The two versions of this function are now documented on the global variables page. Change-Id: Iee95e251d616f6c8b1b42458d23cbf64a70a5315 Task-number: QTBUG-50654 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add qHash(QHash) and qHash(QMultiHash)Marc Mutz2016-07-142-0/+41
| | | | | | | | | | | | | | | | | | | | | | | | The hash function is carefully designed to give the same result as the straight-forward implementation of qHash(unordered_map), which we'll probably add at some point, namely: std::accumulate over a container of std::pair. This is one reason to use std:: and not QPair in the implemen- tation of qHash(QHash). The other is that qHash(QPair) uses a bad hash combiner, which may xor out the 'seed' from the result. We can't fix that until Qt 6, but the qHash(std::pair) overload uses the well-known boost::hash_combine algorithm (implemented in Qt as QtPrivate::QHashCombine), so we can use that. I also trust std::pair to work without problems with reference template arguments, while QPair only very recently gained a very basic auto-test for reference parameters. [ChangeLog][QtCore] Added qHash() overloads for QHash, QMultiHash. Change-Id: I90879d8a99cf1aadb6e84ecc0c3704f52f3691da Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add missing logical bitwise operators to the little-endian storage classesSimon Hausmann2016-07-131-0/+16
| | | | | | | These make the (future) usage in declarative even more convenient. Change-Id: I12c0fec1ea843d8acd2ee3fdf2a2189939bebd95 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Handle QVariantHash in QJsonDocument::fromVariantAllan Sandfeld Jensen2016-07-131-1/+3
| | | | | | | | | | | It absence is just an oversight. The patch also adds test for the valid inputs of the method. [ChangeLog][QtCore][QJsonDocument] fromVariant can now take a QVariantHash argument. Task-number: QTBUG-39751 Change-Id: I7e051413f930023db3cbb81452e77c56a7ceffe8 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Call disconnectNotify() when disconnecting a QMetaObject::ConnectionUlf Hermann2016-07-121-2/+3
| | | | | | | | In all other forms of disconnecting this is done. We also know the signal index, so there is no reason not to do this. Change-Id: Ic8b042cd8f45dbff74b42ee30c384a84bef78b20 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Make QDateTime's default constructor not allocate memory on 32-bitThiago Macieira2016-07-092-27/+46
| | | | | | | | | | | | | | | | | Commit fb498a651990df5e04c75a9076da28e875c43f73 introduced the short datetime optimization, but it accidentally removed the optimization from Qt 5.7 that made QDateTime's default constructor not allocate memory. Instead of bringing back the Q_GLOBAL_STATIC that was used, let's use the short date time optimization on 32-bit too. The CanBeSmall constant remains false on 32-bit systems, but judicious non-use of that constant in a few functions allows 32-bit systems to use the optimization. We still say that any date/time value is "unsmall", as there's no sense in calculating whether the date is between 1970-01-01 and July 14 of the same year. Change-Id: I413d458307aa46469b80fffd145a9db0325c08cc Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* QTimer: add support for <chrono> functionsThiago Macieira2016-07-092-18/+147
| | | | | | | | | [ChangeLog][QtCore][QTimer] Added support for std::chrono duration objects for QTimer methods, like QTimer::singleShot and QTimer::setInterval. Change-Id: I87e17314d8b24ae983b1fffd14536e24d5b12424 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* QStringRef: add chop()Anton Kudryavtsev2016-07-072-1/+19
| | | | | | | chop() was missing in the API. Change-Id: I15af86c8f218cf159b8ce19bbeb2ffa6201f98cf Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* winrt: Fix launch as background taskMaurice Kalinowski2016-07-061-27/+86
| | | | | | | | | | | | In case a background task wants to use Qt, winmain is not invoked. Neither can we create the same objects like winmain do (as in creating a application view). Instead runOnXamlThread uses the thread pool enabling the event loop to run successfully. Task-number: QTBUG-54396 Change-Id: Ia3ba23ed0fd6cd7d2ed8d43675e88073b9aec8b5 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Windows/QProcess::startDetached(): Don't always create consoleKevin Funk2016-07-061-1/+3
| | | | | | | | | | | | | | | | | | | | | Make QProcess::startDetached() behave exactly like QProcess::start() when it comes to the behavior of whether to create a new console window or not. Before this patch, QProcess::startDetached() created a new console window (CREATE_NEW_CONSOLE flag of CreateProcess()) unconditionally. Instead, use the same rules for deducing whether to show an console window or not as QProcess::start(). [ChangeLog][QtCore][Platform Specific Changes] QProcess::startDetached() changed behavior on Windows: it no longer creates a new console window unconditionally, instead it passes the same creation flags to CreateProcess as QProcess::start(). Task-number: QTBUG-53833 Change-Id: I0e3d4b161fb5cb94cfbbd21fb4edb8417ab543fd Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix/adapt the uses of {to,set,from}Time_t in the qtbase source codeThiago Macieira2016-07-062-4/+4
| | | | | | | | | Move those to the equivalent {to,set,from}SecsSinceEpoch(), except for the cases that did QDateTime::currentDateTime{,Utc}().toTime_t. Those are best implemented with QDateTime::currentSecsSinceEpoch(). Change-Id: Ib57b52598e2f452985e9fffd145a366c92cfda20 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Add qtnetworkglobal.h and qtnetworkglobal_p.hLars Knoll2016-07-031-6/+0
| | | | | | | | | | | | | The new modular configuration system requires one global header per module, that is included by all other files in this module. That header will later on #include the configuration file for Qt Network. For now it defines the Q_NETWORK_EXPORT macro for this library. Change-Id: I9c45d425baf881c431ed71fd457c7feb2c123855 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Add qtguiglobal.h and qtguiglobal_p.hLars Knoll2016-07-031-6/+0
| | | | | | | | | | | | | | | | | | | | The new modular configuration system requires one global header per module, that is included by all other files in this module. A similar scheme and naming convention is already being used for many other modules (e.g. printsupport, qml, quick). That header will later on #include the configuration file for Qt Gui. For now it defines the Q_GUI_EXPORT macro for this library. In addition, add a private global header, qtguiglobal_p.h, that can later on include the private config header for Qt Gui for things we don't want to export to the world. Change-Id: Id9ce2a4f3d2962c3592c35e3d080574789195f24 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Move QElapsedTimer to src/corelib/kernelThiago Macieira2016-07-028-9/+13
| | | | | | | | | | | | It's really a kernel functionality, as it implements really low-level functionality and it's used by the event dispatcher. It was in tools/ only because QTime is. QDeadlineTimer is also coming to kernel/. Change-Id: Ifea6e497f11a461db432ffff14491c6d9b839eb0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* CoreLib: use QStringRef to optimize memory allocationAnton Kudryavtsev2016-07-0215-37/+46
| | | | | | | | | | | Replace substring functions that return QString with corresponding functions that return QStringRef where it's possible. Create QString from QStringRef only where necessary. Change-Id: Id9ea11b16947220cd27787c0b529de62d10b6c26 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* ItemModel: Extract Method isVariantLessThan()Anton Kudryavtsev2016-07-023-34/+41
| | | | | | | | | | | | | As noted in comments, QSortFilterProxyModel and QStandardItemModel duplicate code to compare QVariant; extract this into a separate method they can share. Since there is only one common suitable header for both files, the method was placed in qabstractitemmodel.cpp Change-Id: I82bb4a2d6084059b8a70a8d556c16f1a29f4f686 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-07-011-0/+9
|\ | | | | | | | | | | | | | | Conflicts: configure configure.json Change-Id: Iba032d9a29c273da2585632bc6e22bbafb961808
| * Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-291-0/+9
| |\ | | | | | | | | | Change-Id: If6ba05867e7c98159e1b94ff71923e8b36bdbccb
| | * Document limitations and good practice for logging category namesKai Koehne2016-06-231-0/+9
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-54238 Change-Id: I2b6f54fb26d24e6da19c0e09782483eeb10206e1 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* | | QString: add some missing overloaded operator+Anton Kudryavtsev2016-06-291-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | to keep compatibility with and without using QT_USE_QSTRINGBUILDER. Change-Id: If8218fe0693cdb7ad1250beb272e0e7c356bbf4a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Fix some qdoc-warnings for Qt 5.8.Friedemann Kleint2016-06-285-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qtbase/src/corelib/tools/qstring.cpp:8341: warning: Unknown command '\length' qtbase/src/corelib/tools/qstring.cpp:8354: warning: Unknown command '\length' qtbase/src/corelib/tools/qstring.cpp:8366: warning: Unknown command '\length' qtbase/src/corelib/doc/src/animation.qdoc:38: warning: Can't link to 'QAbstractAnimation::updateCurrentValue()' qtbase/src/corelib/io/qdatastream.cpp:529: warning: Undocumented enum item 'Qt_5_8' in QDataStream::Version qtbase/src/corelib/tools/qdatetime.cpp:4377: warning: No documentation for 'QDateTime::currentSecsSinceEpoch()' qtbase/src/corelib/tools/qcommandlineoption.cpp:435: warning: Undocumented parameter 'flags' in QCommandLineOption::setFlags() qtbase/src/network/ssl/qsslconfiguration.cpp:857: warning: Undocumented parameter 'dhparams' in QSslConfiguration::setDiffieHellmanParameters() qtbase/src/network/ssl/qsslconfiguration.cpp:830: warning: Undocumented parameter 'hint' in QSslConfiguration::setPreSharedKeyIdentityHint() qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:225: warning: No such enum item 'ErrorUnsafeParameters' in QSslDiffieHellmanParameters::Error qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:225: warning: No such enum item 'ErrorInvalidInputData' in QSslDiffieHellmanParameters::Error qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:225: warning: Undocumented enum item 'UnsafeParametersError' in QSslDiffieHellmanParameters::Error qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:225: warning: Undocumented enum item 'NoError' in QSslDiffieHellmanParameters::Error qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:225: warning: Undocumented enum item 'InvalidInputDataError' in QSslDiffieHellmanParameters::Error qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:105: warning: Undocumented parameter 'encoding' in QSslDiffieHellmanParameters::QSslDiffieHellmanParameters() qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:129: warning: Undocumented parameter 'encoding' in QSslDiffieHellmanParameters::QSslDiffieHellmanParameters() qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:208: warning: Can't link to 'clear()' qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:277: warning: Undocumented parameter 'dhparam' in operator<<() qtbase/src/network/ssl/qssldiffiehellmanparameters.cpp:277: warning: No such parameter 'dhparm' in operator<<() qtbase/src/widgets/kernel/qapplication.cpp:999: warning: Cannot find 'QApplication::autoMaximizeThreshold' specified with '\property' in any header file Change-Id: I4ac00f0fc0dbc4d421cf7c0273635d9681962645 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* | | Make sure all private headers in Qt Core include qglobal_p.hThiago Macieira2016-06-2583-17/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rule was: - if the header included qglobal.h, turn that into qglobal_p.h - otherwise, insert the #include after the "We mean it" warning qglobal_p.h currently only includes qglobal.h. Change-Id: Ib056b47dde3341ef9a52ffff13ef677e471674b7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-234-11/+4
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/common/mac.conf mkspecs/features/configure_base.prf mkspecs/features/configure.prf mkspecs/macx-clang-32/qmake.conf mkspecs/macx-clang/qmake.conf mkspecs/macx-ios-clang/qmake.conf src/network/ssl/qsslsocket_openssl_symbols_p.h Change-Id: I768b592e8e589662b1fdb9b8cbd633fef26845b6
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-233-5/+4
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | Conflicts: src/angle/src/libGLESv2/libGLESv2.pro src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp Change-Id: If8da4cfe8f57fea9f78e7239f378a6302c01674e
| | * Win: Get rid of unused variables un QDateTime::currentMSecsSinceEpochThiago Macieira2016-06-221-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | The compiler didn't complain that they were unused or -Werror / -WX was not active. Change-Id: Ib57b52598e2f452985e9fffd145a7b63a32189fd Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
| | * Add OpenBSD to list of targets that can't use --no-undefined in qtcoreRalf Nolden2016-06-221-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A prior commit has already added the resetting of QMAKE_LFLAGS_NOUNDEF in corelib.pro for FreeBSD due to environ(7) not being part of libc. OpenBSD has the same issue, so add it to the list of BSD systems affected for resetting the flags for qtcore. Change-Id: I50a62271ffa05a9976e802de420d47a1425359c4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * make plugin meta data load failure error message less crypticOswald Buddenhagen2016-06-221-1/+1
| | | | | | | | | | | | | | | Change-Id: I280673e7fd582c5877e8e17ed00318cb10cd537c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Remove duplicated QT_HAS_BUILTIN defineBogDan Vatra2016-06-211-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | QT_HAS_BUILTIN is already defined in qcompilerdetection.h which is included in qglobal.h which is included in this header file. Task-number: QTBUG-54068 Change-Id: I46c2e13d85fc21d3e6c426d0f35a584b21ae792b Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | | Update for the newest Darwin-family operating systems.Jake Petroules2016-06-233-7/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | This also corrects for some code that was not included in the forward merge from 5.6 (ea438b2508f329698e11c6dae6994d441c6e67df) due to code restructuring. Change-Id: I90a20fbcb60cfd6deb1cca3716a62754af27901f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | QDateTime: introduce {to,from,set,current}SecsSinceEpochThiago Macieira2016-06-224-23/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These new functions use a 64-bit integer in the API, instead of the broken 32-bit unsigned integer that the previous xxxTime_t functions used. That was a design flaw when the API was introduced back in Qt 4.2, so I'm deprecating the API and slating it for removal in 6.0. The changes to qfilesystemmetadata_p.h and quuid.cpp are necessary to build the bootstrap library. The rest of the adaptation to the new API will come in the next commit. [ChangeLog][QtCore][QDateTime] Introduced toSecsSinceEpoch, fromSecsSinceEpoch and setSecsSinceEpoch functions, which use 64-bit integers to represent the number of seconds. [ChangeLog][QtCore][QDateTime] The toTime_t, fromTime_t and setTime_t functions are deprecated and will be removed in Qt 6.0. For new code, use the equivalent functions with "SecsSinceEpoch" in the name, or the equivalent ones with millisecond accurancy that have existed since Qt 4.7. Change-Id: Ib57b52598e2f452985e9fffd145a355d0e7ff48d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-2114-58/+152
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.cpp src/corelib/global/qsysinfo.h src/corelib/kernel/qcoreapplication_win.cpp src/gui/text/qdistancefield.cpp src/gui/text/qdistancefield_p.h src/plugins/platforms/windows/qwindowsglcontext.cpp src/plugins/platforms/windows/qwindowsglcontext.h Change-Id: Ib3500acc2b28553bde06758cd9a2e19eb7fe2978
| * | Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7Liang Qi2016-06-2013-71/+163
| |\ \
| | * \ Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-2013-71/+163
| | |\ \ | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And blacklisted a few tests in tst_QUdpSocket. Conflicts: src/android/jar/src/org/qtproject/qt5/android/QtNative.java src/corelib/global/qglobal.cpp src/corelib/global/qsystemdetection.h src/corelib/io/qfileselector.cpp src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp tests/auto/network/socket/qudpsocket/BLACKLIST Task-number: QTBUG-54205 Change-Id: I11dd1c90186eb1b847d45be87a26041f61d89ef6
| | | * Remove overload tag from QByteArray QIODevice::readAll()Simon Hausmann2016-06-171-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does not seem to be a function that is overloaded. Change-Id: Icf8942dfb1e78a2ddb38cbd1c49657f745a61989 Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Correct a type mismatch in the QNX PPS codeJames McDonnell2016-06-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's a problem when building for 64-bit where the two types no longer match. Change-Id: I8c31915caf81a60d635c79816a3a2d5d36742ff9 Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Fixed developer build for MinGWOliver Wolff2016-06-152-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 0 must not be used as a null pointer constant Change-Id: I082d0e99c105fb02980b9cf390e7f6e4c9ad0869 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Update for the newest Darwin-family operating systems.Jake Petroules2016-06-154-17/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Adapt to the OS X => macOS rename in Q_OS_ macros/docs, qmake scopes, file selectors, etc. - Add new QSysInfo values and MAC_OS_X / __MAC_ / __IPHONE_ values for macOS 10.12 and iOS 9.1 through 10.0. - Update prettyProductName with new macOS "Sierra" codename. Change-Id: Id976530beeafa01b648ebaa16f4a8f0613fcaf75 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Fix cast warnings when pthread_t is smaller than a pointerJames McDonnell2016-06-131-16/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Push conversions from pthread_t to Qt::HANDLE and back into functions. The casts that were being used didn't work for the unusual 64-bit pointer/32-bit int combination that QNX is using for 7.0. HANDLE ends up as a 64-bit pointer and pthread_t ends up as a 32-bit integer. g++ considers the precision loss when converting from the 64-bit pointer to the 32-bit integer an error. Better to have the casts hidden in functions so it's easier to adjust them for unusual combinations such as this. Change-Id: Ia156b26224a0f7edc1c31e3d1ee8b21191381698 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * winrt: Fix potential crash in QCoreApplicationMaurice Kalinowski2016-06-131-26/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GetModuleFileName exists for Windows 10 and upwards, hence use the generic version from the win32 mkspec. This allows to create a QCoreApplication object with nullptr argv, as the application filename is identified via the binary itself and not via arguments. A couple of auto-tests use this method to create multiple application objects during runtime. Unfortunately we cannot apply this for msvc2013, even though MSDN states the GetModuleFileName exists, it fails to compile for Windows Phone 8.1. Change-Id: I2b8b988107487ef3785462f8ca40b0a6e0623e32 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | | * winrt: Close IAsyncInfo manually in case of errorMaurice Kalinowski2016-06-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case QEventDispatcherWinRT::runOnXamlThread returns an error the runtime sets the status of IAsyncInfo to Error. At the point when the IAsyncInfo destructor is invoked, an unhandled exception is thrown indicating the error has not been handled, causing any application to just crash deep inside the Windows platform libraries. Hence, in case runOnXamlThread returns non-S_OK we have to manually invoke Close() of the IAsyncInfo to tell the system we have taken care of everything. Change-Id: I3ac1e2ec2726f42e44f4f9a92191e454711120dd Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | | * Move __cpp_constexpr check inside Q_COMPILER_CONSTEXPR checkJames McDonnell2016-06-131-10/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Q_COMPILER_CONSTEXPR can be undefined (or not defined at all) to indicate that constexpr should not be used regardless of the compiler's ability to support it. This is done for QNX because some C library floating point functions used in the Dinkumware C++ library aren't constexpr functions; i.e., the library doesn't have proper constexpr support even though the compiler does. (cherry picked from commit d87242968fc56ba09243f642ce70a85084619de0) Change-Id: If0bdeb2180710dd9ccd97d79fa91cf9ff42f7990 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Fix warning when compiling x86 with SSE2 but no AVX2Thiago Macieira2016-06-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qstring.cpp:595:13: error: unused variable ‘nullmask’ [-Werror=unused-variable] Change-Id: I1cc7601489634e96833cfffd1456474a529a79ed Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
| * | | Add "-softfloat" to archdetect.cpp and clarify what to use whenThiago Macieira2016-06-191-0/+5
| |/ / | | | | | | | | | | | | | | | Change-Id: I1cc7601489634e96833cfffd14563e033c85ff6d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Fix warning about non-void function not returning anythingThiago Macieira2016-06-171-3/+1
| | | | | | | | | | | | | | | | | | | | | Found by ICC 17 Beta on Windows. Change-Id: Ib57b52598e2f452985e9fffd1458b6990b70837a Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* | | Fix MSVC warning about casting to pointer of different sizeThiago Macieira2016-06-201-1/+1
| | | | | | | | | | | | | | | | | | | | | qdatetime.cpp(2834): warning C4312: 'reinterpret_cast': conversion from 'int' to 'QDateTimePrivate *' of greater size Change-Id: Ib57b52598e2f452985e9fffd1458fe3ba3fcfb48 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Fix documentation of some QSysInfo functions.Jake Petroules2016-06-171-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | Qt 5.8 no longer supports Windows CE, or versions of Windows where the marketing version is not an orderable version number. Change-Id: I8fab7d9b0d466f891e872b6c3fdf9d98ffe6ebc1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Forward declarations for platform specific types should also be done with Q_QDOCOlivier Goffart2016-06-173-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The clang based qdoc need to be able to parse properly anything that is in #ifdef Q_QDOC The #if for the forward declararion now match the one in which it is used. Change-Id: Ia6cf84dd07a979b4e7aa8da764d9fb2fce74baa1 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-1713-83/+72
|\ \ \ | |/ / | | | | | | | | | | | | | | | Conflicts: tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp Change-Id: If899cda251b4dc8b8a7c6764520e88ab719737cd