Hello community,

here is the log from the commit of package karchive for openSUSE:Factory 
checked in at 2019-07-26 12:08:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/karchive (Old)
 and      /work/SRC/openSUSE:Factory/.karchive.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "karchive"

Fri Jul 26 12:08:11 2019 rev:68 rq:715856 version:5.60.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/karchive/karchive.changes        2019-06-22 
11:10:02.360395474 +0200
+++ /work/SRC/openSUSE:Factory/.karchive.new.4126/karchive.changes      
2019-07-26 12:10:09.098852649 +0200
@@ -1,0 +2,11 @@
+Sun Jul 14 06:41:37 UTC 2019 - lbeltr...@kde.org
+
+- Update to 5.60.0
+  * New feature release
+  * For more details please see:
+  * https://www.kde.org/announcements/kde-frameworks-5.60.0.php
+- Changes since 5.59.0:
+  * Do not crash if the inner file wants to be bigger than QByteArray max size
+  * Install in new logging directory when we use kf5 5.59.0
+
+-------------------------------------------------------------------

Old:
----
  karchive-5.59.0.tar.xz

New:
----
  karchive-5.60.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ karchive.spec ++++++
--- /var/tmp/diff_new_pack.hGuoXK/_old  2019-07-26 12:10:10.142852498 +0200
+++ /var/tmp/diff_new_pack.hGuoXK/_new  2019-07-26 12:10:10.150852497 +0200
@@ -17,13 +17,13 @@
 
 
 %define lname   libKF5Archive5
-%define _tar_path 5.59
+%define _tar_path 5.60
 # Full KF5 version (e.g. 5.33.0)
 %{!?_kf5_version: %global _kf5_version %{version}}
 # Last major and minor KF5 version (e.g. 5.33)
 %{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | 
awk -F. '{print $1"."$2}')}
 Name:           karchive
-Version:        5.59.0
+Version:        5.60.0
 Release:        0
 Summary:        Qt 5 addon providing access to numerous types of archives
 License:        LGPL-2.1-or-later

++++++ karchive-5.59.0.tar.xz -> karchive-5.60.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/karchive-5.59.0/CMakeLists.txt 
new/karchive-5.60.0/CMakeLists.txt
--- old/karchive-5.59.0/CMakeLists.txt  2019-06-01 18:36:00.000000000 +0200
+++ new/karchive-5.60.0/CMakeLists.txt  2019-07-06 15:13:25.000000000 +0200
@@ -1,10 +1,10 @@
 cmake_minimum_required(VERSION 3.5)
 
-set(KF5_VERSION "5.59.0") # handled by release scripts
+set(KF5_VERSION "5.60.0") # handled by release scripts
 project(KArchive VERSION ${KF5_VERSION})
 
 include(FeatureSummary)
-find_package(ECM 5.59.0  NO_MODULE)
+find_package(ECM 5.60.0  NO_MODULE)
 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake 
Modules." URL 
"https://projects.kde.org/projects/kdesupport/extra-cmake-modules";)
 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND 
FATAL_ON_MISSING_REQUIRED_PACKAGES)
 
@@ -18,7 +18,7 @@
 
 include(GenerateExportHeader)
 
-set(REQUIRED_QT_VERSION 5.10.0)
+set(REQUIRED_QT_VERSION 5.11.0)
 find_package(Qt5Core ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
 
 find_package(ZLIB)
@@ -104,6 +104,6 @@
         FILE KF5ArchiveTargets.cmake
         NAMESPACE KF5::)
 
-install(FILES karchive.categories DESTINATION ${KDE_INSTALL_CONFDIR})
+install(FILES karchive.categories  DESTINATION  
${KDE_INSTALL_LOGGINGCATEGORIESDIR})
 
 feature_summary(WHAT ALL   FATAL_ON_MISSING_REQUIRED_PACKAGES)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/karchive-5.59.0/src/kar.cpp 
new/karchive-5.60.0/src/kar.cpp
--- old/karchive-5.59.0/src/kar.cpp     2019-06-01 18:36:00.000000000 +0200
+++ new/karchive-5.60.0/src/kar.cpp     2019-07-06 15:13:25.000000000 +0200
@@ -23,9 +23,14 @@
 #include <QFile>
 #include <QDebug>
 
+#include <limits>
+
 #include "kfilterdev.h"
 //#include "klimitediodevice_p.h"
 
+// As documented in QByteArray
+static constexpr int kMaxQByteArraySize = std::numeric_limits<int>::max() - 32;
+
 ////////////////////////////////////////////////////////////////////////
 /////////////////////////// KAr ///////////////////////////////////////
 ////////////////////////////////////////////////////////////////////////
@@ -135,7 +140,7 @@
         //const int gid = ar_header.mid( 34, 6 ).trimmed().toInt();
         const int mode = ar_header.mid(40, 8).trimmed().toInt(nullptr, 8);
         const qint64 size = ar_header.mid(48, 10).trimmed().toInt();
-        if (size < 0) {
+        if (size < 0 || size > kMaxQByteArraySize) {
             setErrorString(tr("Invalid size"));
             return false;
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/karchive-5.59.0/src/kar.h 
new/karchive-5.60.0/src/kar.h
--- old/karchive-5.59.0/src/kar.h       2019-06-01 18:36:00.000000000 +0200
+++ new/karchive-5.60.0/src/kar.h       2019-07-06 15:13:25.000000000 +0200
@@ -24,7 +24,8 @@
  * @class KAr kar.h KAr
  *
  * KAr is a class for reading archives in ar format. Writing
- * is not supported.
+ * is not supported. Reading archives that contain files bigger than
+ * INT_MAX - 32 bytes is not supported.
  * @short A class for reading ar archives.
  * @author Laurence Anderson <l.d.ander...@warwick.ac.uk>
  */


Reply via email to