Commit Graph

39817 Commits

Author SHA1 Message Date
Liang Qi
29f01b32f5 Merge remote-tracking branch 'origin/5.13' into dev
Conflicts:
	src/corelib/configure.json

Change-Id: I93ac67f3bf4844bc7c691183e94bceb922b7b919
2019-03-31 12:39:42 +02:00
Laszlo Agocs
28a264cfe2 Fix alpha blending regression with WA_StacksOnTop QOpenGLWidgets
0bc4288689 in Qt 5.6 introduced support for premultiplied alpha in the
raster-rendered QWidget content. Unfortunately this introduced a
regression for OpenGL content from QOpenGLWidgets with WA_StacksOnTop
set: these used standard alpha blending in 5.5 and earlier, and
switching them to premultiplied (in case the - unrelated - raster
content has a _Premultiplied QImage format) breaks all content that
was done with non-premultiplied alpha in mind, for example the qopenglwidget
example's "Transparent background" checkbox.

Restore the pre-5.6 behavior.

Fixes: QTBUG-74285
Change-Id: I76fcadd53cd436efa2b619b8d6739270995d044f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2019-03-30 19:22:17 +00:00
Yuhang Zhao
387f120bf9 Fix cross compile on Ubuntu
When cross compiling on Ubuntu with LTO enabled, the linker will complain about the "-fno-fat-objects" parameter even if the "-fuse-linker-plugin" is passed it.
But if the "-fno-fat-objects" parameter is removed, the linker will complain about "don't support linker plugin in this mode".
Remove both parameters can fix this.

Change-Id: I2d792ca70737f2e82a360bfc597f2b110513b954
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-03-30 07:34:30 +00:00
Qt Forward Merge Bot
0a7302abbc Merge remote-tracking branch 'origin/5.12' into 5.13
Change-Id: I9935bacae0d6ba532418fc3d28adbc7ca1463604
2019-03-30 01:00:07 +01:00
Liang Qi
300940a6c9 Revert "Remove deprecated screen maintenance functions in QPlatformIntegration"
This reverts commit 7a64ffb773.

This change landed in 5.13 too early, so there is no baseline with both APIs in
dev. This will be reverted later when the fixes for leaf modules landed.

