Commit Graph

34376 Commits

Author SHA1 Message Date
Timur Pocheptsov
306c32f50e Fix out of bounds reads in qdnslookup_unix
When the response from res_nquery is too big for the buffer used to receive it
(of size PACKETSZ, a mere 512 bytes), the returned responseLength is the
size of the data that would have been delivered, had there been enough space.
Trying to process all of the data, including what wasn't delivered, leads to
reading past the end of the buffer, which either causes a crash or leads to
rubbish (from the stack) in the resulting QDnsRecords.  Easy to reproduce
using many long TXT records.

Replace the array with a QVarLengthArray; when the response is big, resize()
and retry, so as to actually get all of the data, so that we can process
it all. A follow-up patch will fix the case when even the second call/resize
buffer is not enough and we have to use TCP.

Task-number: QTBUG-64742
Change-Id: I173beb531e11a3828fd9c97f437afc192766035e
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-12-01 15:05:41 +00:00
Alexander Volkov
fbda8acc92 QFutureWatcher: Use nullptr as a default value in constructor
... to make user code buildable with gcc [-Werror=zero-as-null-pointer-constant].

Change-Id: I309953acd7154511660302aa9826410276cfe41b
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-12-01 10:15:40 +00:00
Andy Shaw
11a2e0aa2d Cocoa: Ensure menus for a dialog's menubar are validated correctly
Although the items were enabled for a dialog's menubar they were not
appearing as such because Cocoa will query the menu item's target to see
if it has a worksWhenModal selector. Therefore to ensure that the menu
item will be enabled, we need to add this selector to our delegate and
return YES from it when the window for the menubar is the dialog.

Task-number: QTBUG-44584
Change-Id: Ic62dc027d563069d2f5c2b7bf9810184bd76de39
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2017-12-01 10:11:18 +00:00
Kimmo Ollila
de250dd22c Add EGLFS integration plugin for Qualcomm msm8996au board
Change-Id: I5bed1fd690daa72492e7ec5f24e80198a2592986
Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-12-01 10:07:20 +00:00
Kimmo Ollila
7b73d455ee Add mkspec for INTEGRITY Qualcomm s820 MSM8996AU
Change-Id: Ia3983594d9295ae858efe2289c296cfcc2fe1b78
Reviewed-by: Rolland Dudemaine <rolland@ghs.com>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2017-12-01 10:07:12 +00:00
Kimmo Ollila
f4498db196 Add configure test for INTEGRITY EGLFS openWFD integration plugin
Change-Id: I846f9e555df4f64097b5634707515d45c13a521c
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-12-01 10:07:04 +00:00
Friedemann Kleint
92cd3bfa2e macOS: Blacklist: tst_QPropertyAnimation::startWithoutStartValue()
Task-number: QTBUG-64108
Change-Id: Id60a9a1bfede9cbe90f378d131a331d726acfdae
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
2017-12-01 09:54:00 +00:00
Friedemann Kleint
6d09db53f7 macOS: Blacklist tst_QPauseAnimation::noTimerUpdates()
Task-number: QTBUG-64107
Change-Id: Ie77d2d2525e79fb7e17f1a69d15ef40982f9242d
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
2017-12-01 09:53:58 +00:00
Friedemann Kleint
bfef7d1224 tests/auto/auto.pro: Use correct null device for DBUS check
A mysterious file c:\dev\null appeared when running the auto tests on
Windows. Fix by using QMAKE_SYSTEM_NULL_DEVICE.
Amends 5f3529be32.

Change-Id: I0224a9ccd61c4f10b2ddb8f8d690e1849aa88d8a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-12-01 09:53:07 +00:00
Friedemann Kleint
0ebf0cfb6f Blacklist tst_QSplitter::replaceWidget(visible, not collapsed) for Linux
The test is flaky on Linux.

