From 0fa4bb6e6d0df409b8b721bc04f87dce2967826a Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Feb 13 2018 13:52:40 +0000 Subject: 5.10.1 --- diff --git a/.gitignore b/.gitignore index 13c9743..89c6204 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /qtbase-opensource-src-5.9.2.tar.xz /qtbase-opensource-src-5.9.3.tar.xz /qtbase-everywhere-src-5.10.0.tar.xz +/qtbase-everywhere-src-5.10.1.tar.xz diff --git a/qt5-qtbase.spec b/qt5-qtbase.spec index 12b4275..effd3a5 100644 --- a/qt5-qtbase.spec +++ b/qt5-qtbase.spec @@ -50,8 +50,8 @@ BuildRequires: pkgconfig(libsystemd) Name: qt5-qtbase Summary: Qt5 - QtBase components -Version: 5.10.0 -Release: 5%{?dist} +Version: 5.10.1 +Release: 1%{?dist} # See LGPL_EXCEPTIONS.txt, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions @@ -121,9 +121,6 @@ Patch66: qtbase-mariadb.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1497564 Patch67: https://bugreports.qt.io/secure/attachment/66353/xcberror_filter.patch -## upstream patches (5.9 branch) -Patch100: qtbase-opensource-src-5.9.3-QTBUG-64742-out-of-bounds-in-qdnslookup_unix.patch - # Do not check any files in %%{_qt5_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are # not there, the platform to integrate with isn't either. Then Qt will just @@ -367,7 +364,6 @@ Qt5 libraries used for drawing widgets and OpenGL items. %endif %patch66 -p1 -b .mariadb %patch67 -p1 -b .xcberror_filter -%patch100 -p1 -b .QTBUG-64742-out-of-bounds-in-qdnslookup_unix %if 0%{?inject_optflags} ## adjust $RPM_OPT_FLAGS @@ -990,6 +986,9 @@ fi %changelog +* Tue Feb 13 2018 Jan Grulich - 5.10.1-1 +- 5.10.1 + * Fri Feb 09 2018 Rex Dieter - 5.10.0-5 - track private api use via properly versioned symbols (unused for now) diff --git a/qtbase-mariadb.patch b/qtbase-mariadb.patch index 84cf11d..9e1626a 100644 --- a/qtbase-mariadb.patch +++ b/qtbase-mariadb.patch @@ -1,13 +1,14 @@ -diff -up qtbase-opensource-src-5.9.2/src/plugins/sqldrivers/mysql/qsql_mysql.cpp.rex qtbase-opensource-src-5.9.2/src/plugins/sqldrivers/mysql/qsql_mysql.cpp ---- qtbase-opensource-src-5.9.2/src/plugins/sqldrivers/mysql/qsql_mysql.cpp.rex 2017-10-02 03:43:38.000000000 -0500 -+++ qtbase-opensource-src-5.9.2/src/plugins/sqldrivers/mysql/qsql_mysql.cpp 2017-10-19 14:56:16.752878279 -0500 -@@ -1159,14 +1159,15 @@ static void qLibraryInit() +diff --git a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp +index 365f899..9ff415d 100644 +--- a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp ++++ b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp +@@ -1160,14 +1160,15 @@ static void qLibraryInit() # endif // MYSQL_VERSION_ID #endif // Q_NO_MYSQL_EMBEDDED -#ifdef MARIADB_BASE_VERSION +#if defined(MARIADB_BASE_VERSION) || defined(MARIADB_VERSION_ID) - qAddPostRoutine(mysql_server_end); + qAddPostRoutine([]() { mysql_server_end(); }); #endif } diff --git a/qtbase-opensource-src-5.9.3-QTBUG-64742-out-of-bounds-in-qdnslookup_unix.patch b/qtbase-opensource-src-5.9.3-QTBUG-64742-out-of-bounds-in-qdnslookup_unix.patch deleted file mode 100644 index 6a1ce13..0000000 --- a/qtbase-opensource-src-5.9.3-QTBUG-64742-out-of-bounds-in-qdnslookup_unix.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff -up qtbase-opensource-src-5.9.3/src/network/kernel/qdnslookup_unix.cpp.orig qtbase-opensource-src-5.9.3/src/network/kernel/qdnslookup_unix.cpp ---- qtbase-opensource-src-5.9.3/src/network/kernel/qdnslookup_unix.cpp.orig 2017-11-16 06:15:28.000000000 +0100 -+++ qtbase-opensource-src-5.9.3/src/network/kernel/qdnslookup_unix.cpp 2017-11-30 09:22:47.525741040 +0100 -@@ -42,6 +42,7 @@ - #if QT_CONFIG(library) - #include - #endif -+#include - #include - #include - #include -@@ -58,6 +59,8 @@ - # include - #endif - -+#include -+ - QT_BEGIN_NAMESPACE - - #if QT_CONFIG(library) -@@ -189,11 +192,25 @@ void QDnsLookupRunnable::query(const int - QScopedPointer state_ptr(&state); - - // Perform DNS query. -- unsigned char response[PACKETSZ]; -- memset(response, 0, sizeof(response)); -- const int responseLength = local_res_nquery(&state, requestName, C_IN, requestType, response, sizeof(response)); -+ QVarLengthArray buffer(PACKETSZ); -+ memset(buffer.data(), 0, buffer.size()); -+ int responseLength = local_res_nquery(&state, requestName, C_IN, requestType, buffer.data(), buffer.size()); -+ if (Q_UNLIKELY(responseLength > PACKETSZ)) { -+ buffer.resize(responseLength); -+ memset(buffer.data(), 0, buffer.size()); -+ responseLength = local_res_nquery(&state, requestName, C_IN, requestType, buffer.data(), buffer.size()); -+ if (Q_UNLIKELY(responseLength > buffer.size())) { -+ // Ok, we give up. -+ reply->error = QDnsLookup::ResolverError; -+ reply->errorString.clear(); // We cannot be more specific, alas. -+ return; -+ } -+ } - -- // Check the response header. -+ unsigned char *response = buffer.data(); -+ // Check the response header. Though res_nquery returns -1 as a -+ // responseLength in case of error, we still can extract the -+ // exact error code from the response. - HEADER *header = (HEADER*)response; - const int answerCount = ntohs(header->ancount); - switch (header->rcode) { diff --git a/sources b/sources index b701d43..ed92775 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-5.10.0.tar.xz) = 8f832fb7bc5087df4b897cd23145e5350f03ca06e2fc5ccb11a7b998e4885c1b936c3e4b989c15fc076134a6a081a35efa37f402b5e8b85e2c780006641b2cdc +SHA512 (qtbase-everywhere-src-5.10.1.tar.xz) = abc8087bb7c5db2a668ba87cef67ab7ab9d884b770bce916b7fe7bf4e0a1fac47114eff50e15bd9efed66d63307d6aceed5cb097aa2ae5df98cffd11af8691ba