summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel
Commit message (Collapse)AuthorAgeFilesLines
...
* | | QtCore: add some more Q_DECL_NOTHROWMarc Mutz2015-01-211-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QtCore now builds with no -Wnoexcept warnings (that doesn't mean there aren't tons of functions that should be marked noexcept, just that all conditionally noexcept functions aren't noexcept(false) just because of a forgotten noexcept elsewhere). Change-Id: I10dacb6b9c9d41d3595fe2f306356d62d3d91c76 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge "Merge remote-tracking branch 'origin/5.4' into dev" into refs/staging/devSimon Hausmann2015-01-213-21/+44
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2015-01-213-21/+44
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/global.pri src/corelib/global/qcompilerdetection.h src/corelib/global/qglobal.h src/corelib/tools/qdatetime.cpp src/plugins/platforms/xcb/qxcbscreen.h src/plugins/platforms/xcb/qxcbwindow.h src/widgets/dialogs/qcolordialog.cpp src/widgets/dialogs/qcolordialog_p.h tools/configure/configureapp.cpp Change-Id: Ie9d6e9df13e570da0a90a67745a0d05f46c532af
| | * | Doc: link issues in corelibNico Vertriest2015-01-161-5/+5
| | |/ | | | | | | | | | | | | | | | Task-number: QTBUG-43115 Change-Id: Ia80802e698f16730698e9a90102f549fb35f9305 Reviewed-by: Martin Smith <martin.smith@digia.com>
| | * Fix a memleak in QAssociativeIterable::value()Marc Mutz2015-01-042-16/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QtMetaTypePrivate::QAssociativeIterableImpl::{find,begin,end}() allocate a new _iterator, so when they're used outside of the ref-counted world of QAssociativeIterable::const_iterator, their lifetime needs to be manually managed. Instead of going to that length, which failed in previous iterations of this patch, implement value() in terms of (new) find() and let find() operate on const_iterator. Because of forwards compatibility between patch releases, use (unexported) friend functions for now with the intention to make them proper member functions come Qt 5.5. Task-number: QTBUG-41469 Change-Id: I43b21eae0c2fc4c182369e669a8b3b457be68885 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Introduce helper for QML to allow creating QWidget hierarchiesSimon Hausmann2015-01-202-0/+2
|/ / | | | | | | | | | | | | | | | | | | Commit 1259c5768e410361bcd8b5cf0c2057a2ebabda83 in qtdeclarative removed the ability to create QWidgets in QML by giving them the correct parent, which requires calling QWidget::setParent instead of QObject::setParent. This patch introduces a hook that will allow QtQml to give widgets a proper parent. Change-Id: I84c57ca5032582c43e405219343d55ac9cf2ffa0 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Add QDebug support for NSObject and a few selected CoreFoundation typesTor Arne Vestbø2015-01-181-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lets us print out the interface name in addition to the address when doing: qDebug() << myNSObject; Unfortunately, CFTypeRef is just a typedef to void*, so we can't add a generic overload for CFTypeRef. For now, we provide operators for commonly used Core Foundation and Core Graphics types. Additional types may be added using Q_DECLARE_QDEBUG_OPERATOR_FOR_CF_TYPE. Change-Id: I27b12ef9e62cb1be348b9771cb31657692903f6c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QVariant: attempt to work around an ICE on linux-arm-gnueabi-g++ (Ubuntu ↵Marc Mutz2015-01-161-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 11.10) with constexpr QSizePolicy This is the error: src/corelib/kernel/qvariant_p.h: In constructor ‘QVariantPrivateSharedEx<T>::QVariantPrivateSharedEx() [with T = QSizePolicy]’: src/corelib/kernel/qvariant_p.h:107:61: internal compiler error: in gimplify_init_ctor_eval, at gimplify.c:3560 There are two things fishy in this file: 1. Use of the unnamed namespace in a file that gets included in different libraries. While not technically undefined behavior, it may become so when used in the implementation, which it is. 2. Missing explicit initialization of a member of QVariantPrivateSharedEx. This is just a wild guess, because the ICE happens in that line. That class itself is quite smelly, because the address of an object is taken before the lifetime of the object begins. A fix would be to store the object in a wrapper class from which QVPSEx inherits _first_, but then a cast from QVPSEx to QVariant::PrivateShared would require pointer adjustments, and I didn't look through all the code to determine whether that would be an issue. Having been bitten by this sometime ago: https://marcmutz.wordpress.com/private-practice/private-practice-taming-templates/#edit-20111128 I opted to do these easy changes first to see whether they already fix the ICE. Change-Id: Ic15fd928b3dff2318c425c915b2dab5e54254d71 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Introduce Q_ENUM and Q_FLAG macrosOlivier Goffart2015-01-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In replacement for Q_ENUMS and Q_FLAGS. Q_ENUM(Foo) has to be put after the declaration of Foo in an object. It will tell moc to include the enum in the meta object (just like Q_ENUMS) and will allow templated code to get the metaobject for that enum. Will be used by QDebug and QMetaType Change-Id: Iefaf8ae07dc0359828102bf384809346629b3e23 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | Support QMetaType::equals()Alex Blasche2015-01-133-4/+62
| | | | | | | | | | | | | | | | This avoids having to define operator< for types where operator== is required but operator< doesn't make any sense (e.g. QGeoCoordinate). Change-Id: I81f6a9d8fc0009a4514c974b5e02b446c50d1e31 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Remove Q_STATIC_GLOBALxxx_OPERATOR macrosThiago Macieira2015-01-111-3/+0
| | | | | | | | | | | | | | | | | | | | These macros existed for working around an RVCT compiler bug, but since we stopped trying to work around it, the macros are no longer necessary. Change-Id: I76cc88d863b41f74f60cd9975dcc1959778c2740 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | QtCore: mark some operations nothrowMarc Mutz2015-01-102-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | This shotgun-surgery approach is motivated by trying to get a clean(er) build for -Wnoexcept on GCC, so it is expected that for any class touched here, there will be more operations that can be marked nothrow. But they don't show up in conditional noexcept clauses, yet, so they are deferred to some later commit. Change-Id: I0eb10d75a26c361fb22cf785399e83b434bdf233 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Seal shared memory on POSIX IPCTobias Koenig2015-01-091-0/+7
| | | | | | | | | | Change-Id: I5dc3807af904ad77db82d49b38b4c8e66d2d4de6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Use O_CLOEXEC flag POSIX shared memory handleTobias Koenig2015-01-091-0/+14
| | | | | | | | | | Change-Id: Ie554c5963112b88c058082085dbc9eed42a41861 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add POSIX IPC support to QSystemSemaphore and QSharedMemoryTobias Koenig2015-01-0911-336/+882
| | | | | | | | | | | | | | | | | | This patch is a forward-port from 4.8 branch (d869e1ad4b0007757e97046609de2097cd9e9c5d). Change-Id: I6ae36a5417d1176fbecf775668f6033b1cb22a94 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Remove qRegisterSequentialContainer, qRegisterAssociativeContainer tracesKai Koehne2015-01-071-5/+2
| | | | | | | | | | | | | | | | | | | | | | The methods where introduced with commit 01fb843af88d9, but removed before the next release in a1898f446651. Also add a comment that we should get rid of the special Q_CC_MSVC handling in Qt 6. Change-Id: I8bb992a59f31a0de7e3f14f34d1d4f604ebfe8f3 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Remove workarounds for RVCT compiler bugsThiago Macieira2015-01-061-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does not try to remove support for RVCT. There has been no report of it working or failing to work, so the status continues to be unknown. In particular, the inline assembly code in atomic_armv[56].h remains in place. This commit only removes workarounds for compiler bugs or bogus warnings, assuming that anyone using this compiler has updated since Qt last tried to use it for Symbian in 2011. Note also how anonymous unions are now part of the language in C++11. Change-Id: Idc4fab092beb31239eb08b7e139bce2602adae81 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-12-291-1/+1
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qbytearray.cpp src/gui/kernel/qplatformsystemtrayicon.cpp src/gui/kernel/qplatformsystemtrayicon.h src/plugins/platforms/xcb/xcb-plugin.pro Change-Id: I00355d3908b678af8a61c38f9e814a63df808c79
| * MSVC: Restore 'public' accessibility of QMetaType member functionsAndy Shaw2014-12-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | They were made 'private' as a side effect of a change enabling support of template friends for MSVC. However, accessibility is part of the MSVC's name mangling and thus BC was broken. [ChangeLog][Important Behavior Changes] Restored binary compatibility with Qt 5.3.2 on Windows when using MSVC 2012 or MSVC 2013. This means that Qt 5.4.1 is no longer binary compatible with Qt 5.4.0 when using either of those compilers. Change-Id: I18679aa15821a7365606dc80fdc8411641573820 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Fix Clang warning about inconsistent use of C++11 overrideThiago Macieira2014-12-201-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot use override in the Q_OBJECT macro, so tell Clang not to warn about our lack of use of the keyword in the three virtuals that Q_OBJECT overrides when the user uses Q_DECL_OVERRIDE in their own functions. We can't use Q_DECL_OVERRIDE for two reasons: 1) because that would trigger the warning in any and all virtual overrides the user may have in their own class (and most of Qt) 2) because when Q_OBJECT is used in QObject, it's not overriding anything -- it's the base declaration For #2, we could add a different macro exclusively for QObject that moc would expand, but it's unnecessary work. Change-Id: Ic9cb7896f93f06f4e86b6a42dc08f96d257f7550 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-104-63/+105
|\| | | | | | | | | | | | | | | Conflicts: doc/global/template/style/online.css mkspecs/android-g++/qmake.conf Change-Id: Ib39ea7bd42f5ae12e82a3bc59a66787a16bdfc61
| * Fix warnings by MSVC 64 in qtranslator.cpp.Friedemann Kleint2014-12-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | kernel\qtranslator.cpp(880) : warning C4267: 'initializing' : conversion from 'size_t' to 'const uint', possible loss of data kernel\qtranslator.cpp(881) : warning C4267: 'initializing' : conversion from 'size_t' to 'const uint', possible loss of data kernel\qtranslator.cpp(882) : warning C4267: 'initializing' : conversion from 'size_t' to 'const uint', possible loss of data kernel\qtranslator.cpp(975) : warning C4267: 'initializing' : conversion from 'size_t' to 'const int', possible loss of data Task-number: QTBUG-39757 Change-Id: I54f130e1d83ecc1623ab3c7b9b4fb14de6351625 Reviewed-by: Albert Astals Cid <albert.astals@canonical.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Don't make invalid assumptions about memcmp()Albert Astals Cid2014-12-041-8/+12
| | | | | | | | | | | | | | | | In qtranslator.cpp match() Task-number: QTBUG-39757 Change-Id: I49e3ccc0ce900564bbe14609bfda47688382d5f3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Fix placement of QT_{BEGIN,END}_NAMESPACE in qfunctions_winrt.hThiago Macieira2014-12-012-12/+17
| | | | | | | | | | | | | | | | | | | | | | Those functions weren't getting properly namespaced. Even if we're testing WinRT namespaced builds, it wouldn't catch this mistake: those functions would simply all be in the global namespace. I guess we don't have a "namespace cleanliness" test. Change-Id: I2d3d09dc66dad476563dbf51c171683be155ebfd Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com> Reviewed-by: Andrew Knight <andrew.knight@theqtcompany.com>
| * Un-tighten the WinRT specific code out of qfunctions_winrt.hThiago Macieira2014-12-011-19/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Keep the WinRT specific parts for WinRT only. This commit is a partial reversal of 67c83f329e7fb6fbf5d8e402f42ea8916c34f01c "Tighten Q_OS_WINRT ifdefs in qfunctions_winrt.h", which let the WinRT definitions out too wide. Strictly speaking, the C++ code that uses Microsoft::WRL::ComPtr<IAsyncInfo> without the #include is broken. The forward definition is not enough, but since Visual Studio is also broken, two wrongs made a right... (MSVC does not implement two-stage parsing of template code properly). But if you accidentally tried to compile qfunctions_winrt.h with a non-broken compiler, like GCC (MinGW), it would correctly complain. Change-Id: I7591015861d291a82050afe0f4df0cb18b43e23d Reviewed-by: Andrew Knight <andrew.knight@theqtcompany.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
| * Merge remote-tracking branch 'origin/5.4.0' into 5.4Frederik Gladhorn2014-11-271-25/+58
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: dist/changes-5.4.0 7231e1fbe24102f2a93b34dfa70e3dca884440d2 went into 5.4 instead of the 5.4.0 branch, thus the conflict. Change-Id: I70b8597ab52506490dcaf700427183950d42cbd1
| | * Android: protect global jni cache.Christian Strømme2014-11-211-25/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a issue that has been neglected for a while, namely, that the access to the global jni caches where not sufficiently protected for concurrent usage. This change also fixes an issue with the thread-name storage. Task-number: QTBUG-42755 Change-Id: I22f95ae7f44d1f6a13e289e52b050d98ccb9fb28 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | | Fix QMetaProperty::write so it tries to register a property type.Jędrzej Nowacki2014-12-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | We can not assume that the property type is always registered, because QVariant argument may contain an instance of a different type. Change-Id: I4fc9593b826e13c401dbdacec4d60db36edc7102 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | | Re-factor code that do lazy property registration into a function.Jędrzej Nowacki2014-12-072-19/+21
| | | | | | | | | | | | | | | | | | | | | | | | The code was repeated in a different form 3 times. Change-Id: I6d0deb5dd9a317e1aab6a97d5eb2fd647f597661 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | | Use the new warning enabling/disabling macros in qtbaseThiago Macieira2014-12-031-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I91ff06644e8047c2ca483f9768b46c1372eb6171 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | QVariant: simple improvement to numeric type checkingThiago Macieira2014-12-031-8/+24
| | | | | | | | | | | | | | | | | | | | | Results in faster code. Change-Id: Ibeeac8c0f9d8a525fa233e00301338d3170ee413 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | Hoist the numeric comparisons in QVariant::{cmp,compare} furtherThiago Macieira2014-12-031-16/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I had already hoisted them a little in the previous commit, so that the comparisons run without conversion. This now moves the numeric compare() before the cmp() equality check, so it saves us a few more cycles. Another benefit is reduced code duplication. Change-Id: Ia96da94e169fe0b8d4e761177fc2b74e47d4daff Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | Implement proper C++ type numeric promotion for QVariant comparisonsThiago Macieira2014-12-032-8/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, QVariant would try to convert one operand to the other's type, which would produce unexpected results: the results would depend in the order of the operands and whether there was data loss in the conversion. In addition, ordering comparisons were only done with signed values, yielding other unexpected results, like QVariant(LLONG_MAX / 2) < QVariant(Q_UINT64_C(0)). Instead, try to obey the C++ standard rules for type promotion in expressions. Our code is a little simpler than the standard would seem to require since we know some more details from the ABI. [ChangeLog][Important Behavior Changes][QVariant] QVariant now obeys the C++ type promotion rules when comparing numeric types (integrals, float and double), including the fact that unsigned comparisons are preferred for types of the same rank (that is, now QVariant(-1) > QVariant(0U)). Task-number: QTBUG-42722 Change-Id: Ie7b19073dcb45485354710975e561bcdb1a753f1 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | Add Q_DECL_OVERRIDE in the src subdirectoryOlivier Goffart2014-12-038-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Done automatically with clang-modernize on linux (But does not add Q_DECL_OVERRIDE to the function that are marked as inline because it a compilation error with MSVC2010) Change-Id: I2196ee26e3e6fe20816834ecea5ea389eeab3171 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-11-271-0/+2
|\| | | | | | | | | | | Change-Id: Id20053d261b4fbbcc0ac8ba49dd3ef2253fa4b95
| * | Deprecate implementations of functions deprecated in headersShawn Rutledge2014-11-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | If you build with configure -DQT_NO_DEPRECATED this will avoid some build errors. Change-Id: If2b2e57b6919091f3f077ebc2aeca0c3fd2421aa Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | | Micro-optimize QVariant enum to number conversionsJędrzej Nowacki2014-11-271-4/+6
| | | | | | | | | | | | | | | | | | Change-Id: I2296d9417e0d1ef08084fb259885ac2a3eff9fe8 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-11-2411-187/+265
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qiodevice.cpp src/plugins/bearer/linux_common/qofonoservice_linux.cpp src/plugins/bearer/linux_common/qofonoservice_linux_p.h src/plugins/platforms/android/qandroidplatformtheme.cpp src/tools/bootstrap/bootstrap.pro src/widgets/styles/qmacstyle_mac.mm Change-Id: Ia02aab6c4598ce74e9c30bb4666d5e2ef000f99b
| * | Merge remote-tracking branch 'origin/5.4.0' into 5.4Frederik Gladhorn2014-11-212-22/+50
| |\| | | | | | | | | | Change-Id: I95f235a66ce2e9b1fa435c0f911c6f7e811755f0
| | * Windows: Prevent registration of timers in shutdown phasev5.4.0-rc1Kai Koehne2014-11-202-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not register new timers after closingDown() has been called. They might call back into QEventDispatcherWin32 after the object has been destructed, leading to crashes on exit. registerSocketNotifier has a similar protection using QCoreApplication::closingDown(). This however does not work in all cases, because QEventDispatcher::closingDown() is called in ~QGuiApplication(), while QCoreApplication::is_app_closing is set in ~QCoreApplication(). In between qt_call_post_routines() is called, which might trigger new timers to be registered. Task-number: QTBUG-42772 Change-Id: I91325fb10e38c117c1cbedfee272d0ab6a5ca8fa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * Merge remote-tracking branch 'origin/5.4' into 5.4.0Oswald Buddenhagen2014-11-103-148/+153
| | |\ | | | | | | | | | | | | Change-Id: I85e3dfa62f217b76447276dd7cce6b9eac3a144e
| | * | direct2d: Use simple event posting to avoid event queue lock upAndrew Knight2014-11-072-20/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In rare cases, the Windows event loop can be spinning inside the inner loop and the message hook is never called. This can be triggered on the Direct2D platform by opening 32+ window handles. The issue can be worked around by using the same approach Windows CE uses: don't rely on the message hook to inform the event loop that the post message has been delivered. Instead, uninstall the hook and let it be called directly by the event loop. Task-number: QTBUG-42428 Change-Id: I10280126dd50729bc260aa5f7029549e2e061c01 Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * | | Pick up QT_LOGGING_RULES also for bootstrapped toolsKai Koehne2014-11-201-2/+0
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | Pick up logging rules set by QT_LOGGING_CONF, QT_LOGGING_RULES, and qtlogging.ini file also for bootstrapped tools. This helps e.g. in the case of winrtrunner, which uses categorized logging. Change-Id: I47d392137e17a59cb57b5c0226f282b0ccf29961 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
| * | Android: Fix for build issue on x86Christian Strømme2014-11-062-145/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the toolchain for x86 the va_list type is defined as char *, which in itself isn't strange, but it was somewhat unexpected as it differs from the arm toolchains. Either way we should not make assumption about the va_list type as there is no guarantee it won't cause conflicts when overloading. This fix simply renames the private overloads. Change-Id: I7808619d0fa3ca63b75796308cfdff6aa41a7fd0 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * | Fix incorrect documentation from QTranslator::loadAki Koskinen2014-11-051-3/+2
| |/ | | | | | | | | | | Task-number: QTBUG-27506 Change-Id: I1b2d4ed2242efd52258c7f587c2121f9dde18a0d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Fix a fatal Clang warning on LinuxGiuseppe D'Angelo2014-11-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Two fromstrerror_helper overloads are defined, to manage the fact that strerror_r returns an int or a char* depending on the system. The problem is that then only one overload used (again, depending on the actual stderror_r return type), leading to one of the two overload to be unused and thus triggering the unused function warning. kernel/qsystemerror.cpp:64:27: error: unused function 'fromstrerror_helper' [-Werror,-Wunused-function] static inline QString fromstrerror_helper(int, const QByteArray &buf) Change-Id: I6a1c8e1a4b7d14068b682db26002ff68ad36167c Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * Android: Add runOnUiThread() functionChristian Strømme2014-11-032-0/+41
| | | | | | | | | | | | | | | | Enables QRunnables to be run on the UI thread. For now this function is only intended for internal consumption. Change-Id: I5e2abb06104219a9dd55b3308113056e4da5fa07 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * Mark QMetaMethod and related constructor as constepxrOlivier Goffart2014-10-311-3/+3
| | | | | | | | | | | | | | | | | | qtdelcarative's qquickaccessibleattached.cpp contains now some static instance of QMetaMethod. Marking the constructor as constexpr, let GCC to remove call to the constructor at load time. Change-Id: Ic5ab7db0d06caa08f15d65d3bb5f22a34a111fee Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
| * Lower QVariant::userType call countJędrzej Nowacki2014-10-311-10/+16
| | | | | | | | | | | | | | | | We know that type id can't be changed, let pass this information to the compiler. Change-Id: I105b460417288b84250a954571c247608976f8f7 Reviewed-by: Stephen Kelly <steveire@gmail.com>
* | QVariant: Fix qIsNumericType(SChar)Thiago Macieira2014-11-201-1/+2
| | | | | | | | | | | | | | signed char is a numeric type Change-Id: I5cf9ed63cb7a2ba56c08119c77bcac0f9369b5df Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>