Task-number: QTBUG-64639
Change-Id: Iec56ebce4f656f52187b34c8f655b137e41c3d17
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2017-12-01 09:53:01 +00:00
Eskil Abrahamsen Blomfeldt
153311706c macOS/iOS: Fix garbled text under some conditions
There seems to be an issue in CoreText which may cause an existing
font descriptor to give unreliable results if it refers to one of
the system theme fonts. Since we do not know all function calls
or events that may trigger this bug, the safe route is to always
create fresh font descriptors when creating fonts for these
descriptors. The impact on performance should be small, as Qt has
its own internal caches.

[ChangeLog][macOS/iOS][Text] Fixed an issue where text using
one of the system theme fonts would under certain circumstances
display random glyphs.

Task-number: QTBUG-63476
Change-Id: I9e9b253018c63976345eec1439a6b78de2cab869
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2017-12-01 07:55:47 +00:00
Friedemann Kleint
673762b02e qwindowsmime.cpp: Fix clazy -Wclazy-container-anti-pattern
qwindowsmime.cpp(1267,10):  warning: allocating an unneeded temporary container [-Wclazy-container-anti-pattern]
qwindowsmime.cpp(1274,14):  warning: allocating an unneeded temporary container [-Wclazy-container-anti-pattern]
qwindowsmime.cpp(1383,10):  warning: allocating an unneeded temporary container [-Wclazy-container-anti-pattern]
qwindowsmime.cpp(1429,16):  warning: allocating an unneeded temporary container [-Wclazy-container-anti-pattern]
qwindowsmime.cpp(1450,20):  warning: allocating an unneeded temporary container [-Wclazy-container-anti-pattern]

Change-Id: I9188a0478b4be0c5c8f064578bbe027e33b67b89
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Miguel Costa <miguel.costa@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2017-12-01 07:27:15 +00:00
Friedemann Kleint
1f1f3a2b88 Fix -Wclazy-qstring-arg in Windows code
plugin\qlibrary_win.cpp(119,55):  warning: Use multi-arg instead [-Wclazy-qstring-arg]
plugin\qlibrary_win.cpp(155,55):  warning: Use multi-arg instead [-Wclazy-qstring-arg]
plugin\qlibrary_win.cpp(168,55):  warning: Use multi-arg instead [-Wclazy-qstring-arg]
socket\qlocalserver_win.cpp(228,61):  warning: Use multi-arg instead [-Wclazy-qstring-arg]

Change-Id: I0feadd3a5cce5ac2ba09630a38b867981d48a391
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-12-01 07:27:13 +00:00
Friedemann Kleint
155f954d99 Fix -Wclazy-connect-not-normalized in Windows code
qwindowsxpstyle.cpp(289,35):  warning: Signature is not normalized. Use void* instead of void * [-Wclazy-connect-not-normalized]
qwindowsxpstyle.cpp(292,35):  warning: Signature is not normalized. Use void* instead of void * [-Wclazy-connect-not-normalized]

Change-Id: I773530452c0837c5066f9174c25ae37e57086e76
Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
2017-11-30 20:50:46 +00:00
Laurent Montel
0fe3ff5c51 PrintSupport: modernize connection signal/slot
Change-Id: I6e482cd9503e96cc43ead21122d3690cdb18151c
Reviewed-by: David Faure <david.faure@kdab.com>
2017-11-30 20:40:21 +00:00
Laurent Montel
6a3f41aa46 Printsupport: not necessary to check pointer before to delete it
Change-Id: Ib2a7823224c45b6e9110016b2f5756e1b2fd8f3c
Reviewed-by: David Faure <david.faure@kdab.com>
2017-11-30 20:40:18 +00:00
Laurent Montel
40192995a5 PrintSupport: convert 0 with nullptr (c++11)
Change-Id: I35a8022c78427c9b4d4a9d9941770d22c36c3be8
Reviewed-by: David Faure <david.faure@kdab.com>
2017-11-30 20:40:13 +00:00
Oswald Buddenhagen
8dfcc3b023 configure: reset *_LIBS when *_LIBS_{DEBUG|RELEASE} are specified
it could be somewhat surprising that specifying variant-specific libs
would not clear the common libs, so do that. of course, the default
for the common libs could theoretically contain common deps of the
variant-specific libs, in which case clearing them would be surprising
in turn - luckily, we have no such case.