Task-number: QTBUG-74816
Change-Id: Ie5ee41fbf6be53b8fcb4289ac1ec3974e5bf6e42
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
2019-03-29 20:55:24 +00:00
Tony Sarajärvi
8d154810f5 Extend blacklistnig of tst_qwidgets to cover RHEL 7.6
Task-number: QTBUG-46116
Change-Id: I7d74dca7030a9c21b3654e3b5cde94015497208e
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-03-29 19:26:25 +00:00
Tobias Hunger
c4bdddf917 CMake: Re-generate printsupport
Change-Id: I8c859dad17dbb18694f52c4c87bf20d55f490099
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:39:32 +00:00
Tobias Hunger
2d1bc2dd6f CMake: Re-generate plugins/platforms/offscreen
Change-Id: Ie26bed794881835278f3874e318d00affad8aa05
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:37:14 +00:00
Tobias Hunger
dde95a3bdb CMake: Re-generate plugins/platforms/minimal
Change-Id: I1f5f3e9f2e3ba4505ff3c9572223ca9d2b043a0e
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:37:01 +00:00
Tobias Hunger
dba2cc84ae CMake: Re-generate plugins/bearer/networkmanager
Change-Id: I70ef85e4c758d76c23012da981c6f583c179dd02
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:36:51 +00:00
Tobias Hunger
107dc7568e CMake: Re-generate plugins/bearer/connman
Change-Id: I68f81b269573e2beaa7fce33adee9c090fae318a
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:36:42 +00:00
Tobias Hunger
9e37f8844b CMake: Re-generate plugins/bearer/generic
Change-Id: I1962b813ab64ac7d577d8645239e9bd0f1140947
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:36:31 +00:00
Tobias Hunger
dfe734567c CMake: Re-generate plugins/sqldrivers/odbc
Change-Id: I95184ab2202f2fd1d87a7182303549557a6cdd87
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:36:18 +00:00
Tobias Hunger
a660bf9aa3 CMake: Re-generate plugins/sqldrivers/psql
Change-Id: If02ae8f616600d49cbbcd2aee298395d03b68a8f
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:36:05 +00:00
Tobias Hunger
4a9ea61705 CMake: Re-generate platformsupport/graphics
Change-Id: Ib144f7ab7d73e408fb73e1c52e92d03377c890c5
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:33:22 +00:00
Tobias Hunger
ff15f36812 CMake: Re-generate platformsupport/glxconvenience
Change-Id: I1a8c376df4a29ca6d38f60b20a961a8706f246ba
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:33:10 +00:00
Tobias Hunger
4cf7ec0665 CMake: Re-generate platformsupport/platformcompositor
Change-Id: I4efe3cc2920c0efe83f8e2b7028020558a78c778
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:33:00 +00:00
Tobias Hunger
b7d3bb8c3a CMake: Re-generate platformsupport/eglconvenience
Change-Id: I0e159dad3efc812be7fad7637901822f9a29fb88
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:32:50 +00:00
Tobias Hunger
95142af5bd CMake: Re-generate platformsupport/kmsconvenience
Change-Id: If0d734f80f3c6252c6cd7dedcba77352ee909178
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:32:39 +00:00
Tobias Hunger
49777d0d4f CMake: Re-generate platformsupport/vkconvenience
Change-Id: I231274316f1cd834ec6d34e51231829dd825643b
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:32:30 +00:00
Tobias Hunger
3b362e766f CMake: Re-generate platformsupport/windowsuiautomation
Change-Id: I5c422b0052af0570de4331215fe78a7e956649e9
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:32:20 +00:00
Tobias Hunger
eb1e744206 CMake: Re-generate platformsupport/fontdatabases
Change-Id: I20e7043c77fbbbd882d6bf8cb0a05dfb32eb2ede
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:31:57 +00:00
Alexey Edelev
20b7e18146 Fix a crash in QHttp2ProtocolHandler in h2c-direct mode
After 'h2c' mode was implemented with the proper protocol
upgrade, the previously working 'direct connection' mode
was lost for clear text connections due to the erroneous
logic in the constructor: having !channel->ssl does not
necessary mean we started with HTTP/1.1 request, including
protocol upgrade header; it can also mean we connected a
plain socket and immediately sending h2 frames, without
any H2 negotiation at all.

Fixes: QTBUG-74765
Change-Id: Ice466d6bffb40048b7ab46fb064f2d3d795a12aa
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-03-29 14:31:31 +00:00
Tobias Hunger
03a64ab80d CMake: pro2cmake.py: Handle QDBUSXML2CPP_*_HEADER_FLAGS
Change-Id: Ib5d34a6bf550a11154109064e4e718d0c79c722b
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:29:47 +00:00
Tobias Hunger
75658794e4 CMake: pro2cmake.py: Improve handling of dbus interfaces/adaptor sources
Change-Id: I3b642e1ae31996a81618e312183f4cc168bbbe1b
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:29:29 +00:00
Tobias Hunger
b9a3217c41 CMake: pro2cmake.py: Handle $$PWD better
Change-Id: I2e28b652c60d3490138ae0548b32d010faccc5a4
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:28:51 +00:00
Tobias Hunger
6a834a0c59 CMake: Map odbc to ODBC::ODBC
Change-Id: I55cf506cca87ac3e3fe9e0e1803f5118b46bf818
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:27:43 +00:00
Tobias Hunger
b0d4ac8498 CMake: Map SQLite3 to SQLite::SQLite3
Fix sqlite maping while at it.

Change-Id: I712ca562fa362a7f5857047346e8b3083f901bfb
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:27:29 +00:00
Tobias Hunger
1ac36d4bc2 CMake: Map glx_support and glx_supportPrivate
Change-Id: I777ea84a080a6856961d644a0290e4d73e07c518
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:27:13 +00:00
Tobias Hunger
61ec3d0b6e CMake: Map psql to PostgreSQL::PostgreSQL
Change-Id: I8332d2120e8b629c8722b5c9a95b47950b327d4c
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 14:26:58 +00:00
Tobias Hunger
828f2965e7 CMake: pro2cmake.py: deduplicate and sort libraries
Change-Id: I924cfac365a0b4ba18c2579820bc37729f1ea8d9
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-03-29 14:06:41 +00:00
Edward Welbourne
6ed2ea86db Doc-fixes in QRandomGenerator::bounded(int...)
They return int, not quint32.

