Index | Thread | Search

From:
Matthias Kilian <kili@outback.escape.de>
Subject:
scribus (was: fix print/inkscape with new poppler)
To:
ports@openbsd.org
Date:
Mon, 18 Mar 2024 21:44:29 +0100

Download raw body.

Thread
Hi,

On Sun, Mar 17, 2024 at 10:34:00PM +0100, Matthias Kilian wrote:
> similiar to the fix of graphics/inkscape, this fixes the build with
> poppler-24.03.0.

Argh! I meant print/scribus, and here's the correct diff:

Index: patches/patch-scribus_plugins_import_pdf_slaoutput_cpp
===================================================================
RCS file: patches/patch-scribus_plugins_import_pdf_slaoutput_cpp
diff -N patches/patch-scribus_plugins_import_pdf_slaoutput_cpp
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-scribus_plugins_import_pdf_slaoutput_cpp	17 Mar 2024 19:40:21 -0000
@@ -0,0 +1,41 @@
+Fix build with poppler-24.03.
+
+Index: scribus/plugins/import/pdf/slaoutput.cpp
+--- scribus/plugins/import/pdf/slaoutput.cpp.orig
++++ scribus/plugins/import/pdf/slaoutput.cpp
+@@ -1845,7 +1845,7 @@ GBool SlaOutputDev::axialShadedFill(GfxState *state, G
+ 	VGradient FillGradient = VGradient(VGradient::linear);
+ 	FillGradient.clearStops();
+ 	GfxColorSpace *color_space = shading->getColorSpace();
+-	if (func->getType() == 3)
++	if (func->getType() == Function::Type::PostScript)
+ 	{
+ 		StitchingFunction *stitchingFunc = (StitchingFunction*)func;
+ 		const double *bounds = stitchingFunc->getBounds();
+@@ -1867,7 +1867,7 @@ GBool SlaOutputDev::axialShadedFill(GfxState *state, G
+ 			FillGradient.addStop( ScColorEngine::getShadeColor(m_doc->PageColors[stopColor], m_doc, shade), stopPoint, 0.5, 1.0, stopColor, shade );
+ 		}
+ 	}
+-	else if ((func->getType() == 2) || (func->getType() == 0))
++	else if ((func->getType() == Function::Type::Stitching) || (func->getType() == Function::Type::Sampled))
+ 	{
+ 		GfxColor stop1;
+ 		shading->getColor(0.0, &stop1);
+@@ -1979,7 +1979,7 @@ GBool SlaOutputDev::radialShadedFill(GfxState *state, 
+ 	VGradient FillGradient = VGradient(VGradient::linear);
+ 	FillGradient.clearStops();
+ 	GfxColorSpace *color_space = shading->getColorSpace();
+-	if (func->getType() == 3)
++	if (func->getType() == Function::Type::PostScript)
+ 	{
+ 		StitchingFunction *stitchingFunc = (StitchingFunction*)func;
+ 		const double *bounds = stitchingFunc->getBounds();
+@@ -2001,7 +2001,7 @@ GBool SlaOutputDev::radialShadedFill(GfxState *state, 
+ 			FillGradient.addStop( ScColorEngine::getShadeColor(m_doc->PageColors[stopColor], m_doc, shade), stopPoint, 0.5, 1.0, stopColor, shade );
+ 		}
+ 	}
+-	else if ((func->getType() == 2) || (func->getType() == 0))
++	else if ((func->getType() == Function::Type::Stitching) || (func->getType() == Function::Type::Sampled))
+ 	{
+ 		GfxColor stop1;
+ 		shading->getColor(0.0, &stop1);