Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package engauge-digitizer for 
openSUSE:Factory checked in at 2026-06-25 10:55:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/engauge-digitizer (Old)
 and      /work/SRC/openSUSE:Factory/.engauge-digitizer.new.2088 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "engauge-digitizer"

Thu Jun 25 10:55:53 2026 rev:36 rq:1361500 version:12.9.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/engauge-digitizer/engauge-digitizer.changes      
2026-01-14 16:24:11.267690287 +0100
+++ 
/work/SRC/openSUSE:Factory/.engauge-digitizer.new.2088/engauge-digitizer.changes
    2026-06-25 10:58:33.024158783 +0200
@@ -1,0 +2,9 @@
+Mon Jun 22 23:07:17 UTC 2026 - Stefan BrĂ¼ns <[email protected]>
+
+- Replace dependency on broken log4cpp package, add
+  0001-Replace-log4cpp-with-Qt-categorized-logging.patch
+- Add 0001-Fix-noreturn-syntax.patch
+- Fix crash on PDF import, add
+  0001-Fix-ownership-of-Poppler-Document-for-Qt6.patch
+
+-------------------------------------------------------------------

New:
----
  0001-Fix-noreturn-syntax.patch
  0001-Fix-ownership-of-Poppler-Document-for-Qt6.patch
  0001-Replace-log4cpp-with-Qt-categorized-logging.patch

----------(New B)----------
  New:  0001-Replace-log4cpp-with-Qt-categorized-logging.patch
- Add 0001-Fix-noreturn-syntax.patch
- Fix crash on PDF import, add
  New:- Fix crash on PDF import, add
  0001-Fix-ownership-of-Poppler-Document-for-Qt6.patch
  New:- Replace dependency on broken log4cpp package, add
  0001-Replace-log4cpp-with-Qt-categorized-logging.patch
- Add 0001-Fix-noreturn-syntax.patch
----------(New E)----------

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

Other differences:
------------------
++++++ engauge-digitizer.spec ++++++
--- /var/tmp/diff_new_pack.qLC3pR/_old  2026-06-25 10:58:33.664180871 +0200
+++ /var/tmp/diff_new_pack.qLC3pR/_new  2026-06-25 10:58:33.668181009 +0200
@@ -24,14 +24,17 @@
 Group:          Productivity/Scientific/Other
 URL:            https://markummitchell.github.io/engauge-digitizer/
 Source0:        
https://github.com/akhuettel/engauge-digitizer/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Patch0:         0001-Fix-noreturn-syntax.patch
+Patch1:         0001-Replace-log4cpp-with-Qt-categorized-logging.patch
+Patch2:         0001-Fix-ownership-of-Poppler-Document-for-Qt6.patch
 BuildRequires:  doxygen
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++
 BuildRequires:  hicolor-icon-theme
 BuildRequires:  icns-utils
 BuildRequires:  optipng
-BuildRequires:  qt6-tools-helpgenerators
 BuildRequires:  pkgconfig
+BuildRequires:  qt6-tools-helpgenerators
 BuildRequires:  pkgconfig(Qt6Core)
 BuildRequires:  pkgconfig(Qt6Gui)
 BuildRequires:  pkgconfig(Qt6Help)
@@ -41,7 +44,6 @@
 BuildRequires:  pkgconfig(Qt6Xml)
 BuildRequires:  pkgconfig(fftw3)
 BuildRequires:  pkgconfig(libopenjp2)
-BuildRequires:  pkgconfig(log4cpp)
 BuildRequires:  pkgconfig(poppler-qt6)
 Suggests:       %{name}-doc
 

++++++ 0001-Fix-noreturn-syntax.patch ++++++
>From 0f77187409c65013b10868fefd1d077ff1dadaf2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]>
Date: Tue, 23 Jun 2026 13:45:34 +0200
Subject: [PATCH] Fix noreturn syntax

---
 src/Logger/LoggerUpload.h | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/src/Logger/LoggerUpload.h b/src/Logger/LoggerUpload.h
index 793ba5d0..2afac29e 100644
--- a/src/Logger/LoggerUpload.h
+++ b/src/Logger/LoggerUpload.h
@@ -9,12 +9,6 @@
 
 #include <QtGlobal>
 
