summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Mark QCoreApplication::applicationPid() as const functionThiago Macieira2017-10-011-1/+1
| | | | | | | | | | | | | | | | | | | | | The PID cannot change. Change-Id: I0b48fc8e90304e0dacc3fffd14e9324bfcda4412 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * | Remove Q_ALWAYS_INLINE from frequently-used functionsThiago Macieira2017-09-293-24/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MSVC is too stupid for them. Not only will it not inline those functions if they are in a __declspec(dllimport) class, it will also print an annoying Level 4 warning: function 'function' marked as __forceinline not inlined Task-number: QTBUG-57811 Task-number: QTBUG-55042 Change-Id: I0b48fc8e90304e0dacc3fffd14e8a346d18a9e0c Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | Clean up OS version checks for Apple platformsJake Petroules2017-09-291-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert QSysInfo/QOperatingSystemVersion to __builtin_available where required or possible, or to QOperatingSystemVersion where __builtin_available cannot be used and is not needed (such as negated conditions, which are not supported by that construct). Change-Id: I83c0e7e777605b99ff4d24598bfcccf22126fdda Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | QFileSystemEngine: Remove unneeded test for relative symlinkOrgad Shaneh2017-09-281-2/+0
| | | | | | | | | | | | | | | | | | | | | symLinkTarget should always return absolute path. Change-Id: Id0078924d2f0befdea91e652a6c7775707c1b3c8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | QFileSystemEngine: Minor cleanup in unixOrgad Shaneh2017-09-281-7/+2
| | | | | | | | | | | | | | | Change-Id: I4a123484ea1f5e53af85a52e86d4a80cef1cd7bc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Fix element overwrite in QRandomGenerator's fallback functionEirik Aavitsland2017-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Copy into the intended array elements, not into the start of the array. Change-Id: I05c4ece2450583c9358aa1eddfd702262e995146 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Add a "shim" to allow use of Clang 5's __builtin_available everywhereJake Petroules2017-09-271-0/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly relevant for Apple platforms, where we can use the new unguarded availability warnings to guarantee that proper version checks are present when using APIs that are not necessarily available on the deployment target. Change-Id: Ie408704b2924e1220491a9ea30f0141dfa4867d9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Don't read the statx struct in case of failureSérgio Martins2017-09-271-2/+5
| | | | | | | | | | | | | | | Change-Id: I62d98e4463003a1da8f28318d82635f6e0b2cc8c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Improve qustrlen further by avoiding the alignment prologueThiago Macieira2017-09-261-10/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids looping prior to the main 16-byte loop, by performing one load that may include bytes prior to the start of the string. This is guaranteed not to fault, since str points to a valid character, but it may cause Valgrind to print warnings. Change-Id: I6e9274c1e7444ad48c81fffd14dcae854bba24b2 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | macOS: Fix standardLocations() returns invalid pathMasashi Fujimoto2017-10-111-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file path included in the return value was incorrect when giving the following value to the argument of "QStandardPaths::standardLocations()". - QStandardPaths::AppDataLocation - QStandardPaths::AppLocalDataLocation - QStandardPaths::DataLocation The function to obtain the path to <AppName>.app changed from CFURLCopyPath() to CFURLCopyFileSystemPath() by commit id c0da37a806dc0457636d787331e9f50778ee8b3e. CFURLCopyPath() returns a value with a path delimiter appended at the end, but CFURLCopyFileSystemPath() is not. This is a commit to append '/' to the end of the return value of CFURLCopyFileSystemPath(). Task-number: QTBUG-61159 Change-Id: Icaebdf09d9cdf992d59c16a398dfe666e6225f99 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Stop including net/if.h from qplatformdefs.hThiago Macieira2017-10-081-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | I need to include linxx/if.h from elsewhere and these two files conflict by defining the same types (struct ifreq, struct ifmap, struct ifconf, etc.) Change-Id: I0a103569c81b4711a649fffd14eb2f6dbbef83b6 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Qt Core: Remove code for Windows < 7Friedemann Kleint2017-10-053-18/+6
| | | | | | | | | | | | | | | | | | Change-Id: I919827c6016156af596fd90fc5563445e0ae4228 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | QLocaleData::longLongToString: clean up sign handlingEdward Welbourne2017-10-033-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In qlltoa we simply discarded sign, passing absolute value down to qulltoa; given that it had just one caller and did something only that caller is apt to want - violating the principle of least surprise for those who would expect it to handle sign sanely - it is better to just inline it in the one place it was used. That one place, QLocaleData::longLongToString(), handles sign separately and (for reasons I shall argue elsewhere are bogus) ignores sign for bases other than ten. When ignoring sign, it passes negative values directly to qulltoa, which caught the attention of Coverity (CID 22326). This deliberately cast (for the same bogus reasons) negatives to large unsigned. Inlining base ten's call to qlltoa() as a call to qulltoa() could now be unified into a simple (and less obviously perverse) form. Making the (contentious) cast explicit can then calm Coverity and we get a simpler implementation all round. Incorporate also Marc Mutz's fix for unary minus applied to unsigned and handling of the most negative value, suitably adapted. Change-Id: Iea02500a5dd7c6d7ac6e73656e1b11f116ae85c6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Fix unused variable warning in qrandom.cppJüri Valdmann2017-09-271-0/+2
| | | | | | | | | | | | | | | | | | | | | The 'ret' variable is unused if assertions are disabled. Change-Id: I90fec4e18e82d13b681068e222e994247988cbc5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-09-2624-220/+436
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qguiapplication.cpp src/platformsupport/input/libinput/qlibinputpointer.cpp src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h src/plugins/platforms/cocoa/qcocoawindow.h src/testlib/qtestsystem.h Change-Id: I5975ffb3261c2dd82fe02ec4e57df7c0950226c5
| * | Add currentType function to QOperatingSystemVersionJake Petroules2017-09-253-19/+29
| | | | | | | | | | | | | | | | | | | | | | | | This allows us to retrieve the current OS type without constructing an instance of the class, and it's also constexpr. Change-Id: I8b32a1aebeb8139fe3fcf146e5de558fa1060bb8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | QThread::create: move implementation out of lineGiuseppe D'Angelo2017-09-242-69/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we accept STL datatypes in our ABI, expose a factory function that takes a std::future<void>, and hide the QThread subclass in our implementation. This also solves the problem of a non-exported polymorphic class that would generate duplicate vtables / typeinfo in all TUs. Change-Id: I70a5c301e7c589de1a4a189db39b86b956d1ba0d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | QThread::create: make qdoc generate its documentationGiuseppe D'Angelo2017-09-241-0/+7
| | | | | | | | | | | | | | | Change-Id: I6eaaa0f9cbda6ef985cda63f2bf36d3102f34f32 Reviewed-by: Martin Smith <martin.smith@qt.io>
| * | QRandomGenerator: update API to better nameThiago Macieira2017-09-224-45/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "generate" is better than "get", and we already have "generate(it, it)" which uses std::generate(). This changes: - get32() → generate() - get64() → generate64() and QRandomGenerator64::generate() - getReal() → generateDouble() Change-Id: I6e1fe42ae4b742a7b811fffd14e5d7bd69abcdb3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | Merge "Merge remote-tracking branch 'origin/5.9' into 5.10" into ↵Liang Qi2017-09-213-43/+59
| |\ \ | | | | | | | | | | | | refs/staging/5.10
| | * | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-09-203-43/+59
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/styles/mac/qmacstyle_mac.mm src/widgets/util/qcompleter.cpp src/widgets/widgets/qmainwindowlayout.cpp src/widgets/widgets/qmdisubwindow.cpp Change-Id: If0e96981af07ce36ac68f2e69211bc2120f93973
| | | * Add missing pwd.h includeJake Petroules2017-09-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This file uses functions declared in this header, and it is not pulled in transitively on all platforms. Change-Id: I6654118883a8dc22dacf1beb7b9b1c662719d25c Reviewed-by: Tuomas Heimonen <tuomas.heimonen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * QSharedPointer: fix undefined behavior in operator<Giuseppe D'Angelo2017-09-171-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pointers belonging to different arrays must be compared using std::less. Change-Id: Ib77af7b1b2da58d7243fa77273a8a45ee9035a1a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Optimize QVariant::cmp()Lars Knoll2017-09-141-40/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't always copy the variants that we want to compare. This can in some cases be a relatively expensive operation. Change-Id: I2b3fd246ac136b19d8a8d281fbdcfb0417c8fb6c Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| | | * Improve performance of QVariant::canConvert()Lars Knoll2017-09-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an early check if both types are the same. Change-Id: If6fc60a58fce641521c083bf920e72bf3d2d4c28 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | | QOperatingSystemVersion: Add debug operatorFriedemann Kleint2017-09-202-0/+18
| |/ / | | | | | | | | | | | | | | | Change-Id: Ibc942196bef0edc74f34501830fc83cb64259e39 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * | Fix documentation code snippet of QString::arg(QStringView)Friedemann Kleint2017-09-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Fix qdoc warning: src/corelib/tools/qstring.cpp:7809: warning: Command '\snippet (//! [11-qstringview])' failed at end of file 'qstring/main.cpp' Change-Id: Ie5a57bd94ba64ceab5179593f1df35be29c9985a Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| * | QStringView: De-inline the length calculation so we can use SSE2Thiago Macieira2017-09-133-10/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Performance is more important in this case than the theoretical benefit of constexpr. This commit implements the SSE2 search for 16-bit null and it might be possible to implement the equivalent for AArch64 (investigation required). It also adds a fallback to wcslen() for systems where wchar_t is short (non-x86 Windows or 32-bit x86 build with -no-sse2). We can re-add the constexpr loop once the C++ language has a way of overloading constexpr and non-constexpr. GCC has a non-standard way to do that with __builtin_constant_p, which is also implemented in this commit, but note that the inline function is still not constexpr. Change-Id: I6e9274c1e7444ad48c81fffd14dcaacafda5ebdc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | macOS: Detect use of heap-allocated QMacAutoReleasePoolTor Arne Vestbø2017-09-082-1/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QMacAutoReleasePool is backed by an NSAutoreleasePool, which documents that "you should always drain an autorelease pool in the same context (invocation of a method or function, or body of a loop) that it was created". This means allocating QMacAutoReleasePool on the heap is not a supported use-case, but unfortunately we can't detect it on construction time. Instead we detect whether or not the associated NSAutoreleasePool has been drained, and prevent a double-drain of the pool. Change-Id: Ifd7380a06152e9e742d2e199476ed3adab326d9c Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | macOS: Remove QMacRootLevelAutoReleasePool member from QCoreApplicationTor Arne Vestbø2017-09-081-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tying the pool to the lifetime of QCoreApplication becomes a problem when the application is allocated on the heap, for example when Qt is used to create plugins, as NSAutoreleasePool should be allocated and drained in the same context, typically a function scope. The feature is disabled for now, until we can find a better way to achieve the same thing. Change-Id: I600587df62a8cc7caded5172ad914c0e04d794d9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-09-062-5/+10
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/opengl/qopenglwidget/main.cpp src/3rdparty/pcre2/src/pcre2_printint.c src/plugins/platforms/cocoa/qnsview.mm src/widgets/widgets/qcombobox.cpp Change-Id: I37ced9da1e8056f95851568bcc52cd5dc34f56af
| | * Fix resolution of relative links on WindowsOrgad Shaneh2017-09-041-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QFileInfo] Relative symbolic links on Windows are now resolved to their absolute path by symLinkTarget(). Task-number: QTBUG-62802 Change-Id: I5826517130bd389aef994bf3f4b6d99b2a91b409 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * QModelIndex: use std::less to compare pointersGiuseppe D'Angelo2017-09-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Comparing pointers not belonging to the same array requires using std::less. Change-Id: I2725aa0899f6b9fece73dadd9ee5c10242d50ae1 Reviewed-by: David Faure <david.faure@kdab.com>
| * | Don't call the qAddPreRoutine routines with the mutex lock heldThiago Macieira2017-09-061-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of those routines could recurse back. This was a pre-existing problem for Pre-Pre routines, but commit a92ee2518fdbd77fcbe3f8ef4f412aa made qAddPostRoutine also use the same mutex. Task-number: QTBUG-63008 Change-Id: I38341f8155354cc4a776fffd14e17a037d25475f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | Merge dev into 5.10Frederik Gladhorn2017-09-0222-108/+277
| |\ \ | | | | | | | | | | | | Change-Id: I5fb5e7e6e57bb5db6fcb1f670f7f6cbc8def2d60
| * | | Make qAddPostRoutine & family thread-safeThiago Macieira2017-09-011-8/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If one wants to add them on demand, threads may have started, so these functions should be thread-safe. That includes the calling of the registered functions: some other thread could be adding post routines too. Of course, if you're racing, it's your own fault, but we need to support the routines registered with qAddPostRoutine adding more post routines. [ChangeLog][QtCore] qAddPostRoutine() and qRemovePostRoutine() are now thread-safe. Task-number: QTBUG-62915 Change-Id: I38341f8155354cc4a776fffd14dffa68bde8345d Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | | QLocale docs: remove useless \sa linksShawn Rutledge2017-08-291-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's true that formattedDataSize is useful for formatting file sizes from QFileInfo, but these links don't make sense here, and also cause qdoc warnings due to lack of class scoping. Change-Id: I9dd28200aa9d0da048db0c02ac66dc20c1b42e5c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | | Fix documentation of QThreadPool::stackSizeFriedemann Kleint2017-08-291-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix warning qthreadpool.h:61: warning: No documentation for 'QThreadPool::stackSize' Amends e44ff1978344600cd9b1f41949697f0e877fd5cd. Change-Id: I060de623b2befcc55846e1827b9cd58aacf3a3c0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | | Add the "we mean it" warning to qfutex_p.hMårten Nordheim2017-09-221-0/+11
| | | | | | | | | | | | | | | | | | | | Change-Id: I77a0899532e2a38fa390991bbad11300672544bf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | | Replace Q_DECL_FINAL with finalKevin Funk2017-09-224-29/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remaining uses of Q_DECL_FINAL are in: src/corelib/global/qcompilerdetection.h src/corelib/global/qglobal.cpp (definition and documentation of Q_DECL_FINAL) src/tools/moc/moc.cpp tests/auto/tools/moc/ (supported for moc for Q_DECL_FINAL) Change-Id: I0d28946c9c3f9d37d0b303db86079129014de1f3 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | Replace Q_NULLPTR with nullptr where possibleKevin Funk2017-09-19110-398/+398
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remaining uses of Q_NULLPTR are in: src/corelib/global/qcompilerdetection.h (definition and documentation of Q_NULLPTR) tests/manual/qcursor/qcursorhighdpi/main.cpp (a test executable compilable both under Qt4 and Qt5) Change-Id: If6b074d91486e9b784138f4514f5c6d072acda9a Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | | | Replace Q_DECL_OVERRIDE with override where possibleKevin Funk2017-09-1969-515/+515
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remaining uses of Q_DECL_OVERRIDE are in: src/corelib/global/qcompilerdetection.h src/corelib/global/qglobal.cpp doc/global/qt-cpp-defines.qdocconf (definition and documentation of Q_DECL_OVERRIDE) tests/manual/qcursor/qcursorhighdpi/main.cpp (a test executable compilable both under Qt4 and Qt5) Change-Id: Ib9b05d829add69e98a86238274b6a1fcb19b49ba Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | | | Port QSemaphore to use futexesThiago Macieira2017-09-185-15/+144
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is interesting because QSemaphore now needs to allocate no memory: it's just a simple 31-bit counter and the contention flag. Change-Id: I6e9274c1e7444ad48c81fffd14dbc0ab42bc2e00 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | Move the futex implementation to a headerThiago Macieira2017-09-183-50/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | So I can use it in QSemaphore and provide a Windows implementation. Change-Id: I6e9274c1e7444ad48c81fffd14dbc0a8e2201302 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | QScopedPointer: add get()Giuseppe D'Angelo2017-09-172-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For self-consistency with QSharedPointer and minor consistency with std::unique_ptr (although QScopedPointer isn't movable, so we can't claim STL compatibility with it). [ChangeLog][QtCore][QScopedPointer] Added get(). Change-Id: Ib58f936afa0e0d5bce57a61d1467b69956f37ceb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | | QXmlStreamWriter: Avoid writing invalid charactersUlf Hermann2017-09-131-22/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some valid UTF-16 characters cannot be expressed in XML 1.0 and a QString may contain invalid unicode. In both cases we should not write the respective data to the output stream, as that generates invalid XML, which then cannot be read back by QXmlStreamReader. In addition we should report an error if we encounter them. The change filters the incorrect strings from the output and introduces an "encodingError" flag which is reported from hasError(). [ChangeLog][Important Behavior Changes] Characters invalid in XML, such as 0x0 or 0xfffe, as well as strings containing unmatched UTF-16 surrogates are now suppressed from the output of QXmlStreamWriter and cause the error flag to be set. Task-number: QTBUG-63150 Change-Id: Ia29bab768fed9681dd68e8934da2a7e3fcdfc3cd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | | QSharedPointer: add get() for STL compatibilityGiuseppe D'Angelo2017-09-123-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QSharedPointer] Added get(), for compatibility with std::shared_ptr. Change-Id: I77189c89bc6a222313b9b2353f1fb3969433c750 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | | Add QTemporaryDir to the bootstrap libraryMartin Smith2017-09-122-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clang-qdoc must be compilable using the bootstrap library, but clang-qdoc uses QTemporaryDir, which is not there. This change adds it. This also required changing some camelcase includes to their lower case equivalents. Change-Id: I8d03864f56e4bf474c3fdcde5e744ed31fea7fc3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
* | | | Android: remove support for local/debug deploymentJake Petroules2017-09-061-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes the pre-dexed JAR files activated by the absence of the bundled_jar_file CONFIG option, as versions of Android >= 5 no longer support this deployment mechanism. Now, the "bundled" JARs simply become normal JARs containing class files, and are neither activated by a bundled_jar_file CONFIG entry nor do they have a -bundled suffix in the file's base name. Task-number: QTBUG-62995 Change-Id: I3fa6819259be365b7a697f7db1d1d01a94032395 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | | | Fix zero-as-null-pointer-constant warning in QObjectJesus Fernandez2017-09-052-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Icf0c836b96cd750edeee71c144e2bd9917a96815 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>