summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fixes crash in bmp and ico image decodingEirik Aavitsland2015-03-132-7/+8
| | | | | | | | Fuzzing test revealed that for certain malformed bmp and ico files, the handler would segfault. Change-Id: I19d45145f31e7f808f7f6a1a1610270ea4159cbe Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fixes crash in gif image decoderEirik Aavitsland2015-03-131-0/+2
| | | | | | | | Fuzzing test revealed that for certain malformed gif files, qgifhandler would segfault. Change-Id: I5bb6f60e1c61849e0d8c735edc3869945e5331c1 Reviewed-by: Richard J. Moore <rich@kde.org>
* Remove #ifndef QT_NO_HTTP that does nothingAlbert Astals Cid2015-03-131-13/+1
| | | | | | | Change-Id: I9d6771e9da64e59f8a038dd3b506e6293fcb62c0 Reviewed-by: Jan Kundrát <jkt@kde.org> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Cocoa: Send mouse release as a right button when clicking right buttonAndy Shaw2015-03-131-0/+2
| | | | | | Task-number: QTBUG-43612 Change-Id: Id6c764be13527e6b15255b509b4d43b8fe1b54d8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Cocoa integration - invalid backing store on geometry updateTimur Pocheptsov2015-03-131-0/+2
| | | | | | | | | In case we skip flushing window events (while we're in setGeometry), backing store has to be invalidated, otherwise drawRect will use scaled CGImage. Change-Id: I26ff7083d7c702b4ff107eff235b2067eda540c2 Task-number: QTBUG-44313 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Revert adding dispatchLocker to QDBusConnection::connectAlbert Astals Cid2015-03-131-1/+0
| | | | | | | | | | This reverts 268cc1dc996ba943895f24c5ca915c2b406b6097 On further examination it has shown that even if it fixes one deadlock it is either creating some others or making existing ones happen more often Change-Id: I70068cf0b0435a5dc06d4ac77ea50d3ba2361d01 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Doc: Fix qmath documentationSergio Ahumada2015-03-121-0/+1
| | | | | | | | qmath.qdoc:206: warning: No such parameter 'radians' in qNextPowerOfTwo() qmath.qdoc:206: warning: No such parameter 'value' in qRadiansToDegrees() Change-Id: Ia1556a98801ab694716235cc50edcc9e7d2f33f0 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Core: fix crash in QCollator if ucol_open() failedLiang Qi2015-03-111-13/+30
| | | | | | | | | If ucol_open() failed, call back to QString::compare() implementation. Task-number: QTBUG-44796 Change-Id: I03446e5227e1dedac6c5f824ac6d74a494fc0ace Reviewed-by: Gergely Nagy <ngg@tresorit.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Clarify InputMethodHint documentationPaul Olav Tvete2015-03-111-1/+2
| | | | | | | | | | | The description of ImhHiddenText made it sound like it would change the echoMode of the input field. Task-number: QTBUG-38080 Change-Id: I379015b95e43b6eff181d51444c7e069728504ad Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com> Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* Windows Embedded: GetTickCount64 won't be available so just remove itAndy Shaw2015-03-111-8/+2
| | | | | | | | | | Since GetTickCount64 still relies on the usage of kernel32, then it will not find the function anyway as the library does not exist for Windows Embedded. Therefore it is best to remove it altogether to save time trying to locate something we know is not there. Change-Id: Id879382fdd0692fb9443231a405c0e28d9bcc328 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Workaround for programs depending on previous layout bugPaul Olav Tvete2015-03-111-0/+5
| | | | | | | | | | | | | | | | Change 2bfee10f made QDockAreaLayout respect the maximum size of the central widget. This broke some existing programs which would set sizePolicy to Fixed on a central widget without a sizeHint. This patch restores the old behaviour for the special case where there are no dock areas. It is highly unlikely that the intention in this case is to have a very small central widget with huge blank areas on either side. Task-number: QTBUG-43797 Change-Id: I1e1fb17204f72166da3b0b054a7777e8183604a7 Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
* Cocoa: Fix systray SVG icons.Morten Johan Sørvig2015-03-111-0/+4
| | | | | | | | Regression caused by f3699510. Task-number: QTBUG-44686 Change-Id: I546422a67d4da29fac196025b09bddcb45c1b641 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* [Android]: Ensure clicking on the arrow shows the popupAndy Shaw2015-03-111-0/+4
| | | | | | | | | | | This was a problem with editable comboboxes specifically as there is an edit field area which is separate to the arrow. Giving a valid rectangle for the arrow allows QComboBox to know that it was clicked on. Task-number: QTBUG-44931 Change-Id: Ie1d06a6631d6c7f5e813419a5e76f67ec9dcd7e8 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Avoid deadlock when suspending app at startupPaul Olav Tvete2015-03-111-1/+6
| | | | | | | | | | QWindowSystemInterface::flushWindowSystemEvents() is a synchronous call. This will cause a deadlock if the GUI thread is waiting for an OpenGL surface at the same time. Add deadlock protection to this case as well. Task-number: QTBUG-44721 Change-Id: Id26370f6e07011dbcd861617bf96f59e85837db6 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* Lock dispatchLock before the regular lockAlbert Astals Cid2015-03-111-0/+1
| | | | | | | | Fixes deadlock Task-number: QTBUG-44836 Change-Id: Ie6def2d1e9684f4272d8920cd19c5765eef5f7c9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QMimeDatabase: Fix magic rules with \tEike Ziller2015-03-101-0/+2
| | | | | | | | | \t was not interpreted as a tab character. Task-number: QTBUG-44884 Change-Id: I3c733e227fba7e5fd5153df0ae4d0431903bb104 Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Introduce qt_subtract_from_timeout to reduce code duplication.Daniel Teske2015-03-099-97/+49
| | | | | | | | | | | | | | | | | The same qt_timeout_value function was copied 5 times in qtbase's code, so provide a common implementation in QIoDevice that can be used by everyone. This commit also corrects the remaining time calculation in QProcess::waitForBytesWritten and QProcess::waitForFinished by using this new function. For QProcess::waitForFinished, if the process started within almost exactly the timeout time passed to waitForFinished, msecs - stopWatch.elapsed() would be -1, which is a special value. Change-Id: I7b76ee6bae695eafdd02e3db03e2ff1e23a7f40c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Revert "OS X: main window doesn't become key."Timur Pocheptsov2015-03-091-28/+0
| | | | | | | | | | | | This reverts commit da0c74550f0e8a21239896d6aead6e05f85eb695. The patch da0c74 unfortunately does not work well with QCocoaMenuBar's logic: it can happen that our selectNextKeyWindow chooses a Popup or another window with some 'unusual' flag as a key, but QCocoaMenuBar::updateMenuBarImmediately will return immediately, assuming that popup does not have a menu and there are no menu items to enable. Task-number: QTBUG-44369 Change-Id: I83cd2f6a62acd3a6ceb4d9dbf53ca42af67476d8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Upgrade PCRE to r1530Giuseppe D'Angelo2015-03-0631-6209/+7658
| | | | | | | | | | Include a couple of hard-to-backport fixes for stack/heap overflows and regressions from previous PCRE versions (cf. the changelog [1]) [1] http://vcs.pcre.org/viewvc/code/trunk/ChangeLog?view=markup Change-Id: I618c3633e9265ef1b9fd56b58e2c6c714335aae8 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Win QPA: Pass in the top level setting instead of relying on isTopLevel()Andy Shaw2015-03-062-6/+6
| | | | | | | | | | | When updateDropSite() is called then most of the time calling window()->isTopLevel() is enough. But in a case like while the window is being reparented it cannot be trusted. So we pass it as a variable so that it is possible to give it the correct information when it is being called. Task-number: QTBUG-39739 Change-Id: I77a7ceeaf78e89b1f65a10d60df86088b35e0fe5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Always clear QWindowPrivate::positionAutomatic in setFramePosition()Alexander Volkov2015-03-061-1/+1
| | | | | Change-Id: I3dd494eee6a133c05256cc1518853e6c5511f8b7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Improved Windows printer support and fixed crashes due to NULL devModeMike Kuta2015-03-064-7/+75
| | | | | | | | | | | | | | | | | | | | | With certain printer drivers, the PRINTER_INFO_2 can return NULL for the pDevMode member in the call to GetPrinter() as mentioned on MSDN: https://msdn.microsoft.com/en-us/library/windows/desktop/dd144911 In many places, Qt first checks that devMode isn't NULL before dereferencing it. In other places it does not (such as when it actually attempts to print in QWin32PrintEngine::begin()). Checking every dereference aside, most printer functionality is removed without access to the DEVMODE structure. This fix uses DocumentProperties() to get the DEVMODE information when the first method fails. [ChangeLog][QtPrintSupport][QPrinter][Windows] Improved Windows printer support and fixed crashes due to NULL devMode Task-number: QTBUG-44349 Task-number: QTBUG-43877 Task-number: QTBUG-2251 Change-Id: Iafa337055d967c70f2096dcde4cc9c8ca8a0d252 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Remove C++11 usage from NetworkManager bearer pluginAlex Blasche2015-03-051-1/+0
| | | | | Change-Id: Icac28ac11222a62636fdbe2cbdf289b7e24f9f20 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Avoid deadlock with two consecutive suspended notificationLiang Jian2015-03-051-0/+7
| | | | | | | | | | | | | According to our Android app test, sometimes we will receive two consecutive app suspended notifications. In the second app suspended notification QWindowSystemInterface::flushWindowSystemEvents() will deadlock due to the fact that the event dispatcher has been stopped in the first app suspended notification. This patch will simply return if we found the event dispatcher has been stopped in the beginning of app suspended notification. Change-Id: I15fa4a6a118510b866ff16061862f4bb8360cc9b Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Adjust wiki links to the new redirectSergio Ahumada2015-03-041-1/+1
| | | | | | | it looks nicer this way Change-Id: I872976bdef5f581187a758aa92b02e2f5f32b130 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Fix another crash when converting format of buffer-created QImageEirik Aavitsland2015-03-041-0/+8
| | | | | | | | | | | | | | | | | This continues 68762151dbf45fbb44e140ac2ad13dbe8d357352 When doing format conversion, the optimized inplace codepath did not check if the image data was external, i.e. if the QImage had been created by the constructor taking an existing external buffer. The previous commit fixed the readonly case. But in the case of the QImage constructor taking non-const uchar*, data will be read-write, but still external. This would of course crash if the converter tries to realloc it. Task-number: QTBUG-44610 Change-Id: I94d275d464e8af221682b538fc3e4897a59c061e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Call MoveFile() anyway if the delete failed because it did not existAndy Shaw2015-03-041-1/+1
| | | | | | | | Since the new filename might not yet exist and DeleteFile() will fail if the new file does not exist then MoveFile() should still be called. Change-Id: Id4576ade079ad8593f824b7100bb0d94aec1fa0a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Painting: Avoid endless loop for certain bezier curvesEirik Aavitsland2015-03-041-2/+2
| | | | | | | | | | If the coordinates were too close (at the limit of the number accuracy), the splitting algorithm in QBezier::shifted() would never finish. Ref. testcase in bugreport. Task-number: QTBUG-44674 Change-Id: I2a575cdc6284504ef5e3eb2b749857576fe433c3 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Fix drawing of background for multipage QTextTable cellsJoni Poikelin2015-03-021-8/+31
| | | | | | Task-number: QTBUG-31330 Change-Id: I0103919ee2864b7cd8bed41e6d6fe4ac5b84142e Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Register font's english name as alias when populating font databaseLiang Jian2015-02-271-5/+19
| | | | | | | | | | | | | | | Register font's english name as alias in the callback of EnumFontFamiliesEx() at the time QWindowsFontDatabase::populateFontDatabase() is being called. This will help us to resolve english font family name to its corresponding localized alias once windows font database has been populated. It will also fix an assertion in Chinese Windows. Task-number: QTBUG-44647 Change-Id: I265d93c16a1677a7f31ff56d60c24f6e90666419 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Replace old qt-project.org wiki with wiki.qt.ioSergio Ahumada2015-02-271-1/+1
| | | | | Change-Id: If6c05a5b1f60e97c64f3d6b64041a84c3af82964 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* 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 crash when converting format of QImage created from bufferEirik Aavitsland2015-02-261-1/+1
| | | | | | | | | | When doing format conversion, the optimized inplace codepath did not check if the image data was readonly, i.e. if the QImage had been created by the constructor taking an existing external buffer. Task-number: QTBUG-44610 Change-Id: I085ff8da427bc4ee392f548dffd2418b63148965 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.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>
* QtOpenGL: avoid crashing if creating a QGLContext sharing with the global ↵Giuseppe D'Angelo2015-02-241-1/+1
| | | | | | | | | | | | | | | | | | | | QOpenGLContext If one asks for the global OpenGL context via the right attribute, and then creates a QGLContext sharing with that context, Qt will create anoter, dummy QGLContext owned by the global context. At application shutdown, and specifically after ~QObject of QGuiApplication has run, the QObjectPrivate dpointer gets destroyed. That destroys the owning global QOpenGLContext, and therefore that dummy QGLContext as well. However, QGLContext dtor triggers a code path that accesses qApp as if it were still alive. That's not the case any more -- it has already been destroyed. So, introduce a check and avoid dereferencing NULL. Task-number: QTBUG-44621 Change-Id: Ic160ac99e9269db999e76229b1c7f8c53bd2be61 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Fix crash in QPainter::drawGlyphRun() when painter is not activeOlivier Blin2015-02-241-0/+5
| | | | | Change-Id: I24f52cf1db300b8a6d0a4cb19fc6c74c41e00dbc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Fix a division by zero when processing malformed BMP files.Richard J. Moore2015-02-241-0/+8
| | | | | | | | | | This fixes a division by 0 when processing a maliciously crafted BMP file. No impact beyond DoS. Task-number: QTBUG-44547 Change-Id: Ifcded2c0aa712e90d23e6b3969af0ec3add53973 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* 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>
* Doc: mod to correct OpenGL link errorNico Vertriest2015-02-241-1/+1
| | | | | | Task-number: QTBUG-43810 Change-Id: I691cdeced3f857e2dcf9bda5d65207065c454635 Reviewed-by: Martin Smith <martin.smith@digia.com>
* QWidgetWindow check valid widget geometryJørgen Lind2015-02-241-1/+1
| | | | | | | | | | before marking the backingstore as dirty. The QWidgetBackingstore has an assert that the region or the rect passed in is not empty, hence its programming error not to check before calling this function. Task-number: QTBUG-43489 Change-Id: Ic67fb6ca7959466e1758ce91827cd4b8acdf73fc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Fix fusion style QPushButton icon on HiDPI modeMarko Kangas2015-02-241-4/+6
| | | | | | Change-Id: Ie05012266abe52bc33bb9c2e19c93353cac3307f Task-number: QTBUG-44502 Reviewed-by: Jens Bache-Wiig <jensbw@gmail.com>
* Merge "Merge remote-tracking branch 'origin/5.4.1' into 5.4" into ↵Thiago Macieira2015-02-244-1/+13
|\ | | | | | | refs/staging/5.4
| * Merge remote-tracking branch 'origin/5.4.1' into 5.4Frederik Gladhorn2015-02-184-1/+13
| |\ | | | | | | | | | Change-Id: I400eb311c5c7f821ddbf3a52e5b101e7a8d50e20
| | * fix non-git shadow buildsv5.4.1Oswald Buddenhagen2015-02-162-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the qt headers live in the source dir in this configuration. instead of hard-coding the path in the project file, use the correct module variable. this requires harfbuzz-ng to be built after corelib. Change-Id: If1b64b59a0939d3b5190331fcf70da566d4eeedd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Provide a native interface object from linuxfbLaszlo Agocs2015-02-112-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent code in font support started to use the platformNativeInterface() return value without checking for null. Most platform plugins, with the notable exception of linuxfb and the minimal ones, provide an object. Start providing a dummy object from linuxfb too. This is more sensible then adding null checks everywhere. This will prevent crashing with linuxfb on startup. Task-number: QTBUG-44414 Change-Id: I48912132e1f8ad52e2a94c3d765dacc7b16f309a Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.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>