summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAhmad Samir <a.samirh78@gmail.com>2023-08-21 20:53:47 +0300
committerAhmad Samir <a.samirh78@gmail.com>2023-09-04 23:34:29 +0300
commit0ac61fbf6e26a9ccebd73fa40118aa66a5b0b09b (patch)
treed7235443fec8a734c977d61ea6e6f74495f8e46e
parent2f62f115dc5c5f857bdec7c1c08608065b7e1729 (diff)
Mark the whole repo with QT_NO_CONTEXTLESS_CONNECT
By adding it to the default build flags via .cmake.conf. This amends commit 84bb3ea0039097c67bf104841fe8e1759f90c252. Task-number: QTBUG-116296 Change-Id: I395a17082d4cfcacc5ba406429426c841b9e43fe Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> (cherry picked from commit 3d6f8ff6a2ece3b7be3033754d23d00fb42c55b4)
-rw-r--r--.cmake.conf1
-rw-r--r--examples/multimedia/player/qmediaplaylist_p.cpp4
-rw-r--r--examples/multimedia/video/mediaplayer/main.cpp2
-rw-r--r--src/multimedia/CMakeLists.txt2
-rw-r--r--src/multimediaquick/CMakeLists.txt2
-rw-r--r--src/multimediawidgets/CMakeLists.txt2
-rw-r--r--src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp4
-rw-r--r--src/plugins/multimedia/ffmpeg/CMakeLists.txt1
-rw-r--r--src/plugins/multimedia/gstreamer/CMakeLists.txt1
-rw-r--r--src/plugins/multimedia/qnx/camera/qqnxplatformcamera.cpp3
-rw-r--r--src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp3
-rw-r--r--src/plugins/videonode/imx6/CMakeLists.txt2
-rw-r--r--src/spatialaudio/CMakeLists.txt2
-rw-r--r--src/spatialaudioquick3d/CMakeLists.txt2
-rw-r--r--tests/auto/integration/qaudiodecoderbackend/tst_qaudiodecoderbackend.cpp12
-rw-r--r--tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp18
-rw-r--r--tests/auto/unit/multimedia/qaudiostatemachine/tst_qaudiostatemachine.cpp10
17 files changed, 34 insertions, 37 deletions
diff --git a/.cmake.conf b/.cmake.conf
index 55297ce95..beb5566d6 100644
--- a/.cmake.conf
+++ b/.cmake.conf
@@ -1,3 +1,4 @@
set(QT_REPO_MODULE_VERSION "6.5.3")
set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1")
set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_AS_CONST=1")
+list(APPEND QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_CONTEXTLESS_CONNECT=1")
diff --git a/examples/multimedia/player/qmediaplaylist_p.cpp b/examples/multimedia/player/qmediaplaylist_p.cpp
index c34b00be9..7a13536f2 100644
--- a/examples/multimedia/player/qmediaplaylist_p.cpp
+++ b/examples/multimedia/player/qmediaplaylist_p.cpp
@@ -55,8 +55,8 @@ void QMediaPlaylistPrivate::ensureParser()
return;
parser = new QPlaylistFileParser(q_ptr);
- QObject::connect(parser, &QPlaylistFileParser::finished, [this]() { loadFinished(); });
- QObject::connect(parser, &QPlaylistFileParser::error,
+ QObject::connect(parser, &QPlaylistFileParser::finished, q_ptr, [this]() { loadFinished(); });
+ QObject::connect(parser, &QPlaylistFileParser::error, q_ptr,
[this](QMediaPlaylist::Error err, const QString &errorMsg) {
loadFailed(err, errorMsg);
});
diff --git a/examples/multimedia/video/mediaplayer/main.cpp b/examples/multimedia/video/mediaplayer/main.cpp
index e2b22db4b..3a2dab71c 100644
--- a/examples/multimedia/video/mediaplayer/main.cpp
+++ b/examples/multimedia/video/mediaplayer/main.cpp
@@ -26,7 +26,7 @@ int main(int argc, char *argv[])
if (!parser.positionalArguments().isEmpty()) {
QUrl source = QUrl::fromUserInput(parser.positionalArguments().at(0), QDir::currentPath());
QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
- [source](QObject *object, const QUrl &) {
+ &engine, [source](QObject *object, const QUrl &) {
qDebug() << "setting source";
object->setProperty("source", source);
});
diff --git a/src/multimedia/CMakeLists.txt b/src/multimedia/CMakeLists.txt
index 7bd00ae65..38e83f55d 100644
--- a/src/multimedia/CMakeLists.txt
+++ b/src/multimedia/CMakeLists.txt
@@ -74,8 +74,6 @@ qt_internal_add_module(Multimedia
video/qvideoframeconverter.cpp video/qvideoframeconverter_p.h
video/qvideoframeformat.cpp video/qvideoframeformat.h
video/qvideowindow.cpp video/qvideowindow_p.h
- DEFINES
- QT_NO_CONTEXTLESS_CONNECT
INCLUDE_DIRECTORIES
audio
camera
diff --git a/src/multimediaquick/CMakeLists.txt b/src/multimediaquick/CMakeLists.txt
index cda3427c3..eceef4e06 100644
--- a/src/multimediaquick/CMakeLists.txt
+++ b/src/multimediaquick/CMakeLists.txt
@@ -32,8 +32,6 @@ qt_internal_add_qml_module(MultimediaQuickPrivate
qsgvideotexture.cpp qsgvideotexture_p.h
qtmultimediaquickglobal_p.h
qtmultimediaquicktypes.cpp qtmultimediaquicktypes_p.h
- DEFINES
- QT_NO_CONTEXTLESS_CONNECT
QML_FILES
${qml_files}
PUBLIC_LIBRARIES
diff --git a/src/multimediawidgets/CMakeLists.txt b/src/multimediawidgets/CMakeLists.txt
index b41fab785..8425d3bac 100644
--- a/src/multimediawidgets/CMakeLists.txt
+++ b/src/multimediawidgets/CMakeLists.txt
@@ -11,8 +11,6 @@ qt_internal_add_module(MultimediaWidgets
SOURCES
qtmultimediawidgetsglobal.h
qvideowidget.cpp qvideowidget.h qvideowidget_p.h
- DEFINES
- QT_NO_CONTEXTLESS_CONNECT
LIBRARIES
Qt::MultimediaPrivate
Qt::WidgetsPrivate
diff --git a/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp b/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp
index 9c5cf319a..005b9b664 100644
--- a/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp
+++ b/src/plugins/multimedia/android/mediacapture/qandroidcamerasession.cpp
@@ -784,13 +784,13 @@ void QAndroidCameraSession::setVideoSink(QVideoSink *sink)
if (m_sink)
m_retryPreviewConnection =
- connect(m_sink->platformVideoSink(), &QPlatformVideoSink::rhiChanged, [&]()
+ connect(m_sink->platformVideoSink(), &QPlatformVideoSink::rhiChanged, this, [&]()
{
if (m_active) {
setActive(false);
setActive(true);
}
- });
+ }, Qt::DirectConnection);
if (m_sink) {
delete m_textureOutput;
m_textureOutput = nullptr;
diff --git a/src/plugins/multimedia/ffmpeg/CMakeLists.txt b/src/plugins/multimedia/ffmpeg/CMakeLists.txt
index 9de30d070..93bb11a6a 100644
--- a/src/plugins/multimedia/ffmpeg/CMakeLists.txt
+++ b/src/plugins/multimedia/ffmpeg/CMakeLists.txt
@@ -55,7 +55,6 @@ qt_internal_add_plugin(QFFmpegMediaPlugin
playbackengine/qffmpegpositionwithoffset_p.h
DEFINES
QT_COMPILING_FFMPEG
- QT_NO_CONTEXTLESS_CONNECT
LIBRARIES
Qt::MultimediaPrivate
Qt::CorePrivate
diff --git a/src/plugins/multimedia/gstreamer/CMakeLists.txt b/src/plugins/multimedia/gstreamer/CMakeLists.txt
index b297bddfe..96b9d3a22 100644
--- a/src/plugins/multimedia/gstreamer/CMakeLists.txt
+++ b/src/plugins/multimedia/gstreamer/CMakeLists.txt
@@ -40,7 +40,6 @@ qt_internal_add_plugin(QGstreamerMediaPlugin
common/qgstreamervideosink.cpp
DEFINES
GLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26
- QT_NO_CONTEXTLESS_CONNECT
INCLUDE_DIRECTORIES
audio
common
diff --git a/src/plugins/multimedia/qnx/camera/qqnxplatformcamera.cpp b/src/plugins/multimedia/qnx/camera/qqnxplatformcamera.cpp
index a115b0af2..fdf69618e 100644
--- a/src/plugins/multimedia/qnx/camera/qqnxplatformcamera.cpp
+++ b/src/plugins/multimedia/qnx/camera/qqnxplatformcamera.cpp
@@ -1,5 +1,8 @@
// Copyright (C) 2016 Research In Motion
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
+#undef QT_NO_CONTEXTLESS_CONNECT // Remove after porting connect() calls
+
#include "qqnxplatformcamera_p.h"
#include "qqnxcameraframebuffer_p.h"
#include "qqnxmediacapturesession_p.h"
diff --git a/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp b/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp
index 537c13c15..62ac030db 100644
--- a/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp
+++ b/src/plugins/multimedia/qnx/capture/qqnxmediarecorder.cpp
@@ -1,6 +1,9 @@
// Copyright (C) 2016 Research In Motion
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
+#undef QT_NO_CONTEXTLESS_CONNECT // Remove after porting connect() calls
+
#include "qqnxmediarecorder_p.h"
#include "qqnxplatformcamera_p.h"
diff --git a/src/plugins/videonode/imx6/CMakeLists.txt b/src/plugins/videonode/imx6/CMakeLists.txt
index de72378bd..659f73469 100644
--- a/src/plugins/videonode/imx6/CMakeLists.txt
+++ b/src/plugins/videonode/imx6/CMakeLists.txt
@@ -16,8 +16,6 @@ qt_internal_add_plugin(QSGVivanteVideoNodeFactoryPlugin
qsgvivantevideomaterialshader.cpp qsgvivantevideomaterialshader.h
qsgvivantevideonode.cpp qsgvivantevideonode.h
qsgvivantevideonodefactory.cpp qsgvivantevideonodefactory.h
- DEFINES
- QT_NO_CONTEXTLESS_CONNECT
LIBRARIES
Qt::Core
Qt::Gui
diff --git a/src/spatialaudio/CMakeLists.txt b/src/spatialaudio/CMakeLists.txt
index 0d9e034a7..2b85bf3d9 100644
--- a/src/spatialaudio/CMakeLists.txt
+++ b/src/spatialaudio/CMakeLists.txt
@@ -10,8 +10,6 @@ qt_internal_add_module(SpatialAudio
qspatialsound.cpp qspatialsound.h qspatialsound.h
qambientsound.cpp qambientsound.h
qtspatialaudioglobal.h qtspatialaudioglobal_p.h
- DEFINES
- QT_NO_CONTEXTLESS_CONNECT
INCLUDE_DIRECTORIES
"../3rdparty/resonance-audio/resonance_audio"
"../3rdparty/resonance-audio"
diff --git a/src/spatialaudioquick3d/CMakeLists.txt b/src/spatialaudioquick3d/CMakeLists.txt
index 13661188e..64b154158 100644
--- a/src/spatialaudioquick3d/CMakeLists.txt
+++ b/src/spatialaudioquick3d/CMakeLists.txt
@@ -23,8 +23,6 @@ qt_internal_add_qml_module(Quick3DSpatialAudioPrivate
qquick3daudioengine.cpp qquick3daudioengine_p.h
qtquick3daudioglobal_p.h
qtquick3daudiotypes_p.h
- DEFINES
- QT_NO_CONTEXTLESS_CONNECT
QML_FILES
PUBLIC_LIBRARIES
Qt::Quick3DPrivate
diff --git a/tests/auto/integration/qaudiodecoderbackend/tst_qaudiodecoderbackend.cpp b/tests/auto/integration/qaudiodecoderbackend/tst_qaudiodecoderbackend.cpp
index 174039600..321f9cdea 100644
--- a/tests/auto/integration/qaudiodecoderbackend/tst_qaudiodecoderbackend.cpp
+++ b/tests/auto/integration/qaudiodecoderbackend/tst_qaudiodecoderbackend.cpp
@@ -154,7 +154,7 @@ void tst_QAudioDecoderBackend::indirectReadingByBufferReadySignal()
int sampleCount = 0;
- connect(&decoder, &QAudioDecoder::bufferReady, [&]() {
+ connect(&decoder, &QAudioDecoder::bufferReady, this, [&]() {
QVERIFY(decoder.bufferAvailable());
QVERIFY(decoder.isDecoding());
@@ -194,7 +194,7 @@ void tst_QAudioDecoderBackend::indirectReadingByBufferAvailableSignal() {
int sampleCount = 0;
- connect(&decoder, &QAudioDecoder::bufferAvailableChanged, [&](bool available) {
+ connect(&decoder, &QAudioDecoder::bufferAvailableChanged, this, [&](bool available) {
QCOMPARE(decoder.bufferAvailable(), available);
if (!available)
@@ -238,7 +238,7 @@ void tst_QAudioDecoderBackend::stopOnBufferReady()
if (decoder.error() == QAudioDecoder::NotSupportedError)
QSKIP("There is no audio decoding support on this platform.");
- connect(&decoder, &QAudioDecoder::bufferReady, [&]() {
+ connect(&decoder, &QAudioDecoder::bufferReady, this, [&]() {
decoder.read(); // run next reading
decoder.stop();
});
@@ -269,7 +269,7 @@ void tst_QAudioDecoderBackend::restartOnBufferReady()
int sampleCount = 0;
std::once_flag restartOnce;
- connect(&decoder, &QAudioDecoder::bufferReady, [&]() {
+ connect(&decoder, &QAudioDecoder::bufferReady, this, [&]() {
QVERIFY(decoder.bufferAvailable());
auto buffer = decoder.read();
@@ -309,7 +309,7 @@ void tst_QAudioDecoderBackend::restartOnFinish()
int sampleCount = 0;
- connect(&decoder, &QAudioDecoder::bufferReady, [&]() {
+ connect(&decoder, &QAudioDecoder::bufferReady, this, [&]() {
auto buffer = decoder.read();
QVERIFY(buffer.isValid());
@@ -319,7 +319,7 @@ void tst_QAudioDecoderBackend::restartOnFinish()
QSignalSpy finishSpy(&decoder, &QAudioDecoder::finished);
std::once_flag restartOnce;
- connect(&decoder, &QAudioDecoder::finished, [&]() {
+ connect(&decoder, &QAudioDecoder::finished, this, [&]() {
QVERIFY(!decoder.bufferAvailable());
QVERIFY(!decoder.isDecoding());
diff --git a/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp b/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp
index 05ad97dd4..952f9c6f1 100644
--- a/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp
+++ b/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp
@@ -155,7 +155,8 @@ private:
static void setVideoSinkAsyncFramesCounter(QVideoSink &sink, std::atomic_int &counter)
{
- QObject::connect(&sink, &QVideoSink::videoFrameChanged, [&counter]() { ++counter; });
+ QObject::connect(&sink, &QVideoSink::videoFrameChanged,
+ &sink, [&counter]() { ++counter; }, Qt::DirectConnection);
}
void tst_QMediaPlayerBackend::init()
@@ -1431,10 +1432,10 @@ void tst_QMediaPlayerBackend::playbackRateChanging()
player.setSource(localVideoFile3ColorsWithSound);
std::optional<QRgb> color;
- connect(&surface, &QVideoSink::videoFrameChanged, [&](const QVideoFrame& frame) {
+ connect(&surface, &QVideoSink::videoFrameChanged, this, [&](const QVideoFrame& frame) {
auto image = frame.toImage();
color = image.isNull() ? std::optional<QRgb>{} : image.pixel(1, 1);
- });
+ }, Qt::DirectConnection);
auto checkColorAndPosition = [&](int colorIndex, QString errorTag) {
QVERIFY(color);
@@ -1563,7 +1564,8 @@ void tst_QMediaPlayerBackend::playerStateAtEOS()
player.setAudioOutput(&output);
bool endOfMediaReceived = false;
- connect(&player, &QMediaPlayer::mediaStatusChanged, [&](QMediaPlayer::MediaStatus status) {
+ connect(&player, &QMediaPlayer::mediaStatusChanged,
+ this, [&](QMediaPlayer::MediaStatus status) {
if (status == QMediaPlayer::EndOfMedia) {
QCOMPARE(player.playbackState(), QMediaPlayer::StoppedState);
endOfMediaReceived = true;
@@ -2116,17 +2118,17 @@ void tst_QMediaPlayerBackend::videoSinkSignals()
std::atomic<int> videoFrameCounter = 0;
std::atomic<int> videoSizeCounter = 0;
- connect(&sink, &QVideoSink::videoFrameChanged, [&](const QVideoFrame &frame) {
+ connect(&sink, &QVideoSink::videoFrameChanged, this, [&](const QVideoFrame &frame) {
QCOMPARE(sink.videoFrame(), frame);
QCOMPARE(sink.videoSize(), frame.size());
++videoFrameCounter;
- });
+ }, Qt::DirectConnection);
- connect(&sink, &QVideoSink::videoSizeChanged, [&]() {
+ connect(&sink, &QVideoSink::videoSizeChanged, this, [&]() {
QCOMPARE(sink.videoSize(), sink.videoFrame().size());
if (sink.videoSize().isValid()) // filter end frame
++videoSizeCounter;
- });
+ }, Qt::DirectConnection);
player.setSource(localVideoFile2);
player.play();
diff --git a/tests/auto/unit/multimedia/qaudiostatemachine/tst_qaudiostatemachine.cpp b/tests/auto/unit/multimedia/qaudiostatemachine/tst_qaudiostatemachine.cpp
index bc17ec821..22039f2e4 100644
--- a/tests/auto/unit/multimedia/qaudiostatemachine/tst_qaudiostatemachine.cpp
+++ b/tests/auto/unit/multimedia/qaudiostatemachine/tst_qaudiostatemachine.cpp
@@ -504,8 +504,10 @@ void tst_QAudioStateMachine::deleteNotifierInSlot_suppressesAdjacentSignal()
changeNotifier.reset();
};
- connect(changeNotifier.get(), &QAudioStateChangeNotifier::errorChanged, onSignal);
- connect(changeNotifier.get(), &QAudioStateChangeNotifier::stateChanged, onSignal);
+ connect(changeNotifier.get(), &QAudioStateChangeNotifier::errorChanged,
+ this, onSignal, Qt::DirectConnection);
+ connect(changeNotifier.get(), &QAudioStateChangeNotifier::stateChanged,
+ this, onSignal, Qt::DirectConnection);
stateMachine.stop(QAudio::IOError);
}
@@ -523,7 +525,7 @@ void tst_QAudioStateMachine::
int changesCount = 0; // non-atomic on purpose; it tests the guard protection
connect(&changeNotifier, &QAudioStateChangeNotifier::stateChanged,
- [&](QAudio::State) { ++signalsCount; });
+ this, [&](QAudio::State) { ++signalsCount; }, Qt::DirectConnection);
std::vector<std::atomic_int> counters(2);
@@ -590,7 +592,7 @@ void tst_QAudioStateMachine::
int changesCount = 0; // non-atomic on purpose; it tests the guard protection
connect(&changeNotifier, &QAudioStateChangeNotifier::stateChanged,
- [&](QAudio::State) { ++signalsCount; });
+ this, [&](QAudio::State) { ++signalsCount; }, Qt::DirectConnection);
std::vector<std::atomic_int> counters(2);