Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package inkscape for openSUSE:Factory 
checked in at 2025-09-23 16:06:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/inkscape (Old)
 and      /work/SRC/openSUSE:Factory/.inkscape.new.27445 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "inkscape"

Tue Sep 23 16:06:57 2025 rev:147 rq:1306582 version:1.4.2+git48.4b73df015e

Changes:
--------
--- /work/SRC/openSUSE:Factory/inkscape/inkscape.changes        2025-08-18 
16:08:09.402687642 +0200
+++ /work/SRC/openSUSE:Factory/.inkscape.new.27445/inkscape.changes     
2025-09-23 16:07:26.771982270 +0200
@@ -1,0 +2,7 @@
+Mon Sep 22 14:39:07 UTC 2025 - [email protected]
+
+- fix building with Poppler 25.09.0
+- added patches
+  + b60d81745016b5f20d4c6aec6d073b8a6f3e499c.patch
+
+-------------------------------------------------------------------

New:
----
  b60d81745016b5f20d4c6aec6d073b8a6f3e499c.patch

----------(New B)----------
  New:- added patches
  + b60d81745016b5f20d4c6aec6d073b8a6f3e499c.patch
----------(New E)----------

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

Other differences:
------------------
++++++ inkscape.spec ++++++
--- /var/tmp/diff_new_pack.sKWJns/_old  2025-09-23 16:07:28.400050640 +0200
+++ /var/tmp/diff_new_pack.sKWJns/_new  2025-09-23 16:07:28.400050640 +0200
@@ -29,6 +29,8 @@
 Source2:        inkscape-split-extensions-extra.py
 # PATCH-FIX-UPSTREAM ce52c5f96106ae5747171663a46831f21aa52d95.patch -- Fix 
building with Poppler 25.07.0
 Patch:          
https://gitlab.com/inkscape/inkscape/-/commit/ce52c5f96106ae5747171663a46831f21aa52d95.patch
+# PATCH-FIX-UPSTREAM b60d81745016b5f20d4c6aec6d073b8a6f3e499c.patch -- Fix 
building with Poppler 25.09.0
+Patch1:         
https://gitlab.com/inkscape/inkscape/-/commit/b60d81745016b5f20d4c6aec6d073b8a6f3e499c.patch
 
 BuildRequires:  cmake
 BuildRequires:  double-conversion-devel

++++++ b60d81745016b5f20d4c6aec6d073b8a6f3e499c.patch ++++++
>From b60d81745016b5f20d4c6aec6d073b8a6f3e499c Mon Sep 17 00:00:00 2001
From: mike kowalski <[email protected]>
Date: Tue, 2 Sep 2025 07:17:25 -0700
Subject: [PATCH] Fix build with poppler 25.09.0

API changes: double* -> std::array necessitates fixes in Inkscape.
The goal is to make it build with older poppler versions too.
---
 src/extension/internal/pdfinput/pdf-parser.cpp                | 3 +--
 src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp | 2 +-
 src/extension/internal/pdfinput/poppler-utils.cpp             | 4 ++++
 src/extension/internal/pdfinput/poppler-utils.h               | 4 ++++
 src/extension/internal/pdfinput/svg-builder.cpp               | 4 ++--
 5 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp 
