In this threaded setup the server can sometimes have the data before it
calls "waitForReadyRead", what happens then is that we fail the wait and
as a result the test fails overall.
Let's check if we actually got some data after all and then continue if
we did. Since both the client and the server currently wait the same
amount of time (2s) the max timeout for the client was increased by
0.5s so it has some time to notice that the server got the message.
Change-Id: Ib5915958853413047aa5a7574712585bcae28f79
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
(cherry picked from commit e79b1dcdf5)
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit d53b8b77bc)
Change-Id: I2f6ffb8e0a9b4d591edb6925e48baffcefc14511
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
If this callback is not set then OpenSSL will call the callback
used for <= TLS 1.2 unconditionally when connecting. If using PSK it
will call it again later once the preshared key is needed.
We don't currently handle the TLSv1.3 PSK, but we definitely should.
But for now we can work around it - when psk_use_session_callback is
called we simply change the PSK callback to a dummy function whose only
purpose is to restore the old callback.
This is mostly done to keep behavior the same as it is now for users
(and to keep our tests running).
Later we can add a new signal and handle this new feature properly.
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit d8efc8d718)
Task-number: QTBUG-67463
Change-Id: I4aca4ae73ec4be7c4f82a85e8864de103f35a834
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Done to fix broken CMake WebAssembly support, where CMAKE_CXX_STANDARD_LIBRARIES
appear to be empty. The regression was introduced by
ba4fdd99ff.
This fixes the following CMake error on find_package(Qt ...):
string sub-command REGEX, mode REPLACE needs at least 6 arguments total to command.
Fixes: QTBUG-73475
Fixes: QTBUG-76244
Change-Id: Ieebe8cd1d49bb302dc37d8f118cc0b9376d6cdd7
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
[ChangeLog][Third-Party Code] Updated bundled SQLite to version 3.28.0
Change-Id: If2a893c1dd5d5f97032a0a9b1f7ff78b9e715038
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
We use global object to store errors found by q_X509Callback.
Thus, we also use a lock/mutex. It would appear all tests
involving in-process server and QNAM are prone to intermittent
failures on our Windows VMs - it's always about timeouts due
to the client socket (QNAM) locking and the server socket blocking
main thread while trying to acquire the same lock.
The real fix is to re-write our verification callback so that
it does not need locking/does not block the main and 'http'
threads as a result. But such change is too dangerous for
5.13.0 so we instead have a somewhat handicapped/reduced
test on Windows.
The fixed QSSlSocket will go into 5.13.
Task-number: QTBUG-76157
Change-Id: Ia54701bcb3f6f079a69e52c8904ac3efcee4a787
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
From Qt 5.12.5 and 5.13.0 on we ship OpenSSL 1.1.x libraries with Qt
through the binary installers, as Qt is a general purpose toolkit and
as such not subject to import/export restrictions.
However, application developers still have to take care of the
relevant requirements and compliance before distributing OpenSSL.
Change-Id: I1c3622116eadda270d638becfa23a5493976e919
Fixes: QTBUG-75814
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
If the mouse button is held and mouse moves from over the window, that
window would never register the button up event, and cause issue like
being able to move a dialog around by simply moving the mouse around.
Change-Id: I1363ac9c9f4113a79bf6863668ba74b90b1cea4a
Fixes: QTBUG-75951
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
The declaration of tr() in the Q_OBJECT macro interferes with the
tr() declaration in the QObject class. This update fixes that bug
by resetting QT_TR_FUNCTIONS to be empty and by ensuring that the
tr() declaration in class QObject is seen by clang when qdoc is
running.
Change-Id: If55339fc417f3eee1a1e1ce3df75a18af443d630
Task-number: QTBUG-75864
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
also fix data progress
Task-number: QTBUG-75489
Change-Id: I5222fda64d258a6ae78ba0ca20194b81c289c27e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
The regular expression with the alternative is not portable.
Use a separate QMAKE_PRL_INSTALL_REPLACE item.
This amends commit f00de33.
Fixes: QTBUG-75950
Change-Id: I78e172053f8b05be7d595a1c9e1695ea658b0547
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
In the case of building a Qt module repository against an installed
qtbase the .prl files contain absolute paths to Qt dependencies e.g.
'/install-prefix/lib/libQt5Core.so'.
Those must be replaced with $$[QT_INSTALL_PREFIX]. The .prl
replacement code however only takes $$MODULE_BASE_OUTDIR/lib into
account.
Fixes: QTBUG-75804
Change-Id: I5ea5623ca7396b672fded3f1b9434b9ad5ed12ec
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
QT_DEPRECATED_X() was not added with
d6d33f0b80 for the deprecated
QComboBox functions - Add them now.
Change-Id: I8d4ea08766ae6ff052dfccac6c3f35ecf34affb7
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
This reverts commit fc3e851414.
The patch introduces a crash in Qt Quick in the test
tst_QQuickWindow::multipleWindows() on macOS 10.12.
Reverting this will cause dead locks on older macOS versions
for users who opt in to using layer backed mode, so we
should bring this back as soon as a fix can be found for
the crash. But in order to proceed with qt5.git integration,
we revert it for now.
Task-number: QTBUG-75782
Change-Id: I57f6b2918c3fc4b4e58a8c39b24a19e2d796a4f4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
We don’t need the contextLost callback since we can
poll for the “lost” status in isValid()
Recreating the native context is not very helpful,
since it destroys all current context state. Remove
this logic.
Support makeCurrent() on different surfaces, as long
as they refer to the same screen. Create the native
context (and record which screen) on the first call
to makeCurrent()
Task-number: QTBUG-75463
Change-Id: I6eb830df14578ffdbed5b0505fe860ce433e4f9b
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Freeing OpenGL resources requires a current context,
which (on wasm) requires a screen.
Add a destroy() functions to QWasmScreen, QWasmCompositor, QWasmWindow,
and QWasmBackingStore which facilitates OpenGL cleanup before we start
deleting screen objects.
Task-number: QTBUG-75463
Change-Id: I9954b536416b9147965c74459ccad838d1578778
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
This no-op implementation is sufficient to support OpenGL cleanup
use cases, where the OpenGL context needs to be made current at times
where we don't have a window available.
A specific requirement on WebAssembly is that the context is tied
to one specific screen; which is an extra requirement on QWasmOffscreenSurface,
compared to the other platforms.
Task-number: QTBUG-75463
Change-Id: Ie3658cb235bf342be66f19dfe981e3a56a90e1b6
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
The target position is the position on the canvas,
not the global position on the page.
Task-number: QTBUG-75463
Change-Id: I4ea2c9afacd2065fa975f6fa2e6a93d98f637854
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
We can get draw calls in between creating the platform
window and the platform backing store.
Task-number: QTBUG-75463
Change-Id: If0b67d40fac84e466f204ec23a267aa4c6121cbd
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Install one browser window resize handler instead of
per-canvas resize handlers, which avoids having to
uninstall on QScreen destruction.
Task-number: QTBUG-75463
Change-Id: I8345262a906ed735f8e9e146f1e963f515cf0d25
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
qmake automatically appends a dir_sep to a few directory paths (see
MakefileGenerator::initOutPaths), and various .pri and .prf files rely on
that. Anyhow, for non-MSys MinGW on Windows this creates a problem,
because mingw32-make will interpret the backslash in
OBJECTS_DIR = some_path\
to escape the following newline. We have been working around this
problem in various ways:
- winmakefile.cpp just removes the trailing \ for OBJECTS_DIR, at the
cost of not being compatible with logic in .prf/.pri files that rely on
the separator.
- winmakefile.cpp adds a '#avoid trailing-slash linebreak' comment for
DESTDIR. Anyhow, this does not seem to work for mingw32-make: If you
reference $(DESTDIR), the variable will contain trailing spaces.
- unixmakefile2.cpp duplicates a trailing \ for DESTDIR.
The last approach is now taken also for OBJECTS_DIR.
Task-number: QTBUG-75257
Change-Id: Ie8171a990a9ce1cfbf1b94037252ef2392313338
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
If qmake is called without sh.exe in PATH, the relative paths
in OBJECTS will contain backslashes as separator.
Anyhow, emar needs forward slashes. Use GNU make's subst command
to fix this.
This amends 22c1e10e19.
Task-number: QTBUG-75257
Change-Id: Iacc6fe69cf470f35c6ddd829be7a80944346452d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
We can’t determine when the app will use layer-backed
views without having access to the QWindow and NSView
instance, so make the conservative choice of always
returning false for ThreadedOpenGL.
Task-number: QTBUG-74820
Change-Id: If2779b17eead78ce1929ccebc3bd8fc0eb00c4b5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
navigator.hardwareConcurrency can be accessed from
the main thread only. Read and cache the value on
QCoreApplication initialization.
Change-Id: I731f7f356ce106c7107977783d4b763326af06b6
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
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>
(cherry picked from commit 43763e2796)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
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>
Adding xcb_flush after xcb_bell makes it work, no need to move the
mouse.
Fixes: QTBUG-75617
Change-Id: Ieeb47468bf31cfa6fcf2d48da56d54b9e6eac6fe
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Mips archs were removed from Android NDK long time ago.
Change-Id: Icf64a1e2cfbe3fe7307c7898b14fd199d9eeaad3
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Qt starts drag-and-drop on a mouse button press event. Cococa in
this case won't send the matching release event, so we have to
synthesize it here.
Task-number: QTBUG-72417
Change-Id: I645b6a2733c1ea11ac4545cf3405f826af45fa47
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Do not store this variable locally, because
a) it might change if the SDK location changes
b) does not play well with Qt installer packages which would provide the
include path of the build machine.
To achieve this we introduce the (usual) magic value - for
QMAKE_EXPORT_INCDIR_VULKAN to denote "do not export this value".
Fixes: QTBUG-73796
Change-Id: Ied26ee12cbcdf7f5f6e1caef5d29dadf6309c5d6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
I was using a cheap usb-stick from ALDI supermarket with fat32,
and my application crashed because filesystem was empty.
Unrealistic scenario, but still just returning here false is better
than a crash
Change-Id: I8979d5a4e19ce57770ab03983e847b272ebf7019
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
We get a call to storeFont for each supported script-type of
a font, but we use the font signature to register all the supported
types at once, and can thus save ~3/4 calls to addFontToDatabase.
Change-Id: I9d06252fb7f805e7babac58d82fa412ec4e0e36a
Fixes: QTBUG-59360
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Don't call or implement functions which are not available when compiling
with QT_DISABLE_DEPRECATED_BEFORE=0x050d00
Change-Id: I949b12bba880c516391f312f58c8748303a1790d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
In Windows there are package-based systems like MSYS2 that provide
pkg-config for packages lookup.
This change skips autodetection only for MSVC which doesn't
provide the aforementioned feature.
Task-number: QTBUG-57436
Change-Id: Iaed517e93031adbd2fd9dbf350764f76569b94ea
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
This helps debugging import issues, and will produce output like this:
Running qmlimportscanner with the following command: /media/dev2/qt5.13-android-x86-debug/qtbase/bin/qmlimportscanner -rootPath /media/dev2/qt5.13/qtquickcontrols2/tests/auto/customization/ -importPath /media/dev2/qt5.13-android-x86-debug/qtbase/qml /media/dev2/qt5.13/qtquickcontrols2/tests/auto/customization/
Task-number: QTBUG-73572
Change-Id: I3c8fe16cb76f1b11913a3b9cc98470f6071438ab
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>