-#if defined(WIN32) || defined(WIN64)
-#define NO_RETURN_VALUE
-#else
-#define NO_RETURN_VALUE Q_NORETURN
-#endif
-
 class MainWindow;
 
 /// Upload logging information to website for developer support
@@ -29,21 +23,21 @@ public:
 
   /// Smart equivalent to standard assert method and Q_ASSERT (in qglobal.h). 
Upon error, an upload is proposed.
   /// This is static for easy access from anywhere else in the application
-  static void loggerAssert(const char *condition,
+  [[noreturn]] static void loggerAssert(const char *condition,
                            const char* file,
-                           int line) NO_RETURN_VALUE;
+                           int line);
 
   /// Smart equivalent to Q_CHECK_PTR (in qglobal.h). Similar to loggerAssert 
but for checking newly-allocated pointers
-  static void loggerCheckPtr (const char *pointer,
+  [[noreturn]] static void loggerCheckPtr (const char *pointer,
                               const char* file,
-                              int line) NO_RETURN_VALUE;
+                              int line);
 
 private:
 
-  static void loggerOutput (const char* comment,
+  [[noreturn]] static void loggerOutput (const char* comment,
                             const char *file,
                             int line,
-                            const char* context) NO_RETURN_VALUE;
+                            const char* context);
 
   static MainWindow *m_mainWindow;
 };
-- 
2.54.0


++++++ 0001-Fix-ownership-of-Poppler-Document-for-Qt6.patch ++++++
>From a2cd96dbf9a551383b901338fb7117b3dda1ae4e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]>
Date: Tue, 23 Jun 2026 16:12:50 +0200
Subject: [PATCH] Fix ownership of Poppler::Document for Qt6

The Qt6 interface uses unique_ptrs, assigning to a raw pointer drops
the ownership and leaves a dangling pointer.
---
 src/Dlg/DlgImportCroppingPdf.cpp     |  3 +--
 src/Import/ImportCroppingUtilPdf.cpp |  7 +++----
 src/Import/ImportCroppingUtilPdf.h   |  3 ++-
 src/Pdf/Pdf.cpp                      | 17 +++++------------
 src/Pdf/Pdf.h                        |  3 ++-
 5 files changed, 13 insertions(+), 20 deletions(-)

diff --git a/src/Dlg/DlgImportCroppingPdf.cpp b/src/Dlg/DlgImportCroppingPdf.cpp
index edc04281..1d8651dd 100644
--- a/src/Dlg/DlgImportCroppingPdf.cpp
+++ b/src/Dlg/DlgImportCroppingPdf.cpp
@@ -189,7 +189,7 @@ QImage DlgImportCroppingPdf::loadImage (int page1Based) 
const
   QImage image;
 
   int page0Based = page1Based - 1;
-  Page *page = m_document.page (page0Based).get();
+  std::unique_ptr<Page> page = m_document.page (page0Based);
   if (page != nullptr) {
 
     image = page->renderToImage (m_resolution,
@@ -199,7 +199,6 @@ QImage DlgImportCroppingPdf::loadImage (int page1Based) 
const
                                  WIDTH,
                                  HEIGHT);
 
-    delete page;
   }
 
   return image;
