Accepting request 969356 from KDE:Qt:5.15

- Add mitigate-FORTIFY_SOURCE-3.patch that should mitigate
  new -D_FORTIFY_SOURCE=3 level as analyzed in GCC bug:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105078. (forwarded request 969342 from marxin)

OBS-URL: https://build.opensuse.org/request/show/969356
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtbase?expand=0&rev=129
This commit is contained in:
Dominique Leuenberger 2022-04-14 15:23:39 +00:00 committed by Git OBS Bridge
commit 3d6e43ea89
3 changed files with 44 additions and 0 deletions

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Fri Apr 8 14:06:22 UTC 2022 - Martin Liška <mliska@suse.cz>
- Add mitigate-FORTIFY_SOURCE-3.patch that should mitigate
new -D_FORTIFY_SOURCE=3 level as analyzed in GCC bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105078.
-------------------------------------------------------------------
Mon Feb 14 10:44:42 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>

View File

@ -61,6 +61,8 @@ Patch12: 0001-Add-remote-print-queue-support.patch
# PATCH-FIX-OPENSUSE
Patch21: 0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch
Patch24: fix-fixqt4headers.patch
# PATCH-FIX-OPENSUSE -- Mitigate -D_FORTIFY_SOURCE=3 issue starting with GCC 12 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105078)
Patch25: mitigate-FORTIFY_SOURCE-3.patch
# patches 1000-2000 and above from upstream 5.15 branch #
# patches 2000-3000 and above from upstream qt6/dev branch #
# Not accepted yet, https://codereview.qt-project.org/c/qt/qtbase/+/255384

View File

@ -0,0 +1,35 @@
From: Martin Liška <mliska@suse.cz>
Subject: Mitigate issue with -D_FORTIFY_SOURCE=3 seen with GCC 12
GCC upstream bug for it:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105078
diff --git a/src/corelib/tools/qarraydata.h b/src/corelib/tools/qarraydata.h
index dcd95924..d01739e7 100644
--- a/src/corelib/tools/qarraydata.h
+++ b/src/corelib/tools/qarraydata.h
@@ -42,6 +42,7 @@
#include <QtCore/qrefcount.h>
#include <string.h>
+#include <cstdint>
QT_BEGIN_NAMESPACE
@@ -58,14 +59,14 @@ struct Q_CORE_EXPORT QArrayData
{
Q_ASSERT(size == 0
|| offset < 0 || size_t(offset) >= sizeof(QArrayData));
- return reinterpret_cast<char *>(this) + offset;
+ return reinterpret_cast<void *> (reinterpret_cast<uintptr_t>(this) + offset);
}
const void *data() const
{
Q_ASSERT(size == 0
|| offset < 0 || size_t(offset) >= sizeof(QArrayData));
- return reinterpret_cast<const char *>(this) + offset;
+ return reinterpret_cast<void *> (reinterpret_cast<uintptr_t>(this) + offset);
}
// This refers to array data mutability, not "header data" represented by