Change-Id: I9879b58cccf9ea324ea1fc0c567a9d30b82fa44d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-03-29 14:00:23 +00:00
Edward Welbourne
b82b3f4067 Fix the skip-check in TestMethods::invokeTest()
TestMethods::invokeTest() has an outer loop on global data (albeit
with a comment that said otherwise). On its first cycle, we run the
test function's *_data() method, if it has one; there is an inner loop
on the rows this created. If the *_data() QSKIP()s, we need to skip
the whole test; otherwise, a QSKIP() in one sub-test should not lead
to skipping the remaining sub-tests.

Moved the check for *_data() QSKIP()ping to right after *_data()
returns, inside the "first global cycle" block that runs it.
Previously, this check was done before entering the loop on local data
rows, but outside that "first global cycle" block: consequently, later
global cycles would fall foul of this check (even though the *_data()
hasn't been run in this cycle, much less QSKIP()ped in it) if the last
sub-test of the previous global cycle had QSKIP()ped.

When running a single test for one specific data row, if the test's
*_data() QSKIP()ped, this misplaced check would also have lead to a
misleading "Unknown testdata" warning.

Changed testlib/selftests' tst_globaldata::skipSingle() to trigger the
bug (by having its last local row of first global row skip, which
caused the second global row to be omitted) to verify this is also
fixed; and amended one of its comments to reflect what's now to be
expected. Updated the test's expected output files.

Task-number: QTBUG-61774
Change-Id: I99596b595c6d1184038f23383844c6ff51a0cd91
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-03-29 14:00:03 +00:00
Lars Knoll
bab398aba3 Fix memory leak in auto test
Change-Id: Ie4412b8d8c67e9516225f6fe5b67afed91dcdad5
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-03-29 13:46:56 +00:00
Lars Knoll
a9cd08c3f3 Fix memory leak in auto test
Change-Id: I2e8d8cc0f248122b06c7c8313d8effac887adaa8
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-03-29 13:46:51 +00:00
Lars Knoll
993b049adf Get rid of the locking in activate()
Removing connections and resizing the signal vector now
happens in a way that will not interfere with activate(),
as the old objects won't get deleted if we are somewhere
inside a signal emission.

This means that we don't need to lock the senders mutex
in activate anymore, as long as the reference counting
on the ConnectionData is atomic and we are in the senders
thread.

This implies that we now need to lock the receivers mutex in
queued_activate() abd blocking queued activation to ensure
it hasn't been deleted while we are emitting.

In addition, some precautions need to be taken to not read
from the receiver without holding the lock, as it could get
deleted while we're activating (if it's in a different thread).
To make that possible store the receivers thread id in the
connection data.

Use atomic pointers for all variables that can get modified
with the signalSlotLock() held and that are being read
without the lock being held.

This gives us a very nice additional speed improvement
for signal emissions.

                       without change    with change
string based connect:  3287              2436
pointer based connect: 3941              3265
not connected:          403               400
disconnected:           460               489
5 slots connected:     9112              4515

Change-Id: Ib7324bb74c389dcc3b6581a03c31469a6e589fc2
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2019-03-29 13:46:39 +00:00
Lars Knoll
13ab090977 Add safe way to resize the signalVector
Change-Id: Ib55da020f22e981bc379af3b4cf3431bf0fa0c20
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2019-03-29 13:46:29 +00:00
Lars Knoll
999c26dd83 Add a QAbstractMetaCallEvent
And use it to clean up the reimplementations in Qt DBus.

Change-Id: I8e3fe35e8db6405cbcbfb45b42a8f2efecc1cef0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2019-03-29 13:46:22 +00:00
Lars Knoll
6e0b5dadc7 Change cleanup mechanism for orphaned connections
Put all connections that get disconnected into a singly
linked orphaned list.