diff --git a/src/Import/ImportCroppingUtilPdf.cpp 
b/src/Import/ImportCroppingUtilPdf.cpp
index 14c17533..7f4d27aa 100644
--- a/src/Import/ImportCroppingUtilPdf.cpp
+++ b/src/Import/ImportCroppingUtilPdf.cpp
@@ -17,10 +17,9 @@ ImportCroppingUtilPdf::ImportCroppingUtilPdf()
 bool ImportCroppingUtilPdf::applyImportCropping (bool 
isErrorReportRegressionTest,
                                                  const QString &fileName,
                                                  ImportCropping importCropping,
-                                                 Document *&document) const
+                                                 std::unique_ptr<Document> 
&document) const
 {
-  document = nullptr;
-
+  document.reset();
   bool cropping = false;
 
   if (!isErrorReportRegressionTest) {
@@ -30,7 +29,7 @@ bool ImportCroppingUtilPdf::applyImportCropping (bool 
isErrorReportRegressionTes
 
       // Try to read the file
       QApplication::setOverrideCursor (Qt::BusyCursor); // Since load could 
take a while
-      document = Document::load (fileName).get();
+      document = Document::load (fileName);
       QApplication::restoreOverrideCursor();
       if (document != nullptr) {
         if (!document->isLocked ()) {
diff --git a/src/Import/ImportCroppingUtilPdf.h 
b/src/Import/ImportCroppingUtilPdf.h
index 567b55ca..ddd4f91f 100644
--- a/src/Import/ImportCroppingUtilPdf.h
+++ b/src/Import/ImportCroppingUtilPdf.h
@@ -9,6 +9,7 @@
 
 #include "ImportCropping.h"
 #include "ImportCroppingUtilBase.h"
+#include <memory>
 #include <QString>
 
 namespace Poppler {
@@ -29,7 +30,7 @@ public:
   bool applyImportCropping (bool isRegression,
                             const QString &fileName,
                             ImportCropping importCropping,
-                            Poppler::Document *&document) const;
+                            std::unique_ptr<Poppler::Document> &document) 
const;
 
 };
 
diff --git a/src/Pdf/Pdf.cpp b/src/Pdf/Pdf.cpp
index 4f104da2..e68bcd67 100644
--- a/src/Pdf/Pdf.cpp
+++ b/src/Pdf/Pdf.cpp
@@ -28,7 +28,7 @@ PdfReturn Pdf::load (const QString &fileName,
                      ImportCropping importCropping,
                      bool isErrorReportRegressionTest) const
 {
-  Document *document = nullptr;
+  std::unique_ptr<Document> document;
 
   ImportCroppingUtilPdf importCroppingUtil;
   bool cropping = importCroppingUtil.applyImportCropping 
(isErrorReportRegressionTest,
@@ -40,7 +40,7 @@ PdfReturn Pdf::load (const QString &fileName,
   QApplication::setOverrideCursor(Qt::BusyCursor); // Since loading can be slow
   if (cropping) {
 
-    rtn = loadWithCropping (document,
+    rtn = loadWithCropping (std::move(document),
                             image,
                             resolution);
 
@@ -53,13 +53,10 @@ PdfReturn Pdf::load (const QString &fileName,
   }
   QApplication::restoreOverrideCursor();
 
-  delete document;
-  document = nullptr;
-
   return rtn;
 }
 
-PdfReturn Pdf::loadWithCropping (Document *document,
+PdfReturn Pdf::loadWithCropping (std::unique_ptr<Document> document,
                                  QImage &image,
                                  int resolution) const
 {
@@ -94,12 +91,12 @@ PdfReturn Pdf::loadWithoutCropping (const QString &fileName,
   if (fileName.right (4).toLower () == ".pdf") {
 
     // Try to read the file
-    Document *document = Document::load (fileName).get();
+    std::unique_ptr<Document> document = Document::load (fileName);
 
     if (document != nullptr) {
       if (!document->isLocked ()) {
 
-        Page *page = document->page (FIRST_PAGE_1_BASED - 1).get();
+        std::unique_ptr<Page> page = document->page (FIRST_PAGE_1_BASED - 1);
         if (page != nullptr) {
 
           image = page->renderToImage (resolution,
@@ -112,12 +109,8 @@ PdfReturn Pdf::loadWithoutCropping (const QString 
&fileName,
           if (!image.isNull()) {
             pdfReturn = PDF_RETURN_SUCCESS;
           }
-
-          delete page;
         }
       }
-
-      delete document;
     }
   }
 
diff --git a/src/Pdf/Pdf.h b/src/Pdf/Pdf.h
index 8e488d9f..f9301d29 100644
--- a/src/Pdf/Pdf.h
+++ b/src/Pdf/Pdf.h
@@ -8,6 +8,7 @@
 #define PDF_H
 
 #include "ImportCropping.h"
+#include <memory>
 
 namespace Poppler {
   class Document;
@@ -40,7 +41,7 @@ public:
 
 private:
 
-  PdfReturn loadWithCropping (Poppler::Document *document,
+  PdfReturn loadWithCropping (std::unique_ptr<Poppler::Document> document,
                               QImage &image,
                               int resolution) const; // Dialog is used when 
not testing
   PdfReturn loadWithoutCropping (const QString &fileName,
-- 
2.54.0


++++++ 0001-Replace-log4cpp-with-Qt-categorized-logging.patch ++++++
++++ 16204 lines (skipped)

Reply via email to