summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Make rowIntersectsSelection take account of the parent argument.Stephen Kelly2012-08-101-4/+7
| | | | | | | Task-number: QTBUG-22370 Change-Id: I497194793eab624b760deea93dac0df767850330 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QtWidgets: use new qEnvironmentVariableIs{Empty,Set}()Marc Mutz2012-08-102-5/+5
| | | | | | | | | Incidentally, this patch shows that Qt isn't consistent in how it treats empty environment variables used as flags, but that is something for a separate commit. This patch aims to be behaviour-preserving. Change-Id: I5390cda314858762b76384291373a6f0167d323a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Take scroll position into account when painting drag pixmap.Stephen Kelly2012-08-101-1/+1
| | | | | | | | Task-number: QTBUG-26793 Change-Id: Ic19cb6581cd5838d26713998e152772a5d12da4f Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Revert "Added default argument for color profile to QImage constructors."Alexandros Dermenakis2012-08-102-20/+12
| | | | | | | | | | Reverting change after request in the developers mailing list. This reverts commit 50a5bd5429e0c8b99be81b86d3730737cb7f8514. Change-Id: Ic4a420d6ad0995810ed61d31edd28e7b603cca5e Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* make currentText the USER property for QComboBoxMark Brand2012-08-101-2/+2
| | | | | | | | | | | | | QItemDelegate takes the USER property as the value to be set using model->setData(). The text is what is expected. follow-up to b1b87a73012342dc1619a8e907ea9954d59ca564 which in Qt 4.8.0 broke the interaction between QComboBox and QItemDelegate used by QDataWidgetMapper and item views. Task-number: QTBUG-26501 Change-Id: I005a0a6af5265ee22baf417957e520992d16d6e1 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Require CMake 2.8.9 for the qt5_use_modules function.Stephen Kelly2012-08-101-14/+1
| | | | | | | | | | | The newer CMake version has the POSITION_INDEPENDENT_CODE property which is what we need here. The CMake 2.8.8 implementation uses awkward and incomplete string manipulation which I don't want to maintain for any amount of time when Qt 5.0 is released. Change-Id: If7ace9c6925ccdbf800f1863fa2368e55fa44d7f Reviewed-by: Brad King <brad.king@kitware.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Doc: Added a Qt Network landing page.Jerome Pasion2012-08-106-14/+44
| | | | | | | | | | -fixed generated HTML file names -removed qt-network group in qt/qtdoc and removed \ingroup instances Change-Id: Ida5ded5da30e6db1978382f6742a5da8036e055e Reviewed-by: Shane Kearns <shane.kearns@accenture.com> Reviewed-by: Martin Smith <martin.smith@nokia.com> Reviewed-by: Laszlo Papp <lpapp@kde.org>
* Use an include guard for qelapsedtimer.h that matches the file nameThiago Macieira2012-08-101-3/+3
| | | | | | | The class used to be called QTimeStamp before. Change-Id: I6e543f4f131a80299eb5dae78d8852b7899bab8a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Use Q_LIKELY instead of doing an #ifdef for GCCThiago Macieira2012-08-101-7/+2
| | | | | | | | This code predated the Q_LIKELY macro. Now that we have it, use the official macro. Change-Id: I0e43609f8d6827f8fef7b928655a965cba579b8d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Correct QTransform::QTransform documentation re m13 initialisation.Mitch Curtis2012-08-101-1/+1
| | | | | | | | | Documentation incorrectly states that it is m13 that is set to 1, when it is instead m33. Task-number: QTBUG-10232 Change-Id: If3c7d3eb1c478ebef4f13b4842235445afc48049 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Handle "-psn_XXX" command line args on MacMorten Johan Sorvig2012-08-101-0/+4
| | | | | | | | | | | | Finder on Mac OS X sends a command line argument of the form -psn_0_3523420 when launching applications. Eat the argument like we do in Qt 4. Change-Id: I09db9dea035e62c0b816a833c9ad6fcd78f83735 Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com> Reviewed-by: Simo Fält <simo.falt@nokia.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* kms: Restore VT settings when crashedLaszlo Agocs2012-08-102-2/+29
| | | | | | | | | | This does the job of keeping the terminal keyboard working when the application segfaults but is somewhat unsafe because ioctl() is not async-signal safe. Change-Id: Ie6728a4252e18c29bba8f8308e6c00d4a1eb6a8e Reviewed-by: Elvis Lee <kwangwoong.lee@lge.com> Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* QtGlobal: (new) qEnvironmentVariableIs{Set,Empty}()Marc Mutz2012-08-092-0/+59
| | | | | | | | | | | | | These functions are a faster version of {,!}qgetenv().is{Null,Empty}(), a common pattern in Qt code. Their main advantage is that they don't need to allocate memory, so they can be used in noexcept functions, or dynamic initialisation of namespace-scope statics, because throwing in these contexts invokes std::terminate(). Change-Id: I651c5bd72f450b5d7df76590f8791572fe992af5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove code duplication in QStandardPaths implementationsDavid Faure2012-08-096-68/+20
| | | | | | | | Using the new getter to access the "test mode" setting. Change-Id: Id26a350cd3fab4bf2e5f58ba67bc7323f99c9cc3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Add bool QStandardPaths::isTestModeEnabled()David Faure2012-08-097-0/+35
| | | | | | | | | Library code might need to know this, e.g. when calling an external process, to give it the right configuration. (For instance when ksycoca code calls kbuildsycoca to recreate the DB at the right place). Change-Id: I343ddefff816586f9d391973c08ff1e1ad86bf0e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* OpenGL: Allow querying OpenGL extensions via the QOpenGLContextSean Harmer2012-08-093-0/+38
| | | | | Change-Id: Ia88470554bbfd2a56738dadfcafafe42a990382d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Use native handles for parent change check in QWindowsWindow.Miikka Heikkinen2012-08-091-13/+17
| | | | | | | | | | | | | QWindow::setParent() sets the parent to zero instead of the desired parent, if platform window has not yet been created for the parent. This caused QWindowsWindow::setParent() to skip setting the parent later, when correct window was specified, as the QWindow parent-child relationship hadn't changed. Fixed by changing the the check to use native handles instead. Task-number: QTBUG-26791 Change-Id: I292a1ddf746583a7268f2d07c20166995c0dd7d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Need to have the XI2 import to detect XI_TouchBeginMaskShawn Rutledge2012-08-091-0/+1
| | | | | | | | | | Followup to I5c925ae3e191244c7ab9415e4ba2fe49b93dd2af : touch was not actually working by default. A major symptom was getting double-clicks instead of clicks on buttons and such, making it quite hard to interact with anything. There are some problems remaining. Change-Id: I09fa5965036bac242ccc1f4db71f6d912445ca01 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Mark QElapsedTimer functions as Q_DECL_NOTHROWThiago Macieira2012-08-098-63/+63
| | | | | | | | | | | | | | | | | | All functions in QElapsedTimer are marked Q_DECL_NOTHROW. This code is often introduced in many places to deal with timeouts and doesn't need exception handlers. In particular, it's used in QMutex locking. In addition, mark QDateTime::currentMSecsSinceEpoch as nothrow, as it can't throw exceptions either and it is needed by the generic QElapsedTimer. Q{Date,Time}::current{Date,Time} operate on local time and run into at least one cancellation point, which we must consider throwing. And returning a QDateTime allocates memory. Change-Id: Id776c5ec831fc06d7419a9ff5442d9b35cff1a22 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add Q_DECL_NOTHROW to QRefCount.Thiago Macieira2012-08-091-8/+8
| | | | | | | | | For the same reason as the previous commit (about the atomic classes), mark these functions as never throwing an exception. Change-Id: Idf46e41b226f54cb8658416efdf985ca40dd2952 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Mark all atomic functions as Q_DECL_NOTHROWThiago Macieira2012-08-0912-313/+313
| | | | | | | | | | | | | | | | | | | | | | | | | Actually, only the "new" atomics are marked. The old implementation, based on qoldbasicatomic.h is unchanged, but should still work without a problem. The following configurations were tested and do work: - x86 64-bit - x86 32-bit - generic GCC - generic C++11 std::atomic - bootstrap - ARMv6 and 7 - MIPS - MSVC 2010 32-bit - MSVC 2010 64-bit The only two configurations untested are IA-64 and ARMv5. Except for MSVC, all configurations were tested with GCC 4.6 (MIPS and ARM) and 4.7 (x86 and generics). Change-Id: Iecbfeacd9d20b535453e91335165e9a221e0b47e Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add Q_DECL_NOTHROW to the atomic functionsThiago Macieira2012-08-092-56/+56
| | | | | | | | | | | These functions are inline (on most architectures) but they contain inline assembly which the compiler could not understand. In any case, if it decides not to inline them, it would need to generate exception handlers. Change-Id: If9d50793d715c51781e76d0a539da03a6d83e255 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Logging: mark qt_assert()/qt_assert_x()/qFatal() as nothrowMarc Mutz2012-08-094-7/+55
| | | | | | | | | | | | | | | | | | | | | | These functions are not supposed to return, not even by exception. qt_message() _can_ throw, but we're fine with the compiler calling std::terminate() then, since the backtrace will still include the assertion location. This behaviour is ensured by a new macro, QT_TERMINATE_ON_EXCEPTION, which expands to something like try { expr; } catch(...) { std::terminate(); } if the compiler doesn't support Q_DECL_NOEXCEPT (but maybe Q_DECL_NOTHROW), and to something like just expr; otherwise (including in the QT_NO_EXCEPTION case). The real macro preserves scopes in all cases, and aims to work even if <exception> isn't included in the TU it's used in, so is a little bit more complex than that. Change-Id: Ie6a2b7776e6aa77e57bd9aea6e184e5fa1cec81c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove unnecessary extra indentation in the EXPORT macrosThiago Macieira2012-08-091-23/+22
| | | | | Change-Id: I54585fa7e38ea1984018c5cbff9bc4626016bace Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Remove the Q_xxx_EXPORT macros of other modules from qglobal.hThiago Macieira2012-08-091-31/+0
| | | | | | | The macros have been moved to their respective modules. Change-Id: I653668b608cd3b79824a25b0e7b1c238330c0007 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Rename QMapData::free to destroyThiago Macieira2012-08-091-3/+3
| | | | | | | | | | | | | The convention for QMap is that "free" methods simply free memory and that "destroy" ones also run destructors of types affected. Since this function calls destroySubTree, it should be more properly called "destroy". This also gets rid of another function called simply "free" in our headers. Change-Id: I3fa621c78848ede33dd5b78428c704d0423ba4e7 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Rename QLinkedList::free to freeData for consistencyThiago Macieira2012-08-091-6/+6
| | | | | | | | | QLinkedList does use allocations in the .h, by way of operator new and operator delete. But for consistency with other classes, don't call our function free(). Change-Id: I9295f5945619ad4ea82fd1f7f55b34700c54e06a Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Rename QContiguousCache allocate and free functions to say "Data"Thiago Macieira2012-08-092-20/+20
| | | | | | | | | | | The important change is to use functions not called malloc and free. On some old systems or under some weird circumstances, they might be #defined to something different. More importantly, this allows us to quickly verify whether we're using the stdlib.h functions in our public headers. Change-Id: I66b963ac2bc75d64028c04542e62a929e4b36b19 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Remove use of ::free from qlist.hThiago Macieira2012-08-092-5/+13
| | | | | | | | | | | | | | | | | The memory is allocated in qlist.cpp, so it should be freed in qlist.cpp. Freeing it in qlist.cpp ties our hands about future improvements to the allocator. In addition, silence the warning by the too-smart-for-its-own-good GCC that we're trying to free a non-heap object: qlist.h:763:14: warning: attempt to free a non-heap object "QListData::shared_null" [-Wfree-nonheap-object] The warning is wrong. It should say "possibly" somewhere because GCC failed to account for all conditions in the path to free(). Change-Id: I34a6c16bba9a2197fc83eb3c7a63ae06fb25bf15 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Explained rectangle bounding in documentation.Leonard Lee2012-08-081-0/+1
| | | | | | Task-number: QTBUG-26756 Change-Id: Ifa56cbe249164e239f21c00fc31cd6ddd81705ad Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Explained degree unit in QPainter::rotate() function.Leonard Lee2012-08-081-1/+1
| | | | | | | Task-number: QTBUG-26757 Change-Id: I9a03480513819aefb78d914a7170fb4997181643 Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* statemachine: Really fix signal transition handling in multi-threaded setupKent Hansen2012-08-082-6/+27
| | | | | | | | | | | | | | | | | | | | | Commit f9a17d7f0f02f7af849afdf653a763ffdaf78a1b fixed it for the case where the sender object is in a different thread at transition setup time. However, it still didn't work if either the sender object or the state machine was moved to a different thread at some later time, before the machine was started. Therefore: Bite the sour grape and traverse all the machine's transitions when the machine is being started, registering those signal transitions whose sender objects are in other threads. This will increase the machine's startup time (proportional to the number of transitions), but at least it works in all known scenarios, meaning we don't have to document weird restrictions regarding the order in which the user's operations have to be done. Task-number: QTBUG-19789 Change-Id: I5f1dd1321994e49635f52be65cf56d2678ed1253 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* rename qt_module_config.prf => qt_module.prfOswald Buddenhagen2012-08-0812-12/+12
| | | | | | | this is more logical, following the qt_plugin and qt_tool scheme. Change-Id: Ib3b2abec6728cdab260e15128b1cd78e8e6f5d6a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Clarify how days are counted in QDateTime::daysTo documentation.Mitch Curtis2012-08-082-1/+22
| | | | | | | | | Mention that the days are counted as the amount of times midnight is reached between the start and end date. Task-number: QTBUG-26780 Change-Id: I22ff6c56b748ac968d6991e0be3e10905c0634bd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Q_DECL_NOTHROW: stronger and more widely available version of Q_DECL_NOEXCEPTMarc Mutz2012-08-072-4/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 1adca807 defined Q_DECL_NOEXCEPT to be the same as throw() for the Microsoft compiler. However, the two are not equivalent: - C++11 noexcept is defined to call std::terminate() if a noexcept function nevertheless encounters an exception. - MSVC throw() has essentially undefined behaviour in this situation: http://msdn.microsoft.com/en-us/library/wfa0edys%28v=vs.100%29 "Due to code optimizations that might be performed by the C++ compiler [...] if a function does throw an exception, the program may not execute correctly." So define two macros: 1. Q_DECL_NOEXCEPT/Q_DECL_NOEXCEPT_EXPR always have C++11 behaviour. This is expected to be the more efficient implementation if the function can actually throw. 2. Q_DECL_NOTHROW means that the function gives the nothrow guarantee. It is stronger than noexcept, but not all functions that can be marked Q_DECL_NOEXCEPT can be marked Q_DECL_NOTHROW. In general Q_DECL_NOTHROW functions need to use a try/catch block in order to prevent exceptions from leaving the functions, unless you can proove that none of the operations can throw. For the caller, both macros are equivalent: it can be relied on that no exception leaves the function. Change-Id: I32f822a82e06a31cb71d38db438387aee5ec3334 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Improve the QOpenGLExtensionMatcher classSean Harmer2012-08-072-50/+11
| | | | | | | | | | | | Using a QSet<QByteArray> internally means that checking for the presence of an extension no longer uses an O(N) search. This patch also allows users of this class to easily get a list of the supported extensions. Change-Id: I02194e5345573c47be0876f3ea6eb6b69a2ead81 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Add possibility to add OpenSSL, DBUS, MySQL path under WindowsAndreas Holzammer2012-08-075-0/+19
| | | | | | | | | | | Under Windows it's quite possible that OpenSSL, DBUS or MySQL is not installed into a central place. If -I and -L is passed at configure time, it is added to all targets, and if that path contained a conflicting header things would go wrong. Change-Id: Ic3338c49aa6eaa91b3abf5341e709ef604bf7aab Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* QtGui: collapse two qgetenv() on the same variableMarc Mutz2012-08-071-1/+2
| | | | | | | | | | Store the result in a temporary QByteArray and continue working with that one. Change-Id: I24bc243f0f3dfb37d840faf7592b3383bd37c7e2 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QUrl::idnWhiteList(): add QList::reserve() callMarc Mutz2012-08-071-2/+4
| | | | | | | | Avoids reallocation. Change-Id: I3238574590463596a797d237b066ef60214392a7 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QtNoDebug: remove special member functionsMarc Mutz2012-08-071-3/+0
| | | | | | | | These are better generated by the compiler. Change-Id: I5afa9fd17997c220622ed0e5990c33e52700840f Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Only emit the clicked() signal from views if the left button is used.Stephen Kelly2012-08-071-2/+3
| | | | | | | | | | | | This is consistent with QAbstractButton, QCalendarWidget, QDialogButtonBox and QGroupBox (ie, all other widgets with a clicked signal) Task-number: QTBUG-26105 Change-Id: Ieafe988b5c03216796b69a7cd70ac1a03fc12b0a Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Ensure that we return an invalid QTableWidgetItem when none is available.Stephen Kelly2012-08-071-1/+1
| | | | | | | Task-number: QTBUG-26195 Change-Id: Iede4f51770bd8c8eab3558137aaf7b1721f25a87 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* ifdef drivespec handling in relativeFilePath to windowsOswald Buddenhagen2012-08-071-9/+4
| | | | | | | on unix, the code wouldn't do anything except burning cycles anyway. Change-Id: I1c28b1a7014af93ca70a17e0bd669debad8003c2 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Properly manage window geometry in kmsLaszlo Agocs2012-08-072-4/+9
| | | | | | | | | | | If QWindow::setGeometry() is called before QWindow::create(), QKmsWindow::setGeometry() is not called at all. This is wrong because there is some special size restricting happening there which must never be skipped. Change-Id: I321632d4fdb327b0a75e6791c019b3f4c2793888 Reviewed-by: Elvis Lee <kwangwoong.lee@lge.com> Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* qdoc: Don't always add example .qdoc files to source listMartin Smith2012-08-071-3/+5
| | | | | | | | | When qdoc finds a .qdoc file in an exampledirs directory, it only adds it to the source list if it isn't already in the source list. This may be overkill, but it's safe. Change-Id: I2c5714c968f06e90f9b29b3a5481f80469e19ced Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
* Only use glXCreateContext if glXCreateContextAttribsARB did not succeed.Zeno Albisser2012-08-071-16/+13
| | | | | | | | | | | | If glXCreateContextAttribsARB does not succeed or is not available, we should fallback to using glXCreateContext. But we should not just create a context with glXCreateContext by default that is being thrown away if glXCreateContextAttribsARB succeeds. Otherwise glXMakeCurrent with context 0 might cause an unexpected context change when dealing with multiple contexts. Change-Id: I7627abbe2500b4006180653a1b3b074fe7aca1d3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Don't export QAtomicInt, it's all inlineThiago Macieira2012-08-071-1/+1
| | | | | | | | | | | Moreover, exporting it causes the horrible side-effect on Windows (with MSVC) that the compiler will not inline the functions, but instead will place indirect calls to the functions in QtCore DLL, even in release mode. For such a critical piece of code, inlining is necessary. Change-Id: Ib31c12f6bf8dc8ece1b51824716a480559753c24 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Add a T parameter to the memory barrier functions in atomics.Thiago Macieira2012-08-076-39/+49
| | | | | | | | This is so we can insert valgrind (helgrind) annotation macros. They require the actual address of the variable to work. Change-Id: I988f6a46385ad58143c53ad34b6cf0f58be2cdb8 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QMessageLogger: mark default ctor as constexpr, tooMarc Mutz2012-08-071-2/+2
| | | | | | Change-Id: I6f92f4a01e43dbe811b11b3e8d9b8a02a31463c5 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Avoid crashes when invalidating a proxy model filter.Stephen Kelly2012-08-071-3/+10
| | | | | | Task-number: QTBUG-26107 Change-Id: I2df7ae6402136570c8469d3251edae6ca8290f1f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>