Change-Id: Ifca08b9e1949c6a0cefed6931ade4021927d7c90
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-11-30 20:25:14 +00:00
Oswald Buddenhagen
26e9a6a514 configure: make *_LIBS_{DEBUG|RELEASE} always work
... and not only when the source explicitly specifies build variants.

Change-Id: Iac6c8fda8f431d5fb50fada8338d1b660ab040d7
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-11-30 20:25:08 +00:00
Oswald Buddenhagen
79a068c396 configure: fix over-quoting in library exporting
unlike for the other fields, we forgot to eval() the values of the
build-specific library values, leading to over-quoting of values which
require any quoting at all.

amends c0cc50520.

Task-number: QTBUG-62521
Change-Id: I4dfce31040dd09248d3f9dd4294f7fb147c13bdd
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-11-30 20:25:04 +00:00
Oswald Buddenhagen
0fbf78250e configure: fix processing of *_LIBS_{DEBUG|RELEASE}= args
qtConfLibrary_inline() used to set $${1}.builds.$${b}.libs, while
everything else assumed no such .libs suffix. fix the former.

amends 9172143f52.

Task-number: QTBUG-61431
Started-by: Konstantin Ritt <ritt.ks@gmail.com>
Change-Id: I0bd81591c46266d81baa9c12315411183bbc7a63
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-11-30 20:25:00 +00:00
Oswald Buddenhagen
6c75857c20 configure: mention quoting requirements in the help text
Change-Id: Id79548b8458dfa25fef17cb25688738bb719e7c5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-11-30 20:24:55 +00:00
Oswald Buddenhagen
0f1b8fd2dc work around flex bug
flex emits code using isatty(), but fails to include the required
unistd.h. we can work around it by including the header ourselves.

Task-number: QTBUG-64771
Change-Id: I05313eeb79f7a0e25365dee5f05a0142f87209ae
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-11-30 20:24:39 +00:00
Filipe Azevedo
d80fde62ed Fix broken QNAM::networkAccessible()
When switching on/off multiple time the wifi (mainly, but not only) on
ios/macos the QNAM may wrongly stay on a NotAccessible state while the
configuration is Active.
This change make sure the QNAM::networkAccessible() is correctly
reporting the accessibility.

Task-number: QTBUG-49751
Task-number: QTBUG-58275
Task-number: QTBUG-60366
Change-Id: I238ab32030fbaa8072cce341db8da6bcfc346035
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-11-30 16:03:48 +00:00
Tor Arne Vestbø
1a55c92933 iOS: Compute screen available geometry based on safe area insets
In addition to the (deprecated) applicationFrame property, we
base the available geometry on the root view's safe area, which
also takes into account system-reserved areas on iPhone X, and
the screen's bezel in the case of tvOS.

Change-Id: I252d960a0e486dd0c7e30843f88c0bf5684feb24
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-11-30 15:59:20 +00:00
Eskil Abrahamsen Blomfeldt
109290753b Android: Fix note for host architecture mismatch
The qtConfAddNotice was a typo, so this note was missing from
config.log and the build would fail with no explanation.

Change-Id: Iae22f92c1ba6bdf96d41a7cc608b9aedd6863b1f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-11-30 14:39:03 +00:00
Friedemann Kleint
dae308d892 qprintengine_win.cpp: Fix -Wclazy-range-loop
qprintengine_win.cpp:1502: warning: Missing reference in range-for with non trivial type (QPrint::InputSlot) [-Wclazy-range-loop]