b/src/extension/internal/pdfinput/pdf-parser.cpp
index 50d5e8ef8e1..1bdd0c6374c 100644
--- a/src/extension/internal/pdfinput/pdf-parser.cpp
+++ b/src/extension/internal/pdfinput/pdf-parser.cpp
@@ -1656,12 +1656,11 @@ void PdfParser::doFunctionShFill1(GfxFunctionShading 
*shading,
   GfxColor color0M, color1M, colorM0, colorM1, colorMM;
   GfxColor colors2[4];
   double functionColorDelta = colorDeltas[pdfFunctionShading-1];
-  const double *matrix;
   double xM, yM;
   int nComps, i, j;
 
   nComps = shading->getColorSpace()->getNComps();
-  matrix = shading->getMatrix();
+  const auto& matrix = shading->getMatrix();
 
   // compare the four corner colors
   for (i = 0; i < 4; ++i) {
diff --git a/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp 
b/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp
index cfc6961f629..986c19e1d81 100644
--- a/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp
+++ b/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp
@@ -633,7 +633,7 @@ static cairo_status_t _init_type3_glyph(cairo_scaled_font_t 
*scaled_font, cairo_
 
     info = (type3_font_info_t 
*)cairo_font_face_get_user_data(cairo_scaled_font_get_font_face(scaled_font),
                                                               &type3_font_key);
-    const double *mat = info->font->getFontBBox();
+    const auto& mat = info->font->getFontBBox();
     extents->ascent = mat[3];   /* y2 */
     extents->descent = -mat[3]; /* -y1 */
     extents->height = extents->ascent + extents->descent;
diff --git a/src/extension/internal/pdfinput/poppler-utils.cpp 
b/src/extension/internal/pdfinput/poppler-utils.cpp
index 6af37ce7f95..a50f59001bb 100644
--- a/src/extension/internal/pdfinput/poppler-utils.cpp
+++ b/src/extension/internal/pdfinput/poppler-utils.cpp
@@ -39,6 +39,10 @@ Geom::Affine ctmToAffine(const double *ctm)
     return Geom::Affine(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]);
 }
 
+Geom::Affine ctmToAffine(const std::array<double, 6>& ctm) {
+    return ctmToAffine(ctm.data());
+}
+
 void ctmout(const char *label, const double *ctm)
 {
     std::cout << "C:" << label << ":" << ctm[0] << "," << ctm[1] << "," << 
ctm[2] << "," << ctm[3] << "," << ctm[4]
diff --git a/src/extension/internal/pdfinput/poppler-utils.h 
b/src/extension/internal/pdfinput/poppler-utils.h
index 705665a8cd6..55c7ae4da54 100644
--- a/src/extension/internal/pdfinput/poppler-utils.h
+++ b/src/extension/internal/pdfinput/poppler-utils.h
@@ -13,6 +13,7 @@
 #ifndef POPPLER_UTILS_H
 #define POPPLER_UTILS_H
 
+#include <array>
 #include <map>
 #include <memory>
 #include <string>
@@ -36,7 +37,10 @@ class Ref;
 class XRef;
 
 Geom::Affine stateToAffine(GfxState *state);
+// this function is for Poppler older than v25.09.0
 Geom::Affine ctmToAffine(const double *ctm);
+// this flavor is for Poppler v25.09.0 and above
+Geom::Affine ctmToAffine(const std::array<double, 6>& ctm);
 
 void ctmout(const char *label, const double *ctm);
 void affout(const char *label, Geom::Affine affine);
diff --git a/src/extension/internal/pdfinput/svg-builder.cpp 
b/src/extension/internal/pdfinput/svg-builder.cpp
index d612602738f..fbc39653c38 100644
--- a/src/extension/internal/pdfinput/svg-builder.cpp
+++ b/src/extension/internal/pdfinput/svg-builder.cpp
@@ -1136,7 +1136,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern 
*tiling_pattern,
     pattern_node->setAttribute("patternUnits", "userSpaceOnUse");
     // Set pattern tiling
     // FIXME: don't ignore XStep and YStep
-    const double *bbox = tiling_pattern->getBBox();
+    const auto& bbox = tiling_pattern->getBBox();
     pattern_node->setAttributeSvgDouble("x", 0.0);
     pattern_node->setAttributeSvgDouble("y", 0.0);
     pattern_node->setAttributeSvgDouble("width", bbox[2] - bbox[0]);
@@ -1367,7 +1367,7 @@ void SvgBuilder::updateFont(GfxState *state, 
std::shared_ptr<CairoFont> cairo_fo
 
     auto new_font_size = state->getFontSize();
     if (font->getType() == fontType3) {
-        const double *font_matrix = font->getFontMatrix();
+        const auto& font_matrix = font->getFontMatrix();
         if (font_matrix[0] != 0.0) {
             new_font_size *= font_matrix[3] / font_matrix[0];
         }
-- 
GitLab

Reply via email to