summaryrefslogtreecommitdiff
path: root/dev-qt/qtcore
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-06 03:18:56 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-06 03:18:56 +0000
commita2f130f3156ea1d203e99a781424790176b9b2b5 (patch)
tree10fbba06303ed3b478a8a39114e6b6127ef18dbb /dev-qt/qtcore
parent519f4aac6d5896fe0204e6429485f95240c7ff58 (diff)
gentoo auto-resync : 06:02:2023 - 03:18:56
Diffstat (limited to 'dev-qt/qtcore')
-rw-r--r--dev-qt/qtcore/Manifest1
-rw-r--r--dev-qt/qtcore/files/qtcore-5.15.8-fix-crash-w-debug.patch41
2 files changed, 42 insertions, 0 deletions
diff --git a/dev-qt/qtcore/Manifest b/dev-qt/qtcore/Manifest
index 224221cf38a9..0bf0e963bd70 100644
--- a/dev-qt/qtcore/Manifest
+++ b/dev-qt/qtcore/Manifest
@@ -1,3 +1,4 @@
+AUX qtcore-5.15.8-fix-crash-w-debug.patch 1427 BLAKE2B 3ef8d7e4fcd2969e6ce3931e0bd07fe7d410d18834bb2de7a760949dd4c822bb9942a4245d720a2736c4927ea536bc0a41efe3ac7e0913dd9b7ca35eb27d313b SHA512 dfdd1f30057498b0f3043faa84fda1239b17ecc02c3838a329cad46b157e91cb2cbbe488eeeebd761b0449e4c045e8a47e7354d081453bf6fe7f35a6989f30da
DIST qtbase-5.15-gentoo-patchset-3.tar.xz 3856 BLAKE2B 0752426f9bc2dfa1ab2bc246b29f5d00305df05175a7801d7d5eddacfa46fcb605d9a317547edc01d3ef339f6effc2fcee7549cb7aecced37f0098166c70dbe2 SHA512 2515bea53232e76ca3e40bdaf1dd52fdf452052a2f40002ee91360d1fcceea3c5c2f5a8d2a3bfc0f9c2bacd61460a632c5b351accd73fd37b64985593219148e
DIST qtbase-5.15.8-gentoo-kde-3.tar.xz 782344 BLAKE2B 115814a4d90ac286540cf6e50bd2b57baa8e0e327fc73c3ab06fe43ecd95e1e3739faecee5db112d95d17e4fb84494ad5557e70251f2c60142166715294bf366 SHA512 d50b0f02476ded9f053093ec15c5204a0ec664794dcc324996685f09400a2cbc76dc3fd0ebfc247ebd42fbe203b7d4c904e975fc985bf7928e43c6cd65f04f34
DIST qtbase-5.15.8-gentoo-kde-5.tar.xz 793372 BLAKE2B f486a0275fdf4da28a88ba40b7e6f227267fa05e8f466f734f720e792de1796501d5f1fb4427a84ca2d709bfa07abd695ad59210f7fd11227b1bf465484736b8 SHA512 f51d7ee2d121acda1141b9816197afc57ac0176a12acc08a93c2a793694afb734f8f1ad280a5bf95170cf912e32edb4a6612befeb4198fec78a7e50bbb6a61cd
diff --git a/dev-qt/qtcore/files/qtcore-5.15.8-fix-crash-w-debug.patch b/dev-qt/qtcore/files/qtcore-5.15.8-fix-crash-w-debug.patch
new file mode 100644
index 000000000000..74f5ed5c4886
--- /dev/null
+++ b/dev-qt/qtcore/files/qtcore-5.15.8-fix-crash-w-debug.patch
@@ -0,0 +1,41 @@
+From 0c0b34badb8a56f5c0d7d43c3847508774c8e553 Mon Sep 17 00:00:00 2001
+From: Harald Sitter <sitter@kde.org>
+Date: Mon, 2 Jan 2023 12:38:02 +0100
+Subject: [PATCH] correctly set up ref counting in
+ QThreadPool::tryStart(std::function)
+
+this function was inconsistent with the QThreadPool::tryStart(QRunnable)
+overload, where ref counting does get set up correctly. the lack of ref
+counting setup would later cause trouble because we assert the ref
+counting state all over QThreadPool. to prevent failed assertions we
+correctly set up ref counting now.
+
+this change is not applicable to Qt6 because the ref counting has
+already been removed there:
+https://github.com/qt/qtbase/commit/ecfda98d1f91c6a7da0d89826558d856cd88e670
+
+BUG: 449688
+---
+ src/corelib/thread/qthreadpool.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/corelib/thread/qthreadpool.cpp b/src/corelib/thread/qthreadpool.cpp
+index 40cc646519..8aa06a4c8f 100644
+--- a/src/corelib/thread/qthreadpool.cpp
++++ b/src/corelib/thread/qthreadpool.cpp
+@@ -602,8 +602,12 @@ bool QThreadPool::tryStart(std::function<void()> functionToRun)
+ return false;
+
+ QRunnable *runnable = QRunnable::create(std::move(functionToRun));
++ Q_ASSERT(runnable->ref == 0);
++ ++runnable->ref;
+ if (d->tryStart(runnable))
+ return true;
++ --runnable->ref;
++ Q_ASSERT(runnable->ref == 0);
+ delete runnable;
+ return false;
+ }
+--
+GitLab
+