Change-Id: If6e55c1748e05e32aaa32a16063ba491fe242952
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-11-30 15:22:51 +00:00
Nico Vertriest
8d75c6765d Doc: Complete Simple Anchor Layout Example
Task-number: QTBUG-60635
Change-Id: I1351df7c514c57ed04ff6e640d7338d62c8f91ac
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2017-11-30 14:15:08 +00:00
J-P Nurmi
50117d738a Android: use a canonical data dir for Qt environment variables
ApplicationInfo.dataDir holds "/data/user/0" (Blackberry PRIV running
Android 6.0.1), which is in fact a soft link to "/data/data". This
directory is used as a prefix for various Qt environment variables,
including QML2_IMPORT_PATH, which in turn is used for resolving QML
type URIs, looking up Qt Quick Controls 2 styles, and so on. The QML
engine is not happy with "/data/data" and "/data/user/0" being wildly
mixed for QML types in the same module. Use the canonical path instead
to avoid such conflicts.

Change-Id: I1fd45736728ee662942d7ef48c3fbc553981c59b
Task-number: QTBUG-64868
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-11-30 13:49:46 +00:00
Timo Aarnipuro
dc4b4e9949 Build integrityhid support only if it is available
Change-Id: I6e0aa2f74516d4c0a1905b188f195834d395584b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-11-30 12:45:00 +00:00
Edward Welbourne
37c9d6deca Condition QDateTimeParser's time-zone parsing on QT_CONFIG(timezone)
It was missing some #if-ery it needed.

Change-Id: Ibc12f4a9ee35acb64a39a1c7a15d2934b5710dc0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-11-30 10:22:30 +00:00
Friedemann Kleint
58b70c2f1a tst_QFileSystemModel: Stabilize readOnly(), sortPersistentIndex()
The tests start to show flakyness on Linux in 5.10 (rowCount() check
failing). This seems to point to a race condition between the files
showing up and the file system watchers of QFileSystemModel starting.

To fix this, close the file and wait until it shows up in the directory
before pointing the QFileSystemModel to it. The tests then no longer
rely on the file system watchers.

Change-Id: I39cffb4cacf6843e8e4180efb405345307c78dd8
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2017-11-30 10:16:48 +00:00
Oliver Wolff
6508fdca1d ANGLE: D3D11: Fix shared handle support detection for WARP when MinGW is used
The MinGW version we support supports IsWindows8OrGreater so that we can
check the windows version properly. As the OpenGL detection falls back
to WARP in case of RDP it was possible, that shared handles were wrongly
stated as supported, which caused crashes in users' code.

Task-number: QTBUG-64657
Change-Id: Iaca2bd169f2764cf6ec68a1d36112a735246b29a
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-11-30 05:23:36 +00:00
Błażej Szczygieł
da50a0b38c xcb: Set executed drop action when drop is outside the application
Task-number: QTBUG-62815
Change-Id: I13ee1a3a7e9515d827d29ada38bc0d396f4800d7
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2017-11-29 23:05:06 +00:00
Tor Arne Vestbø
85eef0e5e0 iOS: Improve logging during application startup
Change-Id: I15c1980d7c532c94b34e612bb781c8ed5bf096a0
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-11-29 23:04:22 +00:00
Alexander Shevchenko
813fa3f50f unify windows mkspecs: update description
Common changes to mingw-w64, ICC on Windows and MSVC toolchains:
- update toolchains description similar to 'gcc-base.conf'.

Change-Id: Ie456c6cec86c0d1c0107ca84a0fa7855666df91e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-11-29 23:03:56 +00:00
Robert Szefner
e195620d71 QPSQL: Remove semicolon after Q_DECLARE_SQLDRIVER_PRIVATE
The semicolon is unnecessary and QtCreator warns of it.

Change-Id: I20f803d1ea0136080ff4dc4f7d9863fd8028992e
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-11-29 14:13:07 +00:00
Nico Vertriest
d0812cbdab Doc: modify connect statement to new syntax
Task-number: QTBUG-60635
Change-Id: I776bdc49ae42e2d0c11dc33d58d9ce91b9f5e753
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-11-29 14:09:31 +00:00
Nico Vertriest
1fe6a75fec Doc: Minor corrections custom sort filter example
Task-number: QTBUG-60635
Change-Id: I17a69f85663eaa92e92b4e97385c21a729405e1f
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
2017-11-29 14:09:18 +00:00
James McDonnell
49597a7b58 Correct the vertex used to calculate v1/v2Frac
The NoClip version of the drawTriangle code had the vertices swapped.