Whenever the refcount on the connectionData drops down to
one, this list can safely be cleared, even with the planned
removal of locking in activate().

Use an id integer in the connection to acoid activating newly
added connections.

Fixes: QTBUG-72649
Change-Id: Ide3d116ae7fc9ca497598c1c2b71d43b4339c92d
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2019-03-29 13:46:17 +00:00
Volker Hilsheimer
743e883c12 Blacklist the reverse lookup of 8.8.8.8 to unblock integrations
The DNS entry for the host has changed, dig answers with dns.google,
not with google-public-dns-a.google.com. While developing a proper
fix to the test, blacklisting this particular lookup allows
integrations to pass in the meantime.

Change-Id: Id37da6b24554803bf4e2c84be5b949ded40566e8
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2019-03-29 13:45:47 +00:00
Allan Sandfeld Jensen
ff8d9ad5bc Speculative fix for building on INTEGRITY with ARM NEON
Avoid using inline assembler

Task-number: QTBUG-72716
Change-Id: I696efb5a787416eb4fc5ba3a250461aaa9a4afc2
Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io>
2019-03-29 13:06:12 +00:00
Kai Koehne
ae5db669e8 Doc: Improve WinTab license information
Do not categorize the license anymore as 'Public Domain', because the
actual text is not explicit on whether it allows modifications. Instead
show the original license text.

Also remove the Homepage link, which now just displays (arguably
outdated) information about patents.

Finally, do not misuse the "Version" field for metadata information,
use the newly introduced "PackageComment" field instead.

[ChangeLog][Third-Party Code] Changed classification of the wintab
license from Public Domain to Custom.

Fixes: QTBUG-74453
Change-Id: Ibae36be1deee3b9c498c45d03ed741c3d5ff630c
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2019-03-29 12:28:15 +00:00
Kai Koehne
1a707be8b4 Do not look for pg_config, mysql_config in PATH when cross-compiling
Otherwise it can happen that we pick up the tool for the host system,
which will break compilation.

Users can still pass
 -psql_config /path/to/pg_config

or
 -mysql_config /path/to/mysql_config

manually.

[ChangeLog][QtSql] When cross-compiling pg_config, mysql_config
are not looked up in PATH anymore. Pass -psql_config path/to/pg_config
or -mysql_config path/to/mysql_config to explicitly enable PSQL or
MySQL in this setup.

Fixes: QTBUG-73565
Change-Id: I35ff32322bac69f1575ce6c846a56ac2ae3b8d55
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2019-03-29 11:43:19 +00:00
Tobias Hunger
feeae8e27f CMake: Re-generate platformsupport/linuxaccessibility
Change-Id: I1737fbfbdb3a139a9296cc0b446014b3aaa583a1
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:17:22 +00:00
Tobias Hunger
71125665cf CMake: Re-generate platformsupport/accessibility
Change-Id: I3d29bc6db570d918dee5925ac370c4dd2cc16aa8
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:17:03 +00:00
Tobias Hunger
dc0b1dc67c CMake: Re-generate platformsupport/input
Change-Id: I4f3c4d6d0db2cb8d5a4cb2b71a7d7e08f043b88c
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:16:53 +00:00
Tobias Hunger
fdb480c8e3 CMake: Re-generate platformsupport/services
Change-Id: Ibe7d56e81640a41e093cf4936207fa96fd61a4f9
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:16:21 +00:00
Tobias Hunger
43ff4aa5b8 CMake: Re-generate platformsupport/fbconvenience
Change-Id: I8cf1ac15e38529117346fdd17f29fb1e6be20a68
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:16:03 +00:00
Tobias Hunger
143c3e6ea1 CMake: Re-generate platformsupport/devicediscovery
Change-Id: I817532202f070120498894b0b1dd9d92fc4e1bfa
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:15:53 +00:00
Tobias Hunger
63389cad18 CMake: Re-generate platformsupport/eventdispatcher
Change-Id: Ib2c502cc4f2e7b91304ec4d0b4f1702327890dfb
Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
2019-03-29 10:15:36 +00:00