[arch-commits] Commit in inkscape/trunk (PKGBUILD inkscape-0.46-poppler-0.8.3.patch)

Giovanni Scafora giovanni at archlinux.org
Wed Sep 3 08:17:10 UTC 2008


    Date: Wednesday, September 3, 2008 @ 04:17:08
  Author: giovanni
Revision: 11772

Added patch to avoid crash importing a pdf file

Added:
  inkscape/trunk/inkscape-0.46-poppler-0.8.3.patch
Modified:
  inkscape/trunk/PKGBUILD

-----------------------------------+
 PKGBUILD                          |   10 +++++---
 inkscape-0.46-poppler-0.8.3.patch |   42 ++++++++++++++++++++++++++++++++++++
 2 files changed, 48 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2008-09-02 23:44:53 UTC (rev 11771)
+++ PKGBUILD	2008-09-03 08:17:08 UTC (rev 11772)
@@ -4,10 +4,10 @@
 
 pkgname=inkscape
 pkgver=0.46
-pkgrel=4
+pkgrel=5
 pkgdesc="A vector-based drawing program - svg compliant"
 url="http://inkscape.sourceforge.net/"
-arch=(i686 x86_64)
+arch=('i686' 'x86_64')
 license=('GPL' 'LGPL')
 depends=('gtkmm>=2.12.6' 'gc>=7.0' 'desktop-file-utils' 'libxslt>=1.1.22' \
          'perl>=5.10.0' 'pyxml' 'openssl>=0.9.8d' 'lcms' 'gtkspell' 'poppler-glib>=0.8.0' \
@@ -16,13 +16,15 @@
 options=('!libtool')
 install=inkscape.install
 source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz"
-        perl-5.10.patch)
+        perl-5.10.patch inkscape-0.46-poppler-0.8.3.patch)
 md5sums=('3bae9034047379012127e52f9b138d32'
-         'da1009efea12f6512e69cc3ec8604f4f')
+         'da1009efea12f6512e69cc3ec8604f4f'
+         'fffe7ed73bdadcf0f90282d5afc4df30')
 
 build() {
   cd ${startdir}/src/${pkgname}-${pkgver}
   patch -Np1 -i ../perl-5.10.patch || return 1
+  patch -Np1 -i ../inkscape-0.46-poppler-0.8.3.patch || return 1
   CFLAGS="${CFLAGS} -I/usr/include/ImageMagick" \
   CXXFLAGS="${CXXFLAGS} -I/usr/include/ImageMagick" \
    ./configure --prefix=/usr \

Added: inkscape-0.46-poppler-0.8.3.patch
===================================================================
--- inkscape-0.46-poppler-0.8.3.patch	                        (rev 0)
+++ inkscape-0.46-poppler-0.8.3.patch	2008-09-03 08:17:08 UTC (rev 11772)
@@ -0,0 +1,42 @@
+diff -NrU5 inkscape-0.46.orig/src/extension/internal/pdfinput/pdf-parser.cpp inkscape-0.46/src/extension/internal/pdfinput/pdf-parser.cpp
+--- inkscape-0.46.orig/src/extension/internal/pdfinput/pdf-parser.cpp	2008-06-05 00:26:20.000000000 +0200
++++ inkscape-0.46/src/extension/internal/pdfinput/pdf-parser.cpp	2008-06-05 00:51:47.000000000 +0200
+@@ -2194,11 +2194,11 @@
+ void PdfParser::doShowText(GooString *s) {
+   GfxFont *font;
+   int wMode;
+   double riseX, riseY;
+   CharCode code;
+-  Unicode u[8];
++  Unicode *u = NULL;
+   double x, y, dx, dy, dx2, dy2, curX, curY, tdx, tdy, lineX, lineY;
+   double originX, originY, tOriginX, tOriginY;
+   double oldCTM[6], newCTM[6];
+   double *mat;
+   Object charProc;
+@@ -2242,11 +2242,11 @@
+     oldParser = parser;
+     p = s->getCString();
+     len = s->getLength();
+     while (len > 0) {
+       n = font->getNextChar(p, len, &code,
+-			    u, (int)(sizeof(u) / sizeof(Unicode)), &uLen,
++			    &u, &uLen,
+ 			    &dx, &dy, &originX, &originY);
+       dx = dx * state->getFontSize() + state->getCharSpace();
+       if (n == 1 && *p == ' ') {
+ 	dx += state->getWordSpace();
+       }
+@@ -2291,11 +2291,11 @@
+     state->textTransformDelta(0, state->getRise(), &riseX, &riseY);
+     p = s->getCString();
+     len = s->getLength();
+     while (len > 0) {
+       n = font->getNextChar(p, len, &code,
+-			    u, (int)(sizeof(u) / sizeof(Unicode)), &uLen,
++			    &u, &uLen,
+ 			    &dx, &dy, &originX, &originY);
+       
+       if (wMode) {
+ 	dx *= state->getFontSize();
+ 	dy = dy * state->getFontSize() + state->getCharSpace();




More information about the arch-commits mailing list