forked from pool/libqt5-qtbase
Accepting request 985470 from KDE:Qt:5.15
Qt 5.15.5 with patch collection + qtscript 5.15.10 (forwarded request 985459 from favogt) OBS-URL: https://build.opensuse.org/request/show/985470 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtbase?expand=0&rev=131
This commit is contained in:
commit
8ec7751249
@ -1,4 +1,4 @@
|
|||||||
From d3faa880d19d9bf5b411dc81c0d5d881a323997d Mon Sep 17 00:00:00 2001
|
From 81f14d2b93f2691a5887207b137fdffb7238d87b Mon Sep 17 00:00:00 2001
|
||||||
From: Antonio Larrosa <larrosa@kde.org>
|
From: Antonio Larrosa <larrosa@kde.org>
|
||||||
Date: Tue, 6 Jun 2017 16:34:32 +0200
|
Date: Tue, 6 Jun 2017 16:34:32 +0200
|
||||||
Subject: [PATCH] Add remote print queue support
|
Subject: [PATCH] Add remote print queue support
|
||||||
@ -9,19 +9,19 @@ is opened in order to search for print queues . Because of this delay,
|
|||||||
the remote print queue discovery is disabled by default and can be enabled
|
the remote print queue discovery is disabled by default and can be enabled
|
||||||
by setting the QT_ENABLE_PRINTER_DISCOVERY environment variable to 1.
|
by setting the QT_ENABLE_PRINTER_DISCOVERY environment variable to 1.
|
||||||
|
|
||||||
The commit to Qt (which enabled the discovery by default) has
|
The commit to Qt (which enabled the discovery by default) has
|
||||||
a Change-Id: Ib70715d331e8f380a3c9039011bb8521986652aa
|
a Change-Id: Ib70715d331e8f380a3c9039011bb8521986652aa
|
||||||
---
|
---
|
||||||
src/plugins/printsupport/cups/qcupsprintengine.cpp | 35 +++++++-
|
.../printsupport/cups/qcupsprintengine.cpp | 35 ++++++-
|
||||||
.../printsupport/cups/qcupsprintersupport.cpp | 95 ++++++++++++++++++++--
|
.../printsupport/cups/qcupsprintersupport.cpp | 95 +++++++++++++++++--
|
||||||
.../printsupport/cups/qcupsprintersupport_p.h | 8 ++
|
.../printsupport/cups/qcupsprintersupport_p.h | 8 ++
|
||||||
src/plugins/printsupport/cups/qppdprintdevice.cpp | 33 +++++++-
|
.../printsupport/cups/qppdprintdevice.cpp | 30 +++++-
|
||||||
4 files changed, 160 insertions(+), 11 deletions(-)
|
4 files changed, 157 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
diff --git a/src/plugins/printsupport/cups/qcupsprintengine.cpp b/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
||||||
===================================================================
|
index 1f9cbc4565..522cfc81b6 100644
|
||||||
--- qtbase-everywhere-src-5.14.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
--- a/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
||||||
+++ qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
+++ b/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
||||||
@@ -48,6 +48,7 @@
|
@@ -48,6 +48,7 @@
|
||||||
#include <qbuffer.h>
|
#include <qbuffer.h>
|
||||||
#include "private/qcups_p.h" // Only needed for PPK_CupsOptions
|
#include "private/qcups_p.h" // Only needed for PPK_CupsOptions
|
||||||
@ -30,7 +30,7 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
|
|
||||||
#include <cups/cups.h>
|
#include <cups/cups.h>
|
||||||
|
|
||||||
@@ -252,8 +253,40 @@ void QCupsPrintEnginePrivate::closePrint
|
@@ -254,8 +255,40 @@ void QCupsPrintEnginePrivate::closePrintDevice()
|
||||||
const auto parts = printerName.splitRef(QLatin1Char('/'));
|
const auto parts = printerName.splitRef(QLatin1Char('/'));
|
||||||
const auto printerOriginalName = parts.at(0);
|
const auto printerOriginalName = parts.at(0);
|
||||||
cups_option_t* optPtr = cupsOptStruct.size() ? &cupsOptStruct.first() : 0;
|
cups_option_t* optPtr = cupsOptStruct.size() ? &cupsOptStruct.first() : 0;
|
||||||
@ -72,10 +72,10 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
|
|
||||||
QFile::remove(tempFile);
|
QFile::remove(tempFile);
|
||||||
}
|
}
|
||||||
Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
diff --git a/src/plugins/printsupport/cups/qcupsprintersupport.cpp b/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
||||||
===================================================================
|
index 1131d43f64..0806ba3abd 100644
|
||||||
--- qtbase-everywhere-src-5.14.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
--- a/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
||||||
+++ qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
+++ b/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
||||||
@@ -61,6 +61,35 @@
|
@@ -61,6 +61,35 @@
|
||||||
# include <cups/language.h>
|
# include <cups/language.h>
|
||||||
#endif
|
#endif
|
||||||
@ -112,7 +112,7 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
#if QT_CONFIG(dialogbuttonbox)
|
#if QT_CONFIG(dialogbuttonbox)
|
||||||
@@ -159,17 +188,35 @@ QPrintDevice QCupsPrinterSupport::create
|
@@ -159,11 +188,26 @@ QPrintDevice QCupsPrinterSupport::createPrintDevice(const QString &id)
|
||||||
|
|
||||||
QStringList QCupsPrinterSupport::availablePrintDeviceIds() const
|
QStringList QCupsPrinterSupport::availablePrintDeviceIds() const
|
||||||
{
|
{
|
||||||
@ -141,9 +141,11 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
+ list.reserve(qt_cups_num_printers);
|
+ list.reserve(qt_cups_num_printers);
|
||||||
+ for (int i = 0; i < qt_cups_num_printers; ++i) {
|
+ for (int i = 0; i < qt_cups_num_printers; ++i) {
|
||||||
QString printerId = QString::fromLocal8Bit(dests[i].name);
|
QString printerId = QString::fromLocal8Bit(dests[i].name);
|
||||||
if (dests[i].instance)
|
if (dests[i].instance) {
|
||||||
printerId += QLatin1Char('/') + QString::fromLocal8Bit(dests[i].instance);
|
printerId += QLatin1Char('/') + QString::fromLocal8Bit(dests[i].instance);
|
||||||
list.append(printerId);
|
@@ -172,7 +216,10 @@ QStringList QCupsPrinterSupport::availablePrintDeviceIds() const
|
||||||
|
list.append(printerId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
- cupsFreeDests(count, dests);
|
- cupsFreeDests(count, dests);
|
||||||
+ if (!enablePrinterDiscovery) {
|
+ if (!enablePrinterDiscovery) {
|
||||||
@ -153,7 +155,7 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -182,8 +229,18 @@ QString QCupsPrinterSupport::staticDefau
|
@@ -185,8 +232,18 @@ QString QCupsPrinterSupport::staticDefaultPrintDeviceId()
|
||||||
{
|
{
|
||||||
QString printerId;
|
QString printerId;
|
||||||
cups_dest_t *dests;
|
cups_dest_t *dests;
|
||||||
@ -174,7 +176,7 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
if (dests[i].is_default) {
|
if (dests[i].is_default) {
|
||||||
printerId = QString::fromLocal8Bit(dests[i].name);
|
printerId = QString::fromLocal8Bit(dests[i].name);
|
||||||
if (dests[i].instance) {
|
if (dests[i].instance) {
|
||||||
@@ -192,8 +249,30 @@ QString QCupsPrinterSupport::staticDefau
|
@@ -195,8 +252,30 @@ QString QCupsPrinterSupport::staticDefaultPrintDeviceId()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -206,10 +208,10 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
+
|
+
|
||||||
+
|
+
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
diff --git a/src/plugins/printsupport/cups/qcupsprintersupport_p.h b/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
||||||
===================================================================
|
index c2b4895c7f..9531a0c368 100644
|
||||||
--- qtbase-everywhere-src-5.14.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
--- a/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
||||||
+++ qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
+++ b/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
||||||
@@ -56,6 +56,8 @@
|
@@ -56,6 +56,8 @@
|
||||||
|
|
||||||
#include <QtCore/qstringlist.h>
|
#include <QtCore/qstringlist.h>
|
||||||
@ -234,11 +236,11 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qcupspri
|
|||||||
};
|
};
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
diff --git a/src/plugins/printsupport/cups/qppdprintdevice.cpp b/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
||||||
===================================================================
|
index 8bfa239dbe..b38a2081bc 100644
|
||||||
--- qtbase-everywhere-src-5.14.0-alpha.orig/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
--- a/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
||||||
+++ qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
+++ b/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
||||||
@@ -65,10 +65,36 @@ QPpdPrintDevice::QPpdPrintDevice(const Q
|
@@ -65,10 +65,36 @@ QPpdPrintDevice::QPpdPrintDevice(const QString &id)
|
||||||
if (parts.size() > 1)
|
if (parts.size() > 1)
|
||||||
m_cupsInstance = parts.at(1).toUtf8();
|
m_cupsInstance = parts.at(1).toUtf8();
|
||||||
|
|
||||||
@ -277,3 +279,6 @@ Index: qtbase-everywhere-src-5.14.0-alpha/src/plugins/printsupport/cups/qppdprin
|
|||||||
if (ppdFile) {
|
if (ppdFile) {
|
||||||
m_ppd = ppdOpenFile(ppdFile);
|
m_ppd = ppdOpenFile(ppdFile);
|
||||||
unlink(ppdFile);
|
unlink(ppdFile);
|
||||||
|
--
|
||||||
|
2.36.1
|
||||||
|
|
||||||
|
@ -1,75 +0,0 @@
|
|||||||
From ec68c541a72bde122a1ab5ba89f41b58c370537f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
|
||||||
Date: Mon, 14 Jun 2021 14:38:27 +0200
|
|
||||||
Subject: [PATCH] H2: remove a rather useless limit on the number of streams
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
SETTINGS for max concurrect number of streams is 'one direction' - this
|
|
||||||
is how our peer conveys the possible number of streams _we_ can open,
|
|
||||||
not _them_. If they choose to have it unlimited - let it be so.
|
|
||||||
|
|
||||||
It's possible to send 0 as maximum number, also, it's possible to
|
|
||||||
reduce the maximum compared to initial at some point - then I have
|
|
||||||
to avoid integer overflows.
|
|
||||||
|
|
||||||
Pick-to: 6.2
|
|
||||||
Pick-to: 6.1
|
|
||||||
Pick-to: 5.15
|
|
||||||
Fixes: QTBUG-94470
|
|
||||||
Change-Id: Ia02247acbaedd70998a4cab02082ba10f45cf78c
|
|
||||||
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
|
||||||
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
|
||||||
(cherry picked from commit 46940ca73791e87e2366b80ac2884b3bcce716ce)
|
|
||||||
---
|
|
||||||
src/network/access/http2/http2protocol_p.h | 3 ---
|
|
||||||
src/network/access/qhttp2protocolhandler.cpp | 10 +++-------
|
|
||||||
2 files changed, 3 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/network/access/http2/http2protocol_p.h b/src/network/access/http2/http2protocol_p.h
|
|
||||||
index b0af5aa919..ed5f2bf561 100644
|
|
||||||
--- a/src/network/access/http2/http2protocol_p.h
|
|
||||||
+++ b/src/network/access/http2/http2protocol_p.h
|
|
||||||
@@ -133,9 +133,6 @@ enum Http2PredefinedParameters
|
|
||||||
maxPayloadSize = (1 << 24) - 1, // HTTP/2 6.5.2
|
|
||||||
|
|
||||||
defaultSessionWindowSize = 65535, // HTTP/2 6.5.2
|
|
||||||
- // Using 1000 (rather arbitrarily), just to
|
|
||||||
- // impose *some* upper limit:
|
|
||||||
- maxPeerConcurrentStreams = 1000,
|
|
||||||
maxConcurrentStreams = 100 // HTTP/2, 6.5.2
|
|
||||||
};
|
|
||||||
|
|
||||||
diff --git a/src/network/access/qhttp2protocolhandler.cpp b/src/network/access/qhttp2protocolhandler.cpp
|
|
||||||
index f513139304..21f1c91e29 100644
|
|
||||||
--- a/src/network/access/qhttp2protocolhandler.cpp
|
|
||||||
+++ b/src/network/access/qhttp2protocolhandler.cpp
|
|
||||||
@@ -393,7 +393,8 @@ bool QHttp2ProtocolHandler::sendRequest()
|
|
||||||
initReplyFromPushPromise(message, key);
|
|
||||||
}
|
|
||||||
|
|
||||||
- const auto streamsToUse = std::min<quint32>(maxConcurrentStreams - activeStreams.size(),
|
|
||||||
+ const auto streamsToUse = std::min<quint32>(maxConcurrentStreams > activeStreams.size()
|
|
||||||
+ ? maxConcurrentStreams - activeStreams.size() : 0,
|
|
||||||
requests.size());
|
|
||||||
auto it = requests.begin();
|
|
||||||
for (quint32 i = 0; i < streamsToUse; ++i) {
|
|
||||||
@@ -1084,13 +1085,8 @@ bool QHttp2ProtocolHandler::acceptSetting(Http2::Settings identifier, quint32 ne
|
|
||||||
QMetaObject::invokeMethod(this, "resumeSuspendedStreams", Qt::QueuedConnection);
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (identifier == Settings::MAX_CONCURRENT_STREAMS_ID) {
|
|
||||||
- if (newValue > maxPeerConcurrentStreams) {
|
|
||||||
- connectionError(PROTOCOL_ERROR, "SETTINGS invalid number of concurrent streams");
|
|
||||||
- return false;
|
|
||||||
- }
|
|
||||||
+ if (identifier == Settings::MAX_CONCURRENT_STREAMS_ID)
|
|
||||||
maxConcurrentStreams = newValue;
|
|
||||||
- }
|
|
||||||
|
|
||||||
if (identifier == Settings::MAX_FRAME_SIZE_ID) {
|
|
||||||
if (newValue < Http2::minPayloadLimit || newValue > Http2::maxPayloadSize) {
|
|
||||||
--
|
|
||||||
2.36.1
|
|
||||||
|
|
@ -1,241 +0,0 @@
|
|||||||
From ab3e0383b9de49c61bc49f5fbef80d1409fcafde Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thiago Macieira <thiago.macieira@intel.com>
|
|
||||||
Date: Mon, 31 Jan 2022 11:00:19 -0800
|
|
||||||
Subject: [PATCH] QProcess/Unix: ensure we don't accidentally execute something
|
|
||||||
from CWD
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Unless "." (or the empty string) is in $PATH, we're not supposed to find
|
|
||||||
executables in the current directory. This is how the Unix shells behave
|
|
||||||
and we match their behavior. It's also the behavior Qt had prior to 5.9
|
|
||||||
(commit 28666d167aa8e602c0bea25ebc4d51b55005db13). On Windows, searching
|
|
||||||
the current directory is the norm, so we keep that behavior.
|
|
||||||
|
|
||||||
This commit does not add an explicit check for an empty return from
|
|
||||||
QStandardPaths::findExecutable(). Instead, we allow that empty string to
|
|
||||||
go all the way to execve(2), which will fail with ENOENT. We could catch
|
|
||||||
it early, before fork(2), but why add code for the error case?
|
|
||||||
|
|
||||||
See https://kde.org/info/security/advisory-20220131-1.txt
|
|
||||||
|
|
||||||
[ChangeLog][Important Behavior Changes] When passed a simple program
|
|
||||||
name with no slashes, QProcess on Unix systems will now only search the
|
|
||||||
current directory if "." is one of the entries in the PATH environment
|
|
||||||
variable. This bug fix restores the behavior QProcess had before Qt 5.9.
|
|
||||||
If launching an executable in the directory set by setWorkingDirectory()
|
|
||||||
or inherited from the parent is intended, pass a program name starting
|
|
||||||
with "./". For more information and best practices about finding an
|
|
||||||
executable, see QProcess' documentation.
|
|
||||||
|
|
||||||
Pick-to: 5.15 6.2 6.3
|
|
||||||
Change-Id: I54f205f6b7314351b078fffd16cf7013c97ee9fb
|
|
||||||
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
||||||
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
|
||||||
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
||||||
(cherry picked from commit 29fceed2ffb41954a63001414bd042611f2d4980)
|
|
||||||
|
|
||||||
Note: This currently breaks various autotests, as they rely on the test
|
|
||||||
helpers (same directory as the test) to be in $PATH. In Qt 6, the CMake
|
|
||||||
test code sets this explicitly, which is not the case in Qt 5 (yet).
|
|
||||||
---
|
|
||||||
src/corelib/io/qprocess_unix.cpp | 24 ++---
|
|
||||||
.../auto/corelib/io/qprocess/tst_qprocess.cpp | 93 ++++++++++++++++++-
|
|
||||||
.../kernel/qapplication/tst_qapplication.cpp | 4 +-
|
|
||||||
3 files changed, 107 insertions(+), 14 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/corelib/io/qprocess_unix.cpp b/src/corelib/io/qprocess_unix.cpp
|
|
||||||
index 50390e57f5..5bd3b7f297 100644
|
|
||||||
--- a/src/corelib/io/qprocess_unix.cpp
|
|
||||||
+++ b/src/corelib/io/qprocess_unix.cpp
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
/****************************************************************************
|
|
||||||
**
|
|
||||||
** Copyright (C) 2016 The Qt Company Ltd.
|
|
||||||
-** Copyright (C) 2016 Intel Corporation.
|
|
||||||
+** Copyright (C) 2022 Intel Corporation.
|
|
||||||
** Contact: https://www.qt.io/licensing/
|
|
||||||
**
|
|
||||||
** This file is part of the QtCore module of the Qt Toolkit.
|
|
||||||
@@ -422,14 +422,15 @@ void QProcessPrivate::startProcess()
|
|
||||||
// Add the program name to the argument list.
|
|
||||||
argv[0] = nullptr;
|
|
||||||
if (!program.contains(QLatin1Char('/'))) {
|
|
||||||
+ // findExecutable() returns its argument if it's an absolute path,
|
|
||||||
+ // otherwise it searches $PATH; returns empty if not found (we handle
|
|
||||||
+ // that case much later)
|
|
||||||
const QString &exeFilePath = QStandardPaths::findExecutable(program);
|
|
||||||
- if (!exeFilePath.isEmpty()) {
|
|
||||||
- const QByteArray &tmp = QFile::encodeName(exeFilePath);
|
|
||||||
- argv[0] = ::strdup(tmp.constData());
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- if (!argv[0])
|
|
||||||
+ const QByteArray &tmp = QFile::encodeName(exeFilePath);
|
|
||||||
+ argv[0] = ::strdup(tmp.constData());
|
|
||||||
+ } else {
|
|
||||||
argv[0] = ::strdup(encodedProgramName.constData());
|
|
||||||
+ }
|
|
||||||
|
|
||||||
// Add every argument to the list
|
|
||||||
for (int i = 0; i < arguments.count(); ++i)
|
|
||||||
@@ -985,11 +986,12 @@ bool QProcessPrivate::startDetached(qint64 *pid)
|
|
||||||
|
|
||||||
QByteArray tmp;
|
|
||||||
if (!program.contains(QLatin1Char('/'))) {
|
|
||||||
+ // findExecutable() returns its argument if it's an absolute path,
|
|
||||||
+ // otherwise it searches $PATH; returns empty if not found (we handle
|
|
||||||
+ // that case much later)
|
|
||||||
const QString &exeFilePath = QStandardPaths::findExecutable(program);
|
|
||||||
- if (!exeFilePath.isEmpty())
|
|
||||||
- tmp = QFile::encodeName(exeFilePath);
|
|
||||||
- }
|
|
||||||
- if (tmp.isEmpty())
|
|
||||||
+ tmp = QFile::encodeName(exeFilePath);
|
|
||||||
+ } else
|
|
||||||
tmp = QFile::encodeName(program);
|
|
||||||
argv[0] = tmp.data();
|
|
||||||
|
|
||||||
diff --git a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp
|
|
||||||
index bc9df3f1f3..33051d3803 100644
|
|
||||||
--- a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp
|
|
||||||
+++ b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
/****************************************************************************
|
|
||||||
**
|
|
||||||
** Copyright (C) 2020 The Qt Company Ltd.
|
|
||||||
-** Copyright (C) 2020 Intel Corporation.
|
|
||||||
+** Copyright (C) 2022 Intel Corporation.
|
|
||||||
** Contact: https://www.qt.io/licensing/
|
|
||||||
**
|
|
||||||
** This file is part of the test suite of the Qt Toolkit.
|
|
||||||
@@ -149,6 +149,8 @@ private slots:
|
|
||||||
void startStopStartStopBuffers();
|
|
||||||
void processEventsInAReadyReadSlot_data();
|
|
||||||
void processEventsInAReadyReadSlot();
|
|
||||||
+ void startFromCurrentWorkingDir_data();
|
|
||||||
+ void startFromCurrentWorkingDir();
|
|
||||||
|
|
||||||
// keep these at the end, since they use lots of processes and sometimes
|
|
||||||
// caused obscure failures to occur in tests that followed them (esp. on the Mac)
|
|
||||||
@@ -2732,5 +2734,94 @@ void tst_QProcess::finishProcessBeforeReadingDone_deprecated()
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+enum class ChdirMode {
|
|
||||||
+ None = 0,
|
|
||||||
+ InParent,
|
|
||||||
+ InChild
|
|
||||||
+};
|
|
||||||
+Q_DECLARE_METATYPE(ChdirMode)
|
|
||||||
+
|
|
||||||
+void tst_QProcess::startFromCurrentWorkingDir_data()
|
|
||||||
+{
|
|
||||||
+ qRegisterMetaType<ChdirMode>();
|
|
||||||
+ QTest::addColumn<QString>("programPrefix");
|
|
||||||
+ QTest::addColumn<ChdirMode>("chdirMode");
|
|
||||||
+ QTest::addColumn<bool>("success");
|
|
||||||
+
|
|
||||||
+ constexpr bool IsWindows = true
|
|
||||||
+#ifdef Q_OS_UNIX
|
|
||||||
+ && false
|
|
||||||
+#endif
|
|
||||||
+ ;
|
|
||||||
+
|
|
||||||
+ // baseline: trying to execute the directory, this can't possibly succeed!
|
|
||||||
+ QTest::newRow("plain-same-cwd") << QString() << ChdirMode::None << false;
|
|
||||||
+
|
|
||||||
+ // cross-platform behavior: neither OS searches the setWorkingDirectory()
|
|
||||||
+ // dir without "./"
|
|
||||||
+ QTest::newRow("plain-child-chdir") << QString() << ChdirMode::InChild << false;
|
|
||||||
+
|
|
||||||
+ // cross-platform behavior: both OSes search the parent's CWD with "./"
|
|
||||||
+ QTest::newRow("prefixed-parent-chdir") << "./" << ChdirMode::InParent << true;
|
|
||||||
+
|
|
||||||
+ // opposite behaviors: Windows searches the parent's CWD and Unix searches
|
|
||||||
+ // the child's with "./"
|
|
||||||
+ QTest::newRow("prefixed-child-chdir") << "./" << ChdirMode::InChild << !IsWindows;
|
|
||||||
+
|
|
||||||
+ // Windows searches the parent's CWD without "./"
|
|
||||||
+ QTest::newRow("plain-parent-chdir") << QString() << ChdirMode::InParent << IsWindows;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+void tst_QProcess::startFromCurrentWorkingDir()
|
|
||||||
+{
|
|
||||||
+ QFETCH(QString, programPrefix);
|
|
||||||
+ QFETCH(ChdirMode, chdirMode);
|
|
||||||
+ QFETCH(bool, success);
|
|
||||||
+
|
|
||||||
+ QProcess process;
|
|
||||||
+ qRegisterMetaType<QProcess::ProcessError>();
|
|
||||||
+ QSignalSpy errorSpy(&process, &QProcess::errorOccurred);
|
|
||||||
+ QVERIFY(errorSpy.isValid());
|
|
||||||
+
|
|
||||||
+ // both the dir name and the executable name
|
|
||||||
+ const QString target = QStringLiteral("testProcessNormal");
|
|
||||||
+ process.setProgram(programPrefix + target);
|
|
||||||
+
|
|
||||||
+#ifdef Q_OS_UNIX
|
|
||||||
+ // Reset PATH, to be sure it doesn't contain . or the empty path.
|
|
||||||
+ // We can't do this on Windows because DLLs are searched in PATH
|
|
||||||
+ // and Windows always searches "." anyway.
|
|
||||||
+ auto restoreEnv = qScopeGuard([old = qgetenv("PATH")] {
|
|
||||||
+ qputenv("PATH", old);
|
|
||||||
+ });
|
|
||||||
+ qputenv("PATH", "/");
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+ switch (chdirMode) {
|
|
||||||
+ case ChdirMode::InParent: {
|
|
||||||
+ auto restoreCwd = qScopeGuard([old = QDir::currentPath()] {
|
|
||||||
+ QDir::setCurrent(old);
|
|
||||||
+ });
|
|
||||||
+ QVERIFY(QDir::setCurrent(target));
|
|
||||||
+ process.start();
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+ case ChdirMode::InChild:
|
|
||||||
+ process.setWorkingDirectory(target);
|
|
||||||
+ Q_FALLTHROUGH();
|
|
||||||
+ case ChdirMode::None:
|
|
||||||
+ process.start();
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ QCOMPARE(process.waitForStarted(), success);
|
|
||||||
+ QCOMPARE(errorSpy.count(), int(!success));
|
|
||||||
+ if (success) {
|
|
||||||
+ QVERIFY(process.waitForFinished());
|
|
||||||
+ } else {
|
|
||||||
+ QCOMPARE(process.error(), QProcess::FailedToStart);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
QTEST_MAIN(tst_QProcess)
|
|
||||||
#include "tst_qprocess.moc"
|
|
||||||
diff --git a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp
|
|
||||||
index e159e22d2a..820831f9c5 100644
|
|
||||||
--- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp
|
|
||||||
+++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp
|
|
||||||
@@ -1449,7 +1449,7 @@ void tst_QApplication::desktopSettingsAware()
|
|
||||||
{
|
|
||||||
#if QT_CONFIG(process)
|
|
||||||
QProcess testProcess;
|
|
||||||
- testProcess.start("desktopsettingsaware_helper");
|
|
||||||
+ testProcess.start("./desktopsettingsaware_helper");
|
|
||||||
QVERIFY2(testProcess.waitForStarted(),
|
|
||||||
qPrintable(QString::fromLatin1("Cannot start 'desktopsettingsaware_helper': %1").arg(testProcess.errorString())));
|
|
||||||
QVERIFY(testProcess.waitForFinished(10000));
|
|
||||||
@@ -2365,7 +2365,7 @@ void tst_QApplication::qtbug_12673()
|
|
||||||
#if QT_CONFIG(process)
|
|
||||||
QProcess testProcess;
|
|
||||||
QStringList arguments;
|
|
||||||
- testProcess.start("modal_helper", arguments);
|
|
||||||
+ testProcess.start("./modal_helper", arguments);
|
|
||||||
QVERIFY2(testProcess.waitForStarted(),
|
|
||||||
qPrintable(QString::fromLatin1("Cannot start 'modal_helper': %1").arg(testProcess.errorString())));
|
|
||||||
QVERIFY(testProcess.waitForFinished(20000));
|
|
||||||
--
|
|
||||||
2.34.0
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
|||||||
From e08cc7a0cec3c6fb69415b8e76e70b37088b561c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabian Vogt <fvogt@suse.de>
|
|
||||||
Date: Mon, 21 Jun 2021 12:29:39 +0200
|
|
||||||
Subject: [PATCH] Revert "Bump version"
|
|
||||||
|
|
||||||
This reverts commit 6344955d17e17e2398720fe60c34cfc2a4a95208.
|
|
||||||
---
|
|
||||||
.qmake.conf | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/.qmake.conf b/.qmake.conf
|
|
||||||
index 1bf1a80475..9476d20099 100644
|
|
||||||
--- a/.qmake.conf
|
|
||||||
+++ b/.qmake.conf
|
|
||||||
@@ -6,4 +6,4 @@ DEFINES += QT_NO_JAVA_STYLE_ITERATORS
|
|
||||||
QT_SOURCE_TREE = $$PWD
|
|
||||||
QT_BUILD_TREE = $$shadowed($$PWD)
|
|
||||||
|
|
||||||
-MODULE_VERSION = 5.15.3
|
|
||||||
+MODULE_VERSION = 5.15.2
|
|
||||||
--
|
|
||||||
2.20.1
|
|
||||||
|
|
4
_service
4
_service
@ -1,12 +1,12 @@
|
|||||||
<services>
|
<services>
|
||||||
<service name="obs_scm" mode="disabled">
|
<service name="obs_scm" mode="disabled">
|
||||||
<param name="changesgenerate">enable</param>
|
<param name="changesgenerate">enable</param>
|
||||||
<param name="versionformat">5.15.2+kde@TAG_OFFSET@</param>
|
<param name="versionformat">5.15.5+kde@TAG_OFFSET@</param>
|
||||||
<param name="url">https://invent.kde.org/qt/qt/qtbase.git</param>
|
<param name="url">https://invent.kde.org/qt/qt/qtbase.git</param>
|
||||||
<param name="scm">git</param>
|
<param name="scm">git</param>
|
||||||
<param name="filename">qtbase-everywhere-src</param>
|
<param name="filename">qtbase-everywhere-src</param>
|
||||||
<param name="revision">kde/5.15</param>
|
<param name="revision">kde/5.15</param>
|
||||||
<param name="parent-tag">v5.15.2</param>
|
<param name="parent-tag">v5.15.5-lts-lgpl</param>
|
||||||
<param name="changesgenerate">enable</param>
|
<param name="changesgenerate">enable</param>
|
||||||
</service>
|
</service>
|
||||||
<service name="set_version" mode="disabled"/>
|
<service name="set_version" mode="disabled"/>
|
||||||
|
@ -1,3 +1,376 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jun 27 12:10:11 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||||
|
|
||||||
|
- Update to version 5.15.5+kde165, rebased upstream:
|
||||||
|
* QArrayData: fix UB via reinterpret_cast (crash with FORTIFY_SOURCE=3)
|
||||||
|
* Fix compile of tst_qimage in Qt5
|
||||||
|
* SQLite driver: fix crash when binding a QByteArray/QString
|
||||||
|
* H2: remove a rather useless limit on the number of streams
|
||||||
|
* Revert "Qt xcb: remove false detects of Qt::GroupSwitchModifier"
|
||||||
|
* Revert "Windows: Add synthesized fonts also when there is a style name"
|
||||||
|
* Revert "Android: Place cursor correctly on screen when editing"
|
||||||
|
* QAbstractButton/QComboBox/QGroupBox: static_cast event->key() to Qt::Key
|
||||||
|
* Widgets: use QPlatformTheme::ButtonPressKeys for pressing buttons
|
||||||
|
* QBuffer: add missing <limits> include
|
||||||
|
* QBuffer: fail early in seek() beyond QByteArray's max capacity
|
||||||
|
* xcb: fix cursorTheme update issue
|
||||||
|
* QDBusMenuConnection: Close open D-Bus connection
|
||||||
|
* Fix QGuiApplication command line options documentation for X11
|
||||||
|
* QColorSpace: Guard against division by zero
|
||||||
|
* Preserve QImage metadata when converting format with color table
|
||||||
|
* Unicode: fix the grapheme clustering algorithm
|
||||||
|
* Ignore window icon in XCB when its size exceeds maximum request length
|
||||||
|
* QAbstractItemDelegate: fix rect given to tooltip handing
|
||||||
|
* QXmlStreamReader: fix integer truncation (qint64 → int)
|
||||||
|
* QShader: fix memory leak in detach()
|
||||||
|
* QDesktopServices: fix ABA problem in QOpenUrlHandlerRegistry
|
||||||
|
* Unix: Correctly update options pane for PDF printer
|
||||||
|
* JSON: When clearing duplicate object entries, also clear containers
|
||||||
|
* Remove unused internal flag from raster painting engine
|
||||||
|
* CUPS: Add support for accessible IPP printers
|
||||||
|
* Initialize m_exclusive in QGtk3MenuItem constructor
|
||||||
|
* Fix data race in QCoreApplicationPrivate::sendThroughApplicationEventFilters()
|
||||||
|
* Fix a leak of fallback dialog helper in xdgdesktopportal
|
||||||
|
* QCOMPARE/QVERIFY: fix huge pessimisation in QTestResult
|
||||||
|
* QPushButton/fusion style: don't ignore QIcon::On icon
|
||||||
|
* QAbstractItemModel: fix persistent index corruption when moving columns
|
||||||
|
* Fix data race in QObject::moveToThread()
|
||||||
|
* QReadWriteLock: fix data race in stateForWaitCondition()
|
||||||
|
* QReadWriteLock: fix another data race in stateForWaitCondition()
|
||||||
|
* QReadWriteLock: fix data race in dtor
|
||||||
|
* Revert "a11y: Do not cache classes that don't have a factory plugin"
|
||||||
|
* Prevent crashing when FcFontList fails
|
||||||
|
* Fix race condition in futex-based QSemaphore
|
||||||
|
* Fix a QDBusConnection crash with pending calls when connection is closed
|
||||||
|
* Revert "Support family names that end/start with space"
|
||||||
|
* QProcess/Unix: ensure we don't accidentally execute something from CWD
|
||||||
|
* Fix compile with Qt5: Use QString::mid instead of QString::sliced
|
||||||
|
* testlib/qasciikey: Add keypad navigation keys
|
||||||
|
* QGnomeTheme: remove unneeded Q_D
|
||||||
|
* QGnomeTheme: Allow Space, Return, Enter and Select to press buttons
|
||||||
|
* QPA: add ButtonPressKeys ThemeHint
|
||||||
|
* Update bundled zlib to version 1.2.12
|
||||||
|
* QAction: Add NOTIFY changed declaration to priority property
|
||||||
|
* QHostInfo/Unix: Fix resolv never unloading
|
||||||
|
* QCompleter: fix crash when setting the same model twice
|
||||||
|
* Windows: use QSystemLibrary instead of LoadLibrary directly
|
||||||
|
* Qt namespace: fix QT_Q_FLAG declaration for Qt::MouseEventFlags
|
||||||
|
* Sync QPrinter orientation when PageSetup Orientation selected
|
||||||
|
* When clearing QPixmapCache, stop its flushing timer
|
||||||
|
* QLabel::setPixmap(): remove the no-op self-masking
|
||||||
|
* QFreeList: replace a Q_ASSERT(false) with Q_UNREACHABLE()
|
||||||
|
* [qgenericunixservices] Consider kde-open5 for opening URLs
|
||||||
|
* Fix check for malformed input when decoding translations
|
||||||
|
* Test for nullptr before dereferencing the screen
|
||||||
|
* Check for null driver() before trying to exec()
|
||||||
|
* Fix crash when text shaping fails
|
||||||
|
* Make QCursor::setPos() use the correct screen
|
||||||
|
* Close leak of QOCIDateTime object
|
||||||
|
* Fix UI mismatch when QPrinter::setDuplex
|
||||||
|
* xcb: fix a typo for WindowTypes
|
||||||
|
* QPkmHandler: make const what it never modified
|
||||||
|
* Respect AT_SPI_BUS_ADDRESS env var on Linux
|
||||||
|
* Fix integer overflow for broken QPainterPaths
|
||||||
|
* QDesktopServices: fix UB (data race on handlers)
|
||||||
|
* Make indicator-application hack work in flatpak
|
||||||
|
* Fix infinite loop in dash stroker
|
||||||
|
* QVersionNumber: remove "pure" declaration from fromString()
|
||||||
|
* Android: Fix Application becomes unresponsive issue
|
||||||
|
* Fix the crashes when animated QTreeWidgetItems are hidden
|
||||||
|
* Add test for QTranslator::load() translation file lookup algorithm
|
||||||
|
* QComboBox: add space for scrollbar if needed after showing popup
|
||||||
|
* QComboBox: propagate style change on widget to internal container
|
||||||
|
* QLocalSocket: fix inclusions in namespaced builds
|
||||||
|
* PCRE2: upgrade to 10.37
|
||||||
|
* minor: Clean up areMetricsTooLarge() conditions
|
||||||
|
* wasm: fix unicode keyboard handling
|
||||||
|
* Blacklist tst_QAccessibilityMac::notificationsTest
|
||||||
|
* Let the h2 test server both send and receive DATA frames
|
||||||
|
* Android: Reset m_usePrimaryClip when clearing the clip data
|
||||||
|
* Android: Remove NoSuchMethodException error
|
||||||
|
* QVector: fix compilation failure in C++20 mode w/strict iterators
|
||||||
|
* macOS: respect underline attribute in menu item fonts
|
||||||
|
* macOS: don't show invisible separator items
|
||||||
|
* iOS: Accessibility: Don't cut off the last character from the text value
|
||||||
|
* iOS: Accessibility: Set the correct traits for EditableText
|
||||||
|
* tst_moc: fix returning-reference-to-local warning
|
||||||
|
* Allow for arguments that have an equals as part of it
|
||||||
|
* Write out the HTML correctly for nested lists
|
||||||
|
* QSqlTableModel::orderByClause(): Quote the table name
|
||||||
|
* macOS: Fix synthesized bold
|
||||||
|
* SQLite: Update SQLite to v3.35.5
|
||||||
|
* Qt xcb: remove false detects of Qt::GroupSwitchModifier
|
||||||
|
* Do not remove non-widget items when removeWidget() called with nullptr
|
||||||
|
* QFileSystemModel fails to locate a host from root's visible children
|
||||||
|
* CMake: Fix automatic default linking of static svg plugins
|
||||||
|
* Blacklist tst_QGestureRecognizer::panGesture
|
||||||
|
* Moc: parse trailing return type
|
||||||
|
* Extend tst_QGL::graphicsViewClipping blacklisting
|
||||||
|
* Fix antialiasing of rotated non-smooth scaled images
|
||||||
|
* Fix QUrl::fromLocalFile with long path prefix
|
||||||
|
* Fix QStringView::mid() to behave as documented when passed -1 for length
|
||||||
|
* QDockWidget, macOS: don't drag on native widgets
|
||||||
|
* Add note about the risk of setting min-width/height in a style sheet
|
||||||
|
* cocoa: be more careful about rejecting frame strut events
|
||||||
|
* iOS: Keep undo/redo widgets enabled on the undo shortcut bar after undo
|
||||||
|
* QTestlib: Fix formatting of pointers in QCOMPARE
|
||||||
|
* Cherry-pick upstream patch for non-gcc/clang/msvc compilers
|
||||||
|
* Windows: Add synthesized fonts also when there is a style name
|
||||||
|
* Windows: Work-around misreporting of Script and Roman
|
||||||
|
* Extend blacklisting of tst_QNetworkReply::ioHttpRedirectPolicy
|
||||||
|
* Extend blacklisting of tst_QWidget::focusProxyAndInputMethods
|
||||||
|
* Android: fix wrong position of cursor hander in split screen
|
||||||
|
* Android: handle ImEnterKeyType flag
|
||||||
|
* Apply the Core compile definitions to the big resource targets
|
||||||
|
* Update bundled libjpeg-turbo to version 2.1.0
|
||||||
|
* QSpdyProtocolHandler: don't rely on device being available
|
||||||
|
* QVnc: clip requested screen region to available screen image
|
||||||
|
* Simplify bundled libjpeg build
|
||||||
|
* Blacklist tst_QWidget::multipleToplevelFocusCheck() on SLES 15
|
||||||
|
* Apply specialData font capitalization to non-rawFont text
|
||||||
|
* Avoid fast transform paint path on values it can't handle
|
||||||
|
* Blacklist tst_QTimeLine::interpolation on Windows in general
|
||||||
|
* QMdiArea: Fix top level window title when using DontMaximizeSubWindowOnActivation
|
||||||
|
* Don't draw focus frame if widget has style rules that affect border
|
||||||
|
* Fix rare integer overflow in text shaping
|
||||||
|
* Blacklist tst_qnetworkreply::ioHttpRedirectMultipartPost on Linux
|
||||||
|
* Android: Fix screen flicker issues
|
||||||
|
* [Android]: Fix exception when using Qt to create a service on Android
|
||||||
|
* Update CLDR-derived data to newly-released v39
|
||||||
|
* QSsl: fix UB pointer use
|
||||||
|
* uic/Python: Add comments for mypy to ignore star imports
|
||||||
|
* HTTP/2 authentication required
|
||||||
|
* Windows: Update the hasFrame setting when changing window flags
|
||||||
|
* Fix mix-guided use of const reference variable
|
||||||
|
* Android: Fix Touch event position depending on Surface
|
||||||
|
* macOS: Don't override action set during drop handling
|
||||||
|
* [Android] Fix select handles misplacement on QDialog
|
||||||
|
* wasm: fix timestamp for events
|
||||||
|
* Do not access internal allThreads data unlocked
|
||||||
|
* SQLite: Handle tables and fields with a dot in the name correctly
|
||||||
|
* Doc: Mark QSet::toList, QSet::fromList, QList::toSet, QList::fromSet as obsolete
|
||||||
|
* Unicode: fix the extended grapheme cluster algorithm
|
||||||
|
* Android: fix for isSoftwareKeyboard method
|
||||||
|
* [Android] Remove signal and slot mechanism to listen states in editors
|
||||||
|
* Fix prl generation with static dependencies take 2
|
||||||
|
* QNetworkDiskCache: Drop the file mmap-ing
|
||||||
|
* QFile::copy: call syncToDisk on destination
|
||||||
|
* Read DPI from X Settings initially as well
|
||||||
|
* Fix prl generation with static dependencies take 2
|
||||||
|
* Re-add horizontal offsets around QPushButton
|
||||||
|
* Fix ARM and MIPS runtime CPU feature flags
|
||||||
|
* Minor robustness improvement of text code
|
||||||
|
* Add null pointer check
|
||||||
|
* Don't parse XML symbols longer than 4096 characters
|
||||||
|
* Make POSIX transition rule parser more robust
|
||||||
|
* Extend blacklisting for SLES 15
|
||||||
|
* Doc: Improve deprecation messages for functions using QString::SplitBehavior
|
||||||
|
* Don't disable menu items that belong to the active modal window
|
||||||
|
* Doc: Fix return type of QCursor::shape()
|
||||||
|
* QPainterPath: fix handling of fill rules
|
||||||
|
* Windows QPA: Fix accessibility focus event for table/tree/list
|
||||||
|
* Fix invalid pointer return with QGridLayout::itemAt(-1)
|
||||||
|
* qmake: Improve error message when detecting macOS platform SDK upgrade
|
||||||
|
* Assert that pointer is not nullptr before dereferencing
|
||||||
|
* QLocalSocket/Win: fix possible UB in _q_pipeClosed()
|
||||||
|
* tst_qapplication: Prevent desktopaware test from deactivating main test
|
||||||
|
* iOS: Disable three-finger-tap editing interaction menu when there's no focus object
|
||||||
|
* Fix read-only pseudo-state in QPlainTextEdit stylesheet
|
||||||
|
* QTextHtmlParserNode: Limit colspan to avoid segfault
|
||||||
|
* Don't judge other people's writing systems
|
||||||
|
* macOS: Don't draw scrollbar handle when there is no range
|
||||||
|
* QSystemSemaphorePrivate: Fix a call to tr() to translate()
|
||||||
|
* Fix condition that adds resources for each Android ABI
|
||||||
|
* Avoid int overflow in QImage rotate90/180/270
|
||||||
|
* Return the result we have already when getting an object with no name
|
||||||
|
* Avoid attempting to parse insanely long texts as zone names
|
||||||
|
* Doc: Fix typo in publisherid for WINRT_MANIFEST
|
||||||
|
* Fix Editable Tree Model example model rowCount and model instance leak
|
||||||
|
* FileChooser portal: send window id in hex
|
||||||
|
* fix windows build when both whatsthis and tooltip are disabled
|
||||||
|
* Fix incorrectly-drawn menu indicator for QPushButton on macOS
|
||||||
|
* Fix label margins for pulldowns with custom styled menu indicator on macOS
|
||||||
|
* Font style name 'Normal' and 'Regular' have the same meaning
|
||||||
|
* QString: improve lastIndexOf(QRegularExpression) docs
|
||||||
|
* eglfs: Newer Nvidia libdrm provide device instead driver module name
|
||||||
|
* Android: KEYCODE_MEDIA_PLAY_PAUSE translated right
|
||||||
|
* iOS: Protect against a possible crash after the window is deleted
|
||||||
|
* Revert "Update commercial license headers to /util files"
|
||||||
|
* Revert "Update commercial license headers to bin, mkspecs, qmake"
|
||||||
|
* Consistently check for nullptr in QGraphicsTextItem::inputMethodQuery
|
||||||
|
* Remove qualification for Julian calendar
|
||||||
|
* Revert "Update commercial license headers"
|
||||||
|
* Revert "Update commercial license headers"
|
||||||
|
* Fix alpha handling of QImage::setPixel
|
||||||
|
* Fix handling of virtual/native pixels in QAndroidPlatformWindow
|
||||||
|
* Revert "Update commercial license headers to src/concurrent and src/corelib"
|
||||||
|
* Revert "Update commercial license headers to src/dbus, src/gui, src/network"
|
||||||
|
* Disable Harfbuzz/CoreText hotfix on older macOS/iOS versions
|
||||||
|
* SQLite: Update to 3.35.2
|
||||||
|
* tst_bench_qmetaobject: Fix test
|
||||||
|
* QAsn1Element: Avoid overflow in QAsn1Element::toInteger
|
||||||
|
* tst_qguimetatype: Avoid deprecated methods
|
||||||
|
* Include minus sign in ImhFormattedNumbersOnly's available keys
|
||||||
|
* MODULE_INCLUDEPATH is supposed to be one path
|
||||||
|
* QEventDispatcher(Win): Always honor interrupted status to avoid races
|
||||||
|
* Android: Place cursor correctly on screen when editing
|
||||||
|
* QStylesheetStyle: fix push button label alignment
|
||||||
|
* Support family names that end/start with space
|
||||||
|
* wasm: fix opengl context stencil and depth buffer handling
|
||||||
|
* wasm: fix screen offset logic
|
||||||
|
* Android: Add grabWindow handling
|
||||||
|
* tst_qdtlscookie: use a proper 'enterLoopMSecs' instead of 'enterLoop'
|
||||||
|
* Update bundled libjpeg-turbo to version 2.0.6
|
||||||
|
* QMenu test: turn tooltip animations off
|
||||||
|
* Android: make calling exit() conditional on an environment variable
|
||||||
|
* Limit value in setFontSizeFromValue()
|
||||||
|
* xcb: unset old states and set new ones for window
|
||||||
|
* Brush up the imageviewer example
|
||||||
|
* Fix out-of-buffer in ICC curv parsing
|
||||||
|
* Fix logic problems with table based grayscale ICC profiles
|
||||||
|
* Reduce warnings from ICC parsing
|
||||||
|
* QEventDispatcherWin32: get rid of the hook procedure
|
||||||
|
* And fix handling and test of QImage::fill(uint) as well
|
||||||
|
* Fix handling of virtual/native pixels in QAndroidPlatformWindow
|
||||||
|
* QLineEdit: Fix editingFinished() not being emitted when pressing the clear button
|
||||||
|
* macOS: don't let windows that are transparent for input become key window
|
||||||
|
* QMdiSubWindow: Set correct ControlLabel size
|
||||||
|
* Doc: Remove styling for hyperlinks from the simplified offline style
|
||||||
|
* Doc: Offline CSS: Reduce excess vertical spacing
|
||||||
|
* Fix parsing of dates with spaces in day or month names
|
||||||
|
* Rework tst_QDateTime::toString_isoDate() to eliminate an XFAIL
|
||||||
|
* Fix tst_QDateTime::systemTimeZoneChange() for 32-bit systems
|
||||||
|
* Extend colorspace testing and fix bug it uncovered
|
||||||
|
* Schannel: Fix incomplete downloads with read buffer restricted
|
||||||
|
* MinGW: fix warning in QMatrix4x4::map functions
|
||||||
|
* QRectF/Documentation: Fix malformed table
|
||||||
|
* Fix QImage::fill with semi-transparent QColor
|
||||||
|
* iOS: close edit menu upon focus transfer
|
||||||
|
* macOS: Fix crash when showing parent-less platform menus
|
||||||
|
* macOS: Remove warning about KVO observers on QNSWindow/QNSPanel
|
||||||
|
* Filter cosmetic lines using transformed, not world coordinates
|
||||||
|
* Fix recently added auto test of text layout overflow
|
||||||
|
* wasm: don’t deadlock on event processing
|
||||||
|
* Fix QNetworkInterface IsUp and IsRunning enum documentation
|
||||||
|
* Clarify QWindowPrivate::maybeQuitOnLastWindowClosed
|
||||||
|
* wasm: fix showing tooltips
|
||||||
|
* Doc: Don’t use note when documenting enum values
|
||||||
|
* macos: Document that Drawer is obsolete
|
||||||
|
* Doc: Update the SQL types documentation with regards to the double types
|
||||||
|
* Doc: link to QScopeGuard in QScopedValueRollback documentation
|
||||||
|
* Doc: Online CSS: Fix image captions overlapping images used in tables
|
||||||
|
* Turn off the dbus examples for qmake-generated VS projects
|
||||||
|
* Don't show focus rect for QCommandLinkButton
|
||||||
|
* Android: Fix the input type for date/time
|
||||||
|
* qmake: Introduce compile_included_sources CONFIG option
|
||||||
|
* Update QPalette() documentation to not mention the application palette
|
||||||
|
* Android: Pass pending state to ResumePauseListener
|
||||||
|
* Fix crash when requesting A32 glyph on Wayland
|
||||||
|
* Android: Fix input method hints for ImhHiddenText
|
||||||
|
* a11y: Report mixed state if QCheckBox is PartiallyChecked
|
||||||
|
* testlib: Only consider major version for macOS 11 and later in blacklists
|
||||||
|
* iOS: hide edit menu if typing on the input panel
|
||||||
|
* xcb: Fix available geometry after rotation
|
||||||
|
* Remove false Q_UNREACHABLE from shaping code
|
||||||
|
* Fix trivial typo in QDateTime::fromString() overload doc
|
||||||
|
* QTreeWidgetItem: fix documentation error for childIndicatorPolicy()
|
||||||
|
* Update to CLDR v38.1, adding Yukon Standard Time
|
||||||
|
* Avoid overflow in text layout
|
||||||
|
* QJsonObject::take: add missing detach() call
|
||||||
|
* macOS: Don't exec file dialogs via runModal unless they are app modal
|
||||||
|
* QMimeDatabase/xml: support both 'xmlstarlet' and 'xml' for minifying XML
|
||||||
|
* Use design metrics when adding text to QPainterPath
|
||||||
|
* QDir/QFileInfo: add doc notes about paths starting with ':'
|
||||||
|
* QSsl: fix OpenSSL DLL names for Windows on ARM
|
||||||
|
* a11y: Do not cache classes that don't have a factory plugin
|
||||||
|
* Update public suffix list to today's latest
|
||||||
|
* Fix QTzTimeZonePrivate::displayName()'s fallback
|
||||||
|
* Fix problems with offset-derived ids for QTimeZone
|
||||||
|
* QLineEdit Cursor show white area
|
||||||
|
* Correct item indent in checkable menus in stylesheet style
|
||||||
|
* Fix read-only pseudo-state in QTextEdit/Browser stylesheet
|
||||||
|
* Hold references to zone IDs alive during use
|
||||||
|
* Correct string comparison in Android's IANA ID matching code
|
||||||
|
* Doc: Add deprecation notice
|
||||||
|
* Change QLineF::setLength() to work whenever length() is non-zero
|
||||||
|
* macOS: Remove DontConfirmOverwrite workaround
|
||||||
|
* macOS: Show system tray icon on mouse button press, not release
|
||||||
|
* macOS: Don't restrict non-modal file dialogs to open-dialogs only
|
||||||
|
* Check date validity in calendar methods taking a QDate
|
||||||
|
* macOS: Only check SDK major version for compatibility
|
||||||
|
* iOS: always hide edit menu when showing the magnifier glass
|
||||||
|
* QInputControl: accept surrogate category character
|
||||||
|
* Set new commandLink variable when initializing QCommandLinkButton
|
||||||
|
* Test QDateTime behavior in DST gap
|
||||||
|
* UndoFramework example: make the background visible
|
||||||
|
* Windows: Fix flicker when resizing translucent windows with QSizeGrip
|
||||||
|
* Windows QPA: Fix crashes when using screen reader with Q(Plain)TextEdit
|
||||||
|
* Avoid int overflow in gradient drawing
|
||||||
|
* macOS: Mark QFileDialog::DontConfirmOverwrite as unsupported
|
||||||
|
* Fix QApplication::font returns the font unstable according to the object
|
||||||
|
* Avoid overflowing QFixed in text layout
|
||||||
|
* iOS: ensure we close the edit menu when the user taps outside the input area
|
||||||
|
* iOS: ensure we hide the edit menu while dragging on the selection handles
|
||||||
|
* Fix logicalDpi() which returns invalid value
|
||||||
|
* Windows: Fix frame margins calculation
|
||||||
|
* Widgets: fix setTabOrder for QAbstractSpinBox-like widgets
|
||||||
|
* macOS: Add more padding to width of non-editable comboboxes
|
||||||
|
* Make QPushButton on macOS use QFocusFrame to fix alignment problems
|
||||||
|
* QTabBar: update index of last visible tab in insertTab
|
||||||
|
* Fix that the placeholdertext of QCombobox is not drawn
|
||||||
|
* Windows: Fix dialog moving up after closing/reshowing
|
||||||
|
* Cocoa: When validating menus, account for modal window only if active
|
||||||
|
* PSQL: Fix the QSqlDatabase test
|
||||||
|
* Move the qmenu_p.h include to the QT_CONFIG(menu) block
|
||||||
|
* Fix compilation of ibase sqldriver plugin, added override
|
||||||
|
* Protect against sign-change of size on 32bit
|
||||||
|
* Fix division by zero
|
||||||
|
* SQLite: Update to 3.34.0
|
||||||
|
* QODBC: Preserve the whole value when using HighPrecision
|
||||||
|
* Set the PlaceholderText color in the palette from the stylesheet as well
|
||||||
|
* Update commercial license headers to bin, mkspecs, qmake
|
||||||
|
* Update commercial license headers to /util files
|
||||||
|
* Update commercial license headers to src/concurrent and src/corelib
|
||||||
|
* Update commercial license headers to src/dbus, src/gui, src/network
|
||||||
|
* Stabilize tst_QListView::internalDragDropMove() on X11
|
||||||
|
* [Android] Fix Text select handle misplaced on QDialog issues
|
||||||
|
* Android: Finish composing text before Key handling
|
||||||
|
* Fix regression with closing and then reopening widgets with QGLWidget
|
||||||
|
* eglfs: Use drmClose in drm/EGLDevice backend
|
||||||
|
* Handle maxImageCount 0 in QVulkanWindow
|
||||||
|
* Make QCalendar's backend registration reentrant-safe
|
||||||
|
* Blacklist flaky QListView::internalDragDropMove case on OpenSuSE
|
||||||
|
* Update commercial license headers
|
||||||
|
* Update commercial license headers
|
||||||
|
* Doc: Link to correct location
|
||||||
|
* Doc: Generalize timer docs
|
||||||
|
* Doc: Explain how boundingRect handles null QRectF
|
||||||
|
* Doc: Add details to QFont::toString
|
||||||
|
* Document QOpenGLWidget limitations without an alpha channel
|
||||||
|
* QTabBar test: refactor: extract checkPositions helper function
|
||||||
|
* Add new special QObjectPrivate::{connect, disconnect} for QML
|
||||||
|
* Add "Q_UNUSED" to (3rdparty) strtod.cc for a 32 bit code path
|
||||||
|
* Android: Fix for accessibility potential crash
|
||||||
|
* QTabBar/Windows: Fix close button icons being too small on high-res screens
|
||||||
|
* Fix missing repaints with QOpenGLWidget in a QDockWidget
|
||||||
|
* QComboBox/Fusion style: elide text when it's too long
|
||||||
|
* Fix qt_alphaVersion and qt_opaqueVersion in the trivial case
|
||||||
|
* Doc: Clarify setLibraryPaths behavior
|
||||||
|
* Fix convertToRGBA64PM for Grayscale16
|
||||||
|
* Fix setting active window as application's focus widget
|
||||||
|
* Send Qt::Key_MediaTogglePlayPause for VK_MEDIA_PLAY_PAUSE
|
||||||
|
* Fix VNC format conversion
|
||||||
|
* Windows font engine: Silence warnings about not being able to enumate font families
|
||||||
|
* Blacklist failing tests for WinRT
|
||||||
|
- Commits dropped by the rebase:
|
||||||
|
* Add missing limits include
|
||||||
|
- Drop 0001-Revert-Bump-version.patch, it's versioned correctly now
|
||||||
|
- Rebase 0001-Add-remote-print-queue-support.patch
|
||||||
|
- Drop patches, now upstream:
|
||||||
|
* mitigate-FORTIFY_SOURCE-3.patch
|
||||||
|
* 0001-H2-remove-a-rather-useless-limit-on-the-number-of-st.patch
|
||||||
|
* 0001-QProcess-Unix-ensure-we-don-t-accidentally-execute-s.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jun 20 12:59:16 UTC 2022 - Fabian Vogt <fvogt@suse.com>
|
Mon Jun 20 12:59:16 UTC 2022 - Fabian Vogt <fvogt@suse.com>
|
||||||
|
|
||||||
|
@ -29,15 +29,15 @@
|
|||||||
%bcond_without harfbuzz
|
%bcond_without harfbuzz
|
||||||
|
|
||||||
Name: libqt5-qtbase
|
Name: libqt5-qtbase
|
||||||
Version: 5.15.2+kde294
|
Version: 5.15.5+kde165
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: C++ Program Library, Core Components
|
Summary: C++ Program Library, Core Components
|
||||||
License: LGPL-3.0-only or GPL-3.0-with-Qt-Company-Qt-exception-1.1
|
License: LGPL-3.0-only or GPL-3.0-with-Qt-Company-Qt-exception-1.1
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Url: https://www.qt.io
|
Url: https://www.qt.io
|
||||||
%define base_name libqt5
|
%define base_name libqt5
|
||||||
%define real_version 5.15.2
|
%define real_version 5.15.5
|
||||||
%define so_version 5.15.2
|
%define so_version 5.15.5
|
||||||
%define tar_version qtbase-everywhere-src-%{version}
|
%define tar_version qtbase-everywhere-src-%{version}
|
||||||
Source: %{tar_version}.tar.xz
|
Source: %{tar_version}.tar.xz
|
||||||
# to get mtime of file:
|
# to get mtime of file:
|
||||||
@ -50,7 +50,6 @@ Source99: libqt5-qtbase-rpmlintrc
|
|||||||
Patch3: 0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch
|
Patch3: 0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch
|
||||||
# Proposed: https://bugreports.qt.io/browse/QTBUG-88491
|
# Proposed: https://bugreports.qt.io/browse/QTBUG-88491
|
||||||
Patch4: 0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch
|
Patch4: 0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch
|
||||||
Patch5: 0001-Revert-Bump-version.patch
|
|
||||||
# PATCH-FIX-OPENSUSE disable-rc4-ciphers-bnc865241.diff bnc#865241-- Exclude rc4 ciphers from being used by default
|
# PATCH-FIX-OPENSUSE disable-rc4-ciphers-bnc865241.diff bnc#865241-- Exclude rc4 ciphers from being used by default
|
||||||
Patch6: disable-rc4-ciphers-bnc865241.diff
|
Patch6: disable-rc4-ciphers-bnc865241.diff
|
||||||
Patch8: tell-the-truth-about-private-api.patch
|
Patch8: tell-the-truth-about-private-api.patch
|
||||||
@ -61,15 +60,10 @@ Patch12: 0001-Add-remote-print-queue-support.patch
|
|||||||
# PATCH-FIX-OPENSUSE
|
# PATCH-FIX-OPENSUSE
|
||||||
Patch21: 0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch
|
Patch21: 0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch
|
||||||
Patch24: fix-fixqt4headers.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 1000-2000 and above from upstream 5.15 branch #
|
||||||
Patch1000: 0001-H2-remove-a-rather-useless-limit-on-the-number-of-st.patch
|
|
||||||
# patches 2000-3000 and above from upstream qt6/dev branch #
|
# patches 2000-3000 and above from upstream qt6/dev branch #
|
||||||
# Not accepted yet, https://codereview.qt-project.org/c/qt/qtbase/+/255384
|
# Not accepted yet, https://codereview.qt-project.org/c/qt/qtbase/+/255384
|
||||||
Patch2001: 0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch
|
Patch2001: 0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch
|
||||||
# Not accepted yet, https://codereview.qt-project.org/c/qt/qtbase/+/393113
|
|
||||||
Patch2002: 0001-QProcess-Unix-ensure-we-don-t-accidentally-execute-s.patch
|
|
||||||
BuildRequires: cups-devel
|
BuildRequires: cups-devel
|
||||||
BuildRequires: double-conversion-devel
|
BuildRequires: double-conversion-devel
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
|
@ -1,35 +0,0 @@
|
|||||||
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
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:e6ec08431d9f5a84615b0381db9c80bdeb71de1e813f18a08b664336c290eeed
|
|
||||||
size 291332110
|
|
3
qtbase-everywhere-src-5.15.5+kde165.obscpio
Normal file
3
qtbase-everywhere-src-5.15.5+kde165.obscpio
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:3f3a0c512b69ba13c1c00839ab3a946f55bff68ab9bac36b58f4377b802994ea
|
||||||
|
size 292264974
|
@ -1,5 +1,4 @@
|
|||||||
name: qtbase-everywhere-src
|
name: qtbase-everywhere-src
|
||||||
version: 5.15.2+kde294
|
version: 5.15.5+kde165
|
||||||
mtime: 1642610092
|
mtime: 1655895493
|
||||||
commit: 366350c2e4a7eccbda0f3936e69c6b9c4fa28f55
|
commit: 6d3d164bec17876f5b24ae9102767ef1236aa37b
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user