Task-number: QTBUG-50845
Change-Id: I731dafee6cc140ea017b3b7d1051a27ad3081aa7
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2017-11-29 14:04:29 +00:00
Friedemann Kleint
bc9941db42 tst_QNetworkReply: Blacklist putToFtpWithInvalidCredentials for Windows
Task-number: QTBUG-62860
Change-Id: Ibf4d7de9eedc2236375ad10ca4bea08055c7ae00
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-11-29 13:55:35 +00:00
Marc Mutz
8f3ad56191 [doc] Document QString{,Ref}::split() behavior with empty 'sep'
We actually test for this already in tst_QString::split().

Change-Id: I35fe8f90900ea9c8e6251facdb3326b9226348d0
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-11-29 13:52:50 +00:00
Tor Arne Vestbø
038e473cfa iOS: Don't treat AppleTV as an iDevice when resolving physical DPI
Change-Id: I07ac92a7b2d8c65b7d70a4f2ed5f96f8f4d99ef0
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2017-11-29 12:18:40 +00:00
Tor Arne Vestbø
81908abd5e iOS: Update screen metrics (physical DPI) for the latest set of devices
We were missing some recent iPads, and the iPhone 8 Plus and X.

Change-Id: Ib65644a277a1cbd75ccb360b79b9ac8af935c741
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2017-11-29 12:18:28 +00:00
Andy Shaw
a17f892bc5 Correct \since value for QIODevice::skip
Change-Id: I9a2f18263a8bc0a0de8978792dbb1f285acc0ccd
Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-11-29 08:44:13 +00:00
Thorbjørn Lund Martsum
fb880bbdff QMenu: Corner case size fix (high DPI + multi screen)
We always need to set the QMenu screen explicit also when
it is about to be shown on the primary screen.
The reason is QWidget::metric (called from style/sizeHint)
may use qApp->devicePixelRatioF() when it does not
know about the topLevelWindow. That may not be the same
value as DPR on primary screen. It can be argued that
it likely is a bug in QWidget::metric, but fixing that
looks to be a somewhat dangerous behavior change.

Task-number: QTBUG-59794
Change-Id: I6ed0e808aa31bee5b77c0e19ce61a77548fdbb38
Reviewed-by: Morten Kristensen <msk@nullpointer.dk>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2017-11-29 07:31:45 +00:00
Robert Szefner
203fb83803 QSqlQuery: Remove temporary variable in navigation functions
Change-Id: I33836a75e1d2e5663f81a33a195d0cb21760e1f8
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-11-29 06:54:15 +00:00
Joni Poikelin
3acf5d61a1 Fix DB2 plugin building on Linux 64bit
Task-number: QTBUG-59358
Change-Id: I2e7d52b31f354868c8c4435d8cabe3525d22ede2
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-11-29 06:40:37 +00:00
Joni Poikelin
b764c4d0aa Fix unix QPrintDialog initially selected printer
Unix QPrintDialog always set default printer as selected printer even
though something was explicitly requested.

[ChangeLog][QtPrintSupport][QPrintDialog] Properly pre-select explicitly
requested printer on Unix.

Task-number: QTBUG-63933
Change-Id: I6289f759d480b4891f4ddd7ff5aad3ae9ab4bc75
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2017-11-29 06:40:35 +00:00
Tor Arne Vestbø
e434add2de iOS: Don't set background color when debugging window management
It will fill the view in some cases, obscuring what Qt draws.

Change-Id: I9ca00dddd829a28fb2cb3b009bfd3223f85ef7cb
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-11-29 00:27:12 +00:00