summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Doc: corrected doc QString::operator[]Nico Vertriest2015-03-091-2/+2
| | | | | | | Task-number: QTBUG-43337 Change-Id: I379dfe3f6909de5a63a67261834ea0edff875f9d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* QStringAlgorithms::simplified_helper: add missing check for detachedThiago Macieira2015-03-071-1/+1
| | | | | | | | Otherwise, we modify shared strings that happened to be rvalues. Task-number: QTBUG-44706 Change-Id: Ia0aac2f09e9245339951ffff13c85bfc912f03d1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Fix race condition in QDateTime::timeZone() and other methodsThiago Macieira2015-03-073-35/+36
| | | | | | | | | | | | | | | | | | | | When timezone support for QDateTime was added, we decided it was a good idea to delay creating the QTimeZone object and checking that the time is valid in that timezone (including for local time) until the user requested that information. Unfortunately, QExplicitlySharedDataPointer returns a non-const T* in operator->(), which meant we were accidentally modifying the d pointer's contents in const methods, which in turn means those const methods were not thread-safe when operating on the same object. This commit changes the d pointer to QSharedDataPointer, which is safer in this regard and pointed out where the issues with constness were located. Since we can't lazily calculate QTimeZone anymore, we need to do it whenever the date, time or offset changes. Task-number: QTBUG-43703 Change-Id: Ic5d393bfd36e48a193fcffff13b9686ef4ef1454 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Silence bogus MSVC warning about variable not usedThiago Macieira2015-03-071-0/+1
| | | | | | | | | | | | The compiler is wrong: the variable was used in the previous line. However, the line had no effect for a type T that has a trivial destructor, so the optimizer must have discarded the line and the reference to the variable before the checker for used variables. qsharedpointer_impl.h(247) : warning C4189: 'that' : local variable is initialized but not referenced Change-Id: Ia0aac2f09e9245339951ffff13c8bde02bb46816 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* iOS: Define QT_NO_PROCESS, as the platform doesn't allow fork/execTor Arne Vestbø2015-03-061-0/+4
| | | | | | Change-Id: I0928c4aaa0c308ee86b9611beeba3937b61e226c Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Make QPersistentModelIndex an internal meta-typeGabriel de Dietrich2015-03-066-6/+59
| | | | | | | | | | | It was already a user meta-type, so it only gets promoted to internal. [ChangeLog][QtCore] QPersistentModel index becomes an built-in meta-type, including QVariant support. Change-Id: I63d733d1eb66aa61691e7afce27fe7372a83ac00 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix -Wunreachable-code warning from clang in preprocessed Q_ASSERTThiago Macieira2015-03-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Q_ASSERT expands to: do {} while (false && (<your condition>)) Which is fine for Clang as long as it's a macro. However, when you compile as a preprocessed source, the macro is gone and Clang prints the warning: warning: code will never be executed [-Wunreachable-code] do {} while (false && (f())); ^ note: silence by adding parentheses to mark code as explicitly dead So add the parentheses that it's asking about. The changelog refers to the full Q_ASSERT change from ebef2ad1360c80ad62de5f4a1c4e7e4051725c1c. [ChangeLog][Important Behavior Changes] Q_ASSERT will now expand the condition even in release mode when asserts are disabled, albeit in an unreachable code path. This solves compiler warnings about variables and functions that were unused in release mode because they were only used in assertions. Unfortunately, codebases that hid those functions and variables via #ifndef will need to remove the conditionals to compile with Qt 5.5. Change-Id: Ia0aac2f09e9245339951ffff13c8aa70229254d0 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Make QCoreApplication::applicationName available after app destruction.David Faure2015-03-051-8/+14
| | | | | | | | | | | | | | | | Calling applicationName() in the destructor of a global static (e.g. via QLockFile) was working when calling setApplicationName explicitly but otherwise it would suddenly return an empty string. This led to inconsistencies, the application name switching from non-empty to empty at saving-on-destruction time. There was already a global static, used when setting the app name explicitly before construction. Use it now to store the app name in all cases (explicitly set, or fallback). Change-Id: I71d3a0c40158f8bfd022c385b198346a2594b1cb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QLockFile: Avoid zero-sized lock file on write errorhjk2015-03-051-4/+8
| | | | | | | | | | Failure to write into a successfully opened lock file left the lock file with size 0 in the filesystem. Task-number: QTBUG-44771 Change-Id: I561bf629b9f160174d658bf105be828f71d78ff9 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Add missing fetchAndXxx methods to atomic classes based on std::atomicThiago Macieira2015-03-052-0/+104
| | | | | | | | And add tests for the GCC intrinsics and for std::atomic. Task-number: QTBUG-43794 Change-Id: Ic5d393bfd36e48a193fcffff13b9b2dbaee80469 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Make some QAbstractItemModel API invokableStephen Kelly2015-03-042-13/+14
| | | | | | | | | | | | | | | As QAIM and related classes are becoming more useful in the QML environment, it makes sense to make these invokable. Make the access API and the setData method scriptable. Avoid making the structure changing APIs scriptable now to be conservative. Export the ItemDataRole enum through the staticQtMetaObject to make built-in roles available. Change-Id: I47b1682e6fa8ba32c7314c73fc10a7bbaa6d1f98 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Stephen Kelly <steveire@gmail.com>
* Make the QItemSelectionModel::selection a property.Stephen Kelly2015-03-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | QML code like this should be possible: Text { text: selModel.selection.contains(modelIndex) ? "blue" : "yellow" } If the selection is just a Q_INVOKABLE method, then all consumers need to set up Connections { target: selModel selectionChanged: foo() } That is obviously not the API we want (made more clear by the fact that the signal is already perfectly named) because it is not declarative but it can be. So, make it declarative by making selection a property. Change-Id: Id1a05ae9b91e45e6d462bea4272b8740571e9fc3 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* Document Q_ENUM and Q_FLAGOlivier Goffart2015-03-034-22/+74
| | | | | | | | | | | | [ChangeLog][QtCore] Q_ENUMS and Q_FLAGS have been deprecated, and replaced by Q_ENUM and Q_FLAG macros. These two new macros automatically register the enum with the Qt metatype system, allowing automatic conversion to or from string in QVariant, or to show the strings by QDebug operators. They also enable the new QMetaEnum::fromType function. Change-Id: I80cccd7ad3fc46b11aee2fe50681a8126debf972 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* QEvent types: use Q_ENUM qDebug support instead of custom formattersShawn Rutledge2015-03-031-0/+1
| | | | | Change-Id: I10886de57b3ba24dddfcd4b78e1a32c470ac1889 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.4' into 5.5Oswald Buddenhagen2015-03-023-3/+5
|\ | | | | | | Change-Id: I95b3a87c5068c6b8068b30a35655b4c2419e7f9e
| * Delete the file that we will move to not the new file before movingAndy Shaw2015-02-261-1/+1
| | | | | | | | | | | | | | | | | | In the case of Windows Embedded Compact we need to delete the destination file before doing the move if DeleteAndRenameFile has failed since MoveFile will fail if the destination file exists. Change-Id: I29d04c147bf8b6b5de850fd7da7bb3dc6a827f1d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Specific the correct mibEnum value for the 'macintosh' codecAndy Shaw2015-02-261-1/+1
| | | | | | | | | | Change-Id: Ib57dd3c98a2ae3994898d7ea40baa0fed482c99a Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * fix default of SettingsPath when qt.conf is presentOswald Buddenhagen2015-02-251-1/+3
| | | | | | | | | | | | | | | | | | it's documented to fall back to Prefix if qt.conf is present but Settings is not specified. Task-number: QTBUG-44644 Change-Id: I8ef6659cbdad51b2fb3c1075ea6f0af4997117ed Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Android: Fix compilation for x86Eskil Abrahamsen Blomfeldt2015-02-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Bionic on x86 does not have an implementation of ffs(), for some reason. The declaration is available in strings.h, but causes a linker error. The toolchain has a builtin version though, which can be used instead. Change-Id: Iaf4c27542c1aabe88713842303251db44ae6ba86 Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com> Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Output registered enums in qDebug operator for QFlags.Friedemann Kleint2015-02-262-2/+28
| | | | | | | | | | Change-Id: Ia424df234fbd333782c10f0a4422875bb1bfc1f5 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | OSX: fix leaks due to missing NSAutoreleasePoolErik Verbruggen2015-02-261-0/+13
| | | | | | | | | | | | | | env OBJC_DEBUG_MISSING_POOLS=YES qtcreator Change-Id: Ibbe5f42af5b94a439be3f0dd0f2b6e34bb1afd3f Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | Reverse iteration in QMetaEnum::valueToKeys().Friedemann Kleint2015-02-261-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, values that are composed of others are not handled correctly. For example, Qt::Dialog|Qt::FramelessWindowHint (Qt::Dialog=0x2|Qt::Window) is currently output as "Window|FramelessWindowHint" since Qt::Window matches first and its bits are removed from the flag value so that Qt::Dialog in the next iteration no longer matches. Change-Id: I67db5c977c75f887392aa8f345c5e6e9d82c5c26 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | QSysInfo: expand Linux distribution detection to /etc/lsb-releaseThiago Macieira2015-02-251-31/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some older (or weird) Linux distributions don't have /etc/os-release, so let's try to read /etc/lsb-release instead. If we find a file called /etc/<distronamelowercase>-release and it's bigger than the pretty name we read from /etc/lsb-release, use that. Because the order of the keys changes between the two *-release files, we can't do a sorted search anymore. Change-Id: I1a800c709d3543699131ffff13c48532d5074f3c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Dirk Hohndel <dirk@hohndel.org> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix various qdoc-warnings.Friedemann Kleint2015-02-252-2/+2
| | | | | | | | | | | | | | | | | | | | qtbase/src/corelib/itemmodels/qitemselectionmodel.cpp:1199: warning: Undocumented parameter 'model' in QItemSelectionModel::modelChanged() qtbase/src/corelib/plugin/qpluginloader.cpp:420: warning: Can't link to 'staticPlugin()' qtbase/src/gui/text/qtextdocument.cpp:1452: warning: No such parameter 'from' in QTextDocument::find() qtbase/src/testlib/qtestcase.cpp:2770: warning: No documentation for 'QTest::qExtractTestData()' Change-Id: I76758dbdf3ad7b0ae1f14de0407a6fde523827d0 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | QVariant: fix converting enum to stringOlivier Goffart2015-02-251-2/+2
| | | | | | | | | | | | | | Use QMetaEnum::valueToKey instead of valueToKeys. Change-Id: I270f0820a03aaebde94c37c011c5e9b81421b50f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | Doc: Fix typosSergio Ahumada2015-02-251-1/+1
| | | | | | | | | | | | | | Change-Id: Id7ecc747545f9675b84c3a8c284a52e72a584135 Reviewed-by: Sune Vuorela <sune@vuorela.dk> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* | Fix QT_POSIX_IPC supportPasi Petäjäjärvi2015-02-254-5/+2
| | | | | | | | | | | | | | | | | | On platforms which does not have at all sysv support, all posix ipc tests and compilation failed because sysv specific header files were included unconditionally. Change-Id: I5713ace6daeb6e79f8794ce42b2b3dfa1b95ab2d Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Fix various qdoc-warnings.Friedemann Kleint2015-02-254-4/+4
| | | | | | | | | | | | | | | | | | | | qtbase/src/corelib/doc/src/containers.qdoc:28: warning: Can't link to 'QList:end()' qtbase/src/corelib/kernel/qmetaobject.cpp:2680: warning: Cannot find 'fromType(...)' in '\fn' QMetaEnum QMetaEnum::fromType() const qtbase/src/corelib/kernel/qmetatype.cpp:1117: warning: Cannot find 'qMetaTypeTypeImpl(...)' in '\fn' int qMetaTypeTypeImpl(const char *typeName) qtbase/src/corelib/plugin/qplugin.qdoc:48: warning: Cannot find file to quote from: 'plugins/interfaces.h' Change-Id: Ie613253211e16ec616ccb70c24c625a9d5352d1b Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.4' into 5.5Frederik Gladhorn2015-02-2438-83/+179
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/xml/htmlinfo/simpleexample.html examples/xml/rsslisting/rsslisting.cpp qmake/generators/win32/msbuild_objectmodel.cpp src/3rdparty/harfbuzz-ng/src/hb-private.hh src/corelib/global/qlogging.cpp src/corelib/io/qstorageinfo_unix.cpp src/corelib/thread/qwaitcondition_unix.cpp src/gui/kernel/qguiapplication.cpp src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp src/testlib/doc/src/qt-webpages.qdoc tests/auto/other/qaccessibility/tst_qaccessibility.cpp Change-Id: Ib272ff0bc30a1a5d51275eb3cd2f201dc82c11ff
| * Doc: corrected link/autolink issues in corelibNico Vertriest2015-02-2420-45/+53
| | | | | | | | | | | | Task-number: QTBUG-43115 Change-Id: I31da92e3a7c4dd7b75ee283dbfecd77e284978ca Reviewed-by: Martin Smith <martin.smith@digia.com>
| * Timezones: Fix handling of offset-from-UTC QTimeZonesThiago Macieira2015-02-232-0/+11
| | | | | | | | | | | | | | | | | | | | Those QTimeZones failed to convert to other timezones because the data() virtual function was never overridden and reimplemented. That meant all QUtcTimeZonePrivate objects were *really* UTC, with no offset. Task-number: QTBUG-44600 Change-Id: Ia0aac2f09e9245339951ffff13c5294bb783c674 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * QVector: fix use of invalid iterators in removeAll()Marc Mutz2015-02-221-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The c2m() function which converts a const_iterator into an iterator is a broken concept for an implicitly shared container such as QVector, because the act of calling begin() as the starting point already detaches and invalidates the c2m argument. This could be fixed in c2m, but the bug wasn't even in c2m, but in removeAll(), which called end() before c2m, so the c2m argument was already invalidated when entering c2m. The solution is to store the positions as indices instead of iterators before calling the first detaching function. Task-number: QTBUG-44592 Change-Id: I66cf4f1277e71148a4d5b5bbfb6a3369ad02db68 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * Fixing Qt5CoreConfigExtras.cmake.inBjoern Thiel2015-02-201-5/+5
| | | | | | | | | | | | | | | | The property INTERFACE_LINK_LIBRARIES has a single value and is configuration independent. Change-Id: I9130b1d0444563335825e3806f693a39f65ca67d Reviewed-by: Stephen Kelly <steveire@gmail.com>
| * qstorageinfo_unix.cpp: Fix build on SolarisDmitry Shachnev2015-02-201-3/+4
| | | | | | | | | | | | | | | | Task-number: QTBUG-44556 Change-Id: I22d791011866175ca88de88c0b1a7c4d9d397d8f Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Android: Fix local ref handling.Christian Strømme2015-02-173-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We where allowing conversion from jobject to QJNIObject without taking ownership of the jobject. Since we are managing the JNI environment we should not allow conversions without having the option of taking ownership of the local ref. This is now done by making the conversions explicit, i.e., local refs are converted through QJNIObjectPrivate::fromLocalRef() and global refs through the QJNIObjectPrivate's jobject constructor. This change breaks SC, but the API is private and no usage have been found outside QtBase. Change-Id: I3175f171699ec3f8e65144aaebc6246bc6e5bb4d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * Android: fix timed QWaitCondition::wait() on Android >= 5.0.Yoann Lopes2015-02-171-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wait() was always returning immediately, regardless of the timeout value, due to a timespec comparison from different clock types. On Android 5.0, qt_gettime() uses the monotonic clock but the wait condition was using the real time clock. __pthread_cond_timedwait_relative() is not exported anymore in Android 5.0, we therefore fall back to pthread_cond_timedwait(). Since the monotonic clock is now available, qt_gettime returns a time based on it. The wait condition consequently needs to use the monotonic clock. Change-Id: Ie7cf909b81107edd7207c3c039b3ec1f5422303f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * work around MSVC level 4 warningJoerg Bornemann2015-02-171-0/+1
| | | | | | | | | | | | Change-Id: Ide3541a8a1a16a1f9b6b01f54d5b2f6ab178c3ac Task-number: QTBUG-7233 Reviewed-by: hjk <hjk@theqtcompany.com>
| * Fix links in plural words.Florian Bruhin2015-02-163-6/+6
| | | | | | | | | | | | | | | | In some documents, "{QObject}s" was used which didn't show up as link. This is fixed by using "\l{QObject}s" instead. Change-Id: I90dbd543790842b242a11f3f94a32d4273ebb38d Reviewed-by: Martin Smith <martin.smith@digia.com>
| * Doc: clarify what QUrl::topLevelDomain actually doesThiago Macieira2015-02-161-0/+15
| | | | | | | | | | | | | | Task-number: QTBUG-44390 Change-Id: I1a800c709d3543699131ffff13c19789a12dac0b Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Richard J. Moore <rich@kde.org>
| * Make the detection of the number of cores on Unix prettierThiago Macieira2015-02-151-4/+2
| | | | | | | | | | | | | | This is a no-op change. It doesn't improve or worsen the code at all. Change-Id: Ifd5273842370ca9bce0ed74f2f2d54d453797948 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Ensure that the binary JSON objects are actually sortedThiago Macieira2015-02-151-0/+5
| | | | | | | | | | | | | | QJsonObject requires that, since it does binary searches for the keys. Change-Id: I8a7a116f51864cecb52fffff13bc24660c1cc1ac Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * qFormatLogMessage: optimize %{backtrace}Olivier Goffart2015-02-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | backtrace_symbols is very slow because it tries to find the function name from the address. In order to do that it needs to do a linear search over all symbols. (Because the hash table goes the other way to find the address from the symbol name) The code is going to skip a few frames from QtCore. Since we cannot know how many, we take a few more than necessary. This patch changes the additional number of frames from 15 to 7 (Usually, there are about 5 suppressed frames). We call backtrace_symbols several times for only one frame at the time. So we are not looking up addresses we don't need after we printed the right number of frames. Calling many times backtrace_symbols means we do more malloc, but that's negligible compared to the time we save. We anyway do a lot of other allocations because of the regexp operations and such So this patch is then saving about 10 frames lookups which allow to print about 6 qDebug per miliseconds instead of only 2 when using %{backtrace depth=2} Change-Id: Ic6ece2145d53dc570c80fcb0e4455dcef6bc40cb Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * Document and further test that QJsonObject::keys() is sorted.Mitch Curtis2015-02-111-0/+2
| | | | | | | | | | Change-Id: I6b145c1240cce85ad3fea6fb90ddbed629487f83 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * Merge remote-tracking branch 'origin/5.4.1' into 5.4Frederik Gladhorn2015-02-103-3/+28
| |\ | | | | | | | | | Change-Id: I9d668a655b548feab43e9d4b03e2437bdff76437
| | * Fix compilation with Apple Clang 425Thiago Macieira2015-02-091-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This version was based on Clang mainline between releases 3.1 and 3.2, which means it has part of 3.2 features but not all. One of the missing features is __builtin_bswap16. Cherry-picked from ec9bc843d8a5c18459f3669c6e22acac2077df67 on 5.4 Change-Id: Ic5d393bfd36e48a193fcffff13b95664c7f664de Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| | * WinRT: Gracefully exit an applicationMaurice Kalinowski2015-02-021-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While it is not recommended by Microsoft to manually exit an application, currently applications just hang when exiting main(). Instead when QCoreApplication::exit() is called use the CoreApplication to properly invoke native Exit() and let the application completely shut down. Add a warning to notify developer about this non-standard behavior, as usually the system is supposed to take care of suspending and closing. Certification still passes for Windows RT and Windows Phone. Task-number: QTBUG-43862 Change-Id: Ia34443ea75daaaeca0bee2a0c9fcc568c0659262 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * Fix memory leak in qSetMessagePatternKai Koehne2015-02-021-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | We were leaking memory in case setPattern was called multiple times Task-number: QTBUG-43893 Change-Id: Icd9c214edea064aeaeb6f92a9c62836238ccd344 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * Correct the version of ICC that has the constexpr bug fixedThiago Macieira2015-01-291-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | 01fc82e3574614762d2ce061dd45ce4995c79e7f updated the code for ICC 15, but it needs to be 15.0.1 Change-Id: Iba8d819ab9174d9dac07ffff13bbc26b9be46d53 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | logging: Check if uClibc has backtrace supportFatih Aşıcı2015-02-091-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | execinfo.h is optional in uClibc. We need to check __UCLIBC_HAS_BACKTRACE__ if uClibc is used. Change-Id: Ie28be85b0b70472df1fc4a208581bb66ad34229e Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge dev into 5.5Oswald Buddenhagen2015-02-2333-305/+389
|\ \ \ | | | | | | | | | | | | Change-Id: Id6dbbbfc542c214fe695c6795c6aaf23aedc1cd1