summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* qopenwfdscreen.h: remove unused #includeMarc Mutz2019-05-141-1/+0
| | | | | Change-Id: Ia02c9d5a468bb97f11e4c431eb36b4ce3f5cf1b4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* GLX convenience: fix typoGiuseppe D'Angelo2019-05-131-2/+2
| | | | | | | | The code meant to extract GLX_SAMPLE_BUFFERS_ARB, not GLX_SAMPLES_ARB, which is read a few lines below. Change-Id: Id50a1863cab56ed6084d4a2359a956a9db1222fa Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* QPointer: fix swap()Giuseppe D'Angelo2019-05-131-1/+5
| | | | | | | | | Make it noexcept and add an overload as a free function. [ChangeLog][QtCore][QPointer] Added a free swap function. Change-Id: I50744b9bae6a52db71b2da39e310619b3a0d6510 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* qmake: replace QLinkedList with std::listMarc Mutz2019-05-135-15/+11
| | | | | | | | | | | | | | | | | | | This is in preparation of deprecating QLinkedList. There is but one substantial change: Instead of copying the linked list, we move it now, and instead of copying items between these two lists, we use std::list::splice(), which just relinks nodes. It is a bit surprising that the comment on the ProValueMapStack suggests references into the container must remain stable, and then some code changes addresses by making copies of the elements. This was probably a bug waiting to manifest itself. Since nothing else in qmake is using QLinkedList now, remove qlinkedlist.o from the qmake build. Change-Id: I08a5b0661466bf50ad8f9f8abf58bc801aef4ddc Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Handle missing enum value in testFrederik Gladhorn2019-05-131-0/+1
| | | | | Change-Id: I39ad53686b45a79105ccfd9938d79518e26dd5d5 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* QTableView: don't convert QSet to QList just to iterate over itMarc Mutz2019-05-132-8/+6
| | | | | | | | | | | | Both in drawAndClipSpans(), as well as callee QSpanCollection::spansInRect(), a QSet is used to ensure uniqueness of elements. In both cases, the QSet is converted to QList, and the list is iterated over. Just iterate over the QSet directly... Change-Id: I8c7d17246a3cf836659026bfeadb987f37e476bb Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* qmake: use std names on a linked listMarc Mutz2019-05-135-25/+25
| | | | | | | | This is preparation of moving from QLinkedList to std::list, which is in preparation of deprecating QLinkedList. Change-Id: Ief259bc8c7178be5ca04812c6890cf65d86c069d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge remote-tracking branch 'origin/5.13' into devLiang Qi2019-05-13108-4047/+4750
|\ | | | | | | | | | | | | Conflicts: src/corelib/tools/qstring.cpp Change-Id: I81dbf90fc936c9bf08197baefa071117bddb1c63
| * Merge "Merge remote-tracking branch 'origin/5.12' into 5.13" into ↵Liang Qi2019-05-0955-3881/+4506
| |\ | | | | | | | | | refs/staging/5.13
| | * Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-05-0955-3881/+4506
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qlocale_data_p.h (Regenerated by running the scripts in util/local_database/) src/gui/opengl/qopengltextureuploader.cpp Done-With: Edward Welbourne <edward.welbourne@qt.io> Done-With: Allan Sandfeld Jensen <allan.jensen@qt.io> Change-Id: I12df7f066ed0a25eb109f61c4b8d8dea63b683e2
| | | * Define Q_OS_WINDOWS, make it an alias to Q_OS_WINSergio Martins2019-05-082-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As seen in several occasions, both in user code and in Qt proper, people make these mistakes. What makes it harder to spot is that it doesn't look like a typo, and feels natural (natural as Q_OS_LINUX instead of Q_OS_LIN feels). There's been a P1 in qtdeclarative/ and currently there's a Q_OS_WINDOWS usage in qtwebengine. This is a recurring problem, no matter how much people test and review these errors will happen, so the alias is justified. Change-Id: If6943b52e17f0c8b238c36bb1f7834802123f12a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Fix integer overflows in QDeadlineTimerKonstantin Shegunov2019-05-0810-66/+500
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the deadline is far in the future, the conversions to nanoseconds or internal arithmetic may overflow and give an invalid object, thus the deadline may end up in the past. Added a test to the testlib selftest for sleep. [ChangeLog][QtCore][QDeadlineTimer] Fixed integer overflows leading to immediate timeouts. Task-number: QTBUG-69750 Change-Id: I9814eccdf9f9b3add9ca66ec3e27e10cd5ad54a8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * WinRT: Fix crash in native socket engine during closeMårten Nordheim2019-05-081-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure "this" still exists when we're done sending the readNotification. The crash manifested itself when connecting to certain websites as they would reply with status 403, then close the connection. On our end we would then handle this "remote host closed" followed by handling the data we received. The http code handles the data successfully and sees we are done and there is nothing more to do, so it closes the connection. Which leads to closing QAbstractSocket, which closes native socket again and then deletes it. Fixes: QTBUG-75620 Change-Id: I233c67f359aa8234f1a2c4ea9463108b08c9165f Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | | * Windows: Add debug output for message WM_DPICHANGEDFriedemann Kleint2019-05-081-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add it to the name lookup and add verbose formatting to the debug operator. Task-number: QTBUG-73014 Change-Id: I31ee31bc28ef563fdbc0adedcea03546ced5faad Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | | * Fix possible endless loop when stroking curvesEirik Aavitsland2019-05-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bezier shifting algorithm compared coordinates exactly, and so could end up in an endless loop when values were at the edge of the number resolution. Fix by using fuzzy comparison instead. Fixes: QTBUG-75522 Change-Id: I61346edbd87389f66965a906ac337fc1f5300e5c Reviewed-by: Robert Loehning <robert.loehning@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * macOS: Deliver and handle screen change unconditionallyTor Arne Vestbø2019-05-081-17/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't rely on the previous screen and current screen to accurately reflect whether or not the window has been moved from one screen to another, or if the window just stayed on the same screen but the screen was reconfigured by macOS. The reasons for this are many-fold, but include factors such as Qt using the screen of the top level window to resolve the screen of the child windows, and AppKit delivering screen change events in an order that makes things harder to track. The result is that we need to always send screen change events, for all windows, including child windows, and we also need to restart the display link by re-requesting an update request if needed, so that child windows that are running animations will continue to animate on the new screen. Change-Id: I0b87849c41323e92c08f5115842be067fa8f8490 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | | * macOS: Always respond to cursorUpdate by applying custom cursor if setTor Arne Vestbø2019-05-081-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling super will push the default arrow cursor, so we should only do that if our own cursor has been unset. Change-Id: I71d8934e7eab2b15e150730e2282e7063ada305a Fixes: QTBUG-75552 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | | * qmake: Document DESTDIR deficienciesKai Koehne2019-05-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-75261 Change-Id: I8d0635a914785171cdee1bf691f773d4c356c6c1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| | | * Windows QPA: Fix over-large transparent tooltipsFriedemann Kleint2019-05-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting transparency (WS_EX_LAYERED) causes a WM_PAINT to be sent to the invisible windows, which causes a resize to the default size (640x480) to be sent from QGuiApplicationPrivate::processExposeEvent(). Suppress these messages. Fixes: QTBUG-75455 Change-Id: Idc540aa7f9bf0047e78ec7c27db260940483f7c4 Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
| | | * macOS: Guard backingstore composeAndFlush with QT_NO_OPENGLTor Arne Vestbø2019-05-072-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-75612 Change-Id: I0e90a84697c1eb055c4150f2519829977fce7244 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | | * macOS: don’t crash when wrapping foreign viewsMorten Johan Sørvig2019-05-071-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | window.contentView can be of any NSView subclass. Get to the QCocoaWindow via QCocoaNSWindow instead. Change-Id: I8c761fd22e6078b075d8dd035ad767b9e4cb6da2 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | | * QWidgetTextControl: Emit cursorPositionChanged() when handling IM eventVova Mshanetskiy2019-05-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWidgetTextControl and consequently QTextEdit did not emit cursorPositionChanged() signal when cursor position was changed by a QInputMethodEvent with a QInputMethodEvent::Selection attribute. This is especially important on Android because QAndroidInputContext uses such events extensively to move the cursor and also relies on cursorPositionChanged() signal being emitted by the focus object. If the signal is not emitted, QAndroidInputContext does not notify the virtual keyboard about cursor position change which results in various glitches. Change-Id: I7edd141258c483e6f103adcd6e40049b49c13387 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| | | * macOS: Move off deprecated handleFrameStrutMouseEvent APITor Arne Vestbø2019-05-071-3/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Id95c096700a8bfa733d8620064c2a37eb19cc3db Fixes: QTBUG-72741 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | | * Fix compilation of tst_qaccessibilitylinuxFrederik Gladhorn2019-05-072-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Note that the test is still disabled, but this is needed in any case. Change-Id: Ib7523ba800b94c32690c1bd09b23fc2078c71d4e Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| | | * Accessibility: Improve handling of read-only stateFrederik Gladhorn2019-05-076-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have been rather sloppy in how read-only versus editable is handled. According to the definition, editable signifies that in principle a widget allows the user to change its text. Read-only means that this ability is (currently) disabled. Task-number: QTBUG-75002 Change-Id: I5d71843abcdaac52f4a60a1abcac2604341f6c96 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| | | * Add an ID for recognition of UGEE tabletsDmitry Kazakov2019-05-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I2228ee9d53aa23a2d2cd9970a363d8424e744093 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| | | * Fix swizzling when rendering QPainter on QOpenGLWidget with AngleDmitry Kazakov2019-05-071-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenGLES specification does not support GL_TEXTURE_SWIZZLE_RGBA, it supports only per-channel calls. And since Qt supports QpenGLES, it should use the latter approach only. The regression was introduced in Qt 5.12 by commit ede3791df8330ed8daae6667d025ad40219a9f5f Task-number: QTBUG-74968 Change-Id: I9c531b248715992fb30df6af95dfa605e2ee2a25 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Fix generation of Leave events when using tablet devicesDmitry Kazakov2019-05-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When both mouse and tablet events are handled by QWindowsPointerHandler, m_currentWindow variable is shared among the two event streams, therefore each stream should ensure it does equivalent operations, when changing it. Here we should subscribe to the Leave events, when we emit Enter event from the inside of the tablet events flow. Without whis subscription, the cursor may stuck in "resize" state when crossing the window's frame multiple times. Change-Id: I88df4a42ae86243e10ecd4a4cedf87639c96d169 Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
| | | * Update locale data to CLDR v35.1Edward Welbourne2019-05-073-3629/+3651
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The formatting of times in Norwegian has reverted to using dots in place of colons, as it did before v31 (commit 82deb0ad1), so reverted the tests to their state before that. Change-Id: I8a09ce253731bb0f0f3caca117f06ad568940a81 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| | | * Update cldr2qlocalexml.py's claimed CLDR version supportEdward Welbourne2019-05-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was up to date with v34 (and seems to cope with v35.1) but only clained support for v29. Change-Id: I686cae1977824a4deec4633f19604b91061fe78a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | | * Correct and expand support for CLDR's date/time format stringsEdward Welbourne2019-05-071-12/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our conversion from CLDR's format to our own was missing some things it could support sensibly, and some it could do better than ignore or treat as literal, while mis-handling the 'E'-based formats for day names. At least in CLDR v34 this doesn't actually make any difference (on regenerating our locale data, the only change is the date of generation). Task-number: QTBUG-70516 Change-Id: I9d27b9bf24afd168c2f8a5258143d3d695bca0ad Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | | * qmake: Distinguish local header files by directory and nameMatthias Doerfel2019-05-071-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Information about header files is cached by qmake. The key is the filename of the #include directive. For system includes (<stdio.h>) this is unique, according to the search order in INCLUDE_PATH. For local includes, given as "foo.h", there may be name collisions. Usually a compiler first searches in the directory of the current file (stored in the sourceDir variable), and only in case of a miss the INCLUDE_PATH is considered. The dependency generation now distinguishes local header files by their full relative path. This is implemented by forcing the use of the full relative path as key into the SourceFiles data structure if the flag try_local is set. Change-Id: Ifd75325b53496824054595f7fc98d71bbd9d8aa6 Fixes: QTBUG-72383 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | | * Fix QTextEngine::shapeText casing of surrogate pairsJüri Valdmann2019-05-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The high part was not copied to output. Fixes: QTBUG-75559 Change-Id: I9350e52d256510f52b3fcc0015bf879d2c609532 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | | * Use "monospace" as fallback system FixedFont in KDE theme; loggingShawn Rutledge2019-05-074-35/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also de-duplicate the "monospace" string in qgenericunixthemes.cpp, and add tst_QFontDatabase::systemFixedFont() to verify that QFontDatabase::systemFont(QFontDatabase::FixedFont) really returns a monospace font across platforms. Replace commented-out qDebug()s with qt.text.font.match and qt.text.font.db logging categories to troubleshoot when the test fails (among other uses). Add qt.qpa.fonts logging category to unix themes to show default system and fixed fonts (font engines on other platforms are already using this category). Fixes: QTBUG-54623 Change-Id: I2aa62b8c783d9ddb591a5e06e8df85c4af5bcb0c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | | * Document how to use CMake on Qt Core, Qt GUI's central pagesKai Koehne2019-05-0710-93/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add documentation on how to use a module from CMake, alongside the existing documentation about qmake. Separate generic info from module-specific examples, to make it possible to use one include file in all modules. While at it, also remove the mentioning of the central include; it is not something we should actively advocate anymore. Instead, the documentation of every class gives the correct include to use. Task-number: QTBUG-73058 Change-Id: I6b3c0e5ea218dd9c06a491c8fb799a7fcf42dd92 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| | | * Android: Fix x86_64 linkingBogDan Vatra2019-05-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | x86_64 libs are located in ANDROID_PLATFORM_ROOT_PATH/usr/lib64 not in ANDROID_PLATFORM_ROOT_PATH/usr/lib . Fixes: QTBUG-47672 Change-Id: Ia1f74f7c2a30b276b95fd0e7dcf8370d739e3c41 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * | | Fix: style sheet styling of background of triangular QTabWidget tabsEirik Aavitsland2019-05-091-2/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | The triangular tab shape is not reproducible with setting style border options, so it should be painted with the usual code path, also when a custom background has been set. Fixes: QTBUG-72096 Change-Id: I7bc1c0579386b8ea7266ce6456534c2519d9addf Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
| * | Doc: Document the c++2a CONFIG valueJoerg Bornemann2019-05-081-0/+3
| | | | | | | | | | | | | | | Change-Id: Ia4d84ac141b6fb27b244dfb8272b8039e337a9e4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | Doc: replace even more null/0/nullptr with \nullptr macroChristian Ehrlicher2019-05-0842-158/+138
| | | | | | | | | | | | | | | | | | | | | | | | Try to replace all wordings like '.. to 0' with '.. to \nullptr'. Also checked for 'null pointer' and similar. Change-Id: I73341f59ba51e0798e816a8b1a532c7c7374b74a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * | Fetch stylus button remapping from WinTab driverDmitry Kazakov2019-05-082-1/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The user can remap the stylus buttons using tablet driver settings. This information is available to the application via CSR_SYSBTNMAP WinTab feature. We should fetch this information every time the stylus gets into proximity, because the user can change these settings on the fly. Change-Id: Idc839905c3485179d782814f78fa862fd4a99127 Reviewed-by: Andre de la Rocha <andre.rocha@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | wasm: add fixedPitch fontLorn Potter2019-05-078-5/+28
| | | | | | | | | | | | | | | | | | | | | | | | Also define our default font so as to return something we actually have Task-number: QTBUG-75587 Change-Id: I26e3c62921d369c3017af9796c0a20f7ac06d07c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | QSharedPointer/QWeakPointer: fix swap()Giuseppe D'Angelo2019-05-111-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | Do not specialize std::swap, just add swap in Qt's namespace. Also add swap() for QWeakPointer, and sprinkle noexcept. Change-Id: Ifb06c214f1865d42f3f2cddf5f980aede6bde185 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Add qurlquery.cpp to the bootstrap libraryUlf Hermann2019-05-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This amends change 587bdd144b7e574e57f17167808774fa9783ee78. As we have added QUrl we should also add QUrlQuery because the former uses the latter. Change-Id: Iab3b0cb91ef65e673c6c2db4c30fad5660ff30fd Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Deprecate QQueue::swap(i, j)Lars Knoll2019-05-101-1/+1
| | | | | | | | | | | | | | | | | | | | | QList::swapItemsAt() is the replacement. Change-Id: Id0f194f9b63fd34c612f15e7952c33564f90120c Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Add support for /etc/TZ as default value for $TZEdward Welbourne2019-05-101-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is used by uClibc, at least. [ChangeLog][QtCore][QTimeZone] The TZDB back-end now recognizes the contents of /etc/TZ as a fall-back for $TZ (as used by uClibc). Fixes: QTBUG-75565 Change-Id: I3067e2d023cf30a85633575b5d7dc0ee3ec36927 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Support POSIX rules as $TZ valuesEdward Welbourne2019-05-102-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The TZ environment variable can validly contain a POSIX rule, rather than an IANA ID, as described here: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03 However, if TZ were set to such a value, leading to it being used as systemTimeZoneId(), it would be passed to QTzTimeZonePrivate::init(), which is a no-op unless it manages to open a zoneinfo/ file with the given ianaId as name. When the environment variable doesn't name a zoneinfo/ file, we would thus get an invalid time-zone. We can, instead, check whether the ianaId looks like a valid POSIX rule and, if it does, use it as m_posixRule, enabling us to correctly handle this case. Tweak parsing of POSIX rules so that a zone using name "UTC" or "GMT" with an offset other than 0 will be rejected as invalid. This avoids parsing a zone name such as "GMT+17" or "UTC+00:01" as a POSIX rule, where it should be understood as an offset from UTC (and only certain well-established offsets are supported). Added two test-cases to tst_QTimeZone::tzTest() for validity of a POSIX zone value - a simple one constructed during discussion of the bug, the other taken from an example in: http://leaf.sourceforge.net/doc/buci-tz3.html Task-number: QTBUG-75565 Change-Id: Ia5cb1cc56b13b0f6b56258e48be98d04d909e32a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Granularize blacklist of qsslsocket for WindowsMårten Nordheim2019-05-101-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | Using the information from grafana we can unblacklist all the things which are consistently passing. Change-Id: I79917ca9c40e1df2dab46bb54cc0a2bd4a1a4621 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Granularize blacklist of qhttpsocketengine for WindowsMårten Nordheim2019-05-101-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Using the information from grafana we can unblacklist all the things which are consistently passing. Change-Id: I3676d9cb5f9167039c3d1963521fa85785210f7c Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Granularize blacklist of platformsocketengine for WindowsMårten Nordheim2019-05-101-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Using the information from grafana we can unblacklist all the things which are consistently passing. Change-Id: If04963cd5f9a53ee2293d596f9111ebcb1add532 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | QNetworkStatusMonitor - make it always enabled on DarwinTimur Pocheptsov2019-05-102-28/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Also undo changes in setNetworkAccessible and setConfiguration since they introduced a change in behavior, which results in auto-test failing. Change-Id: I5d74c47338bff8f964ba2e27256902c79303e00f Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>