Your message dated Tue, 24 Oct 2006 01:32:15 -0700
with message-id <[EMAIL PROTECTED]>
and subject line Bug#375332: fixed in poppler 0.4.5-5
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: poppler
Version: 0.4.5-4
Severity: normal
Tags: patch

Hi,

Attached is the diff for my poppler 0.4.5-4.1 NMU.
diff -u poppler-0.4.5/debian/changelog poppler-0.4.5/debian/changelog
--- poppler-0.4.5/debian/changelog
+++ poppler-0.4.5/debian/changelog
@@ -1,3 +1,11 @@
+poppler (0.4.5-4.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Backport SplashFTFont.cc from 0.5.2; fixes FTBFS with Freetype 2.2.
+    (Closes: #373991)
+
+ -- Steinar H. Gunderson <[EMAIL PROTECTED]>  Sun, 25 Jun 2006 11:55:39 +0200
+
 poppler (0.4.5-4) unstable; urgency=low
 
   * Fix FTBFS with gcc 4.1 (Closes: #357479)
only in patch2:
unchanged:
--- poppler-0.4.5.orig/debian/patches/005_freetype-2.2-ftbfs.patch
+++ poppler-0.4.5/debian/patches/005_freetype-2.2-ftbfs.patch
@@ -0,0 +1,210 @@
+--- poppler-0.4.5/splash/SplashFTFont.cc       2005-10-13 19:20:39.000000000 
+0200
++++ poppler-0.5.2/splash/SplashFTFont.cc       2006-04-12 03:58:57.000000000 
+0200
+@@ -12,6 +12,15 @@
+ #pragma implementation
+ #endif
+ 
++#define MAKE_VERSION( a,b,c ) (((a) << 16) | ((b) << 8) | (c))
++
++#define FREETYPE_VERSION \
++      MAKE_VERSION(FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH)
++
++#include <ft2build.h>
++#include FT_OUTLINE_H
++#include FT_SIZES_H
++#include FT_GLYPH_H
+ #include "goo/gmem.h"
+ #include "SplashMath.h"
+ #include "SplashGlyphBitmap.h"
+@@ -20,16 +29,21 @@
+ #include "SplashFTFontFile.h"
+ #include "SplashFTFont.h"
+ 
+-#include FT_OUTLINE_H
+-#include FT_INTERNAL_OBJECTS_H // needed for FT_New_Size decl
+-
+ //------------------------------------------------------------------------
+ 
++#if ( FREETYPE_VERSION >= MAKE_VERSION(2,2,0) )
++static int glyphPathMoveTo(const FT_Vector *pt, void *path);
++static int glyphPathLineTo(const FT_Vector *pt, void *path);
++static int glyphPathConicTo(const FT_Vector *ctrl, const FT_Vector *pt, void 
*path);
++static int glyphPathCubicTo(const FT_Vector *ctrl1, const FT_Vector *ctrl2,
++                          const FT_Vector *pt, void *path);
++#else
+ static int glyphPathMoveTo(FT_Vector *pt, void *path);
+ static int glyphPathLineTo(FT_Vector *pt, void *path);
+ static int glyphPathConicTo(FT_Vector *ctrl, FT_Vector *pt, void *path);
+ static int glyphPathCubicTo(FT_Vector *ctrl1, FT_Vector *ctrl2,
+                           FT_Vector *pt, void *path);
++#endif
+ 
+ //------------------------------------------------------------------------
+ // SplashFTFont
+@@ -39,7 +53,7 @@
+   SplashFont(fontFileA, matA, fontFileA->engine->aa)
+ {
+   FT_Face face;
+-  SplashCoord size, div;
++  double size, div;
+   int x, y;
+ 
+   face = fontFileA->face;
+@@ -112,14 +126,21 @@
+   }
+   if (yMax == yMin) {
+     yMin = 0;
+-    yMax = (int)(1.2 * size);
++    yMax = (int)((SplashCoord)1.2 * size);
+   }
+ 
+   // compute the transform matrix
++#if USE_FIXEDPOINT
++  matrix.xx = (FT_Fixed)((mat[0] / size).getRaw());
++  matrix.yx = (FT_Fixed)((mat[1] / size).getRaw());
++  matrix.xy = (FT_Fixed)((mat[2] / size).getRaw());
++  matrix.yy = (FT_Fixed)((mat[3] / size).getRaw());
++#else
+   matrix.xx = (FT_Fixed)((mat[0] / size) * 65536);
+   matrix.yx = (FT_Fixed)((mat[1] / size) * 65536);
+   matrix.xy = (FT_Fixed)((mat[2] / size) * 65536);
+   matrix.yy = (FT_Fixed)((mat[3] / size) * 65536);
++#endif
+ }
+ 
+ SplashFTFont::~SplashFTFont() {
+@@ -143,7 +164,7 @@
+   ff = (SplashFTFontFile *)fontFile;
+ 
+   ff->face->size = sizeObj;
+-  offset.x = (FT_Pos)(xFrac * splashFontFractionMul * 64);
++  offset.x = (FT_Pos)(int)((SplashCoord)xFrac * splashFontFractionMul * 64);
+   offset.y = 0;
+   FT_Set_Transform(ff->face, &matrix, &offset);
+   slot = ff->face->glyph;
+@@ -197,6 +218,11 @@
+   return gTrue;
+ }
+ 
++struct SplashFTFontPath {
++  SplashPath *path;
++  GBool needClose;
++};
++
+ SplashPath *SplashFTFont::getGlyphPath(int c) {
+   static FT_Outline_Funcs outlineFuncs = {
+     &glyphPathMoveTo,
+@@ -206,7 +232,7 @@
+     0, 0
+   };
+   SplashFTFontFile *ff;
+-  SplashPath *path;
++  SplashFTFontPath path;
+   FT_GlyphSlot slot;
+   FT_UInt gid;
+   FT_Glyph glyph;
+@@ -226,26 +252,56 @@
+   if (FT_Get_Glyph(slot, &glyph)) {
+     return NULL;
+   }
+-  path = new SplashPath();
++  path.path = new SplashPath();
++  path.needClose = gFalse;
+   FT_Outline_Decompose(&((FT_OutlineGlyph)glyph)->outline,
+-                     &outlineFuncs, path);
+-  return path;
++                     &outlineFuncs, &path);
++  if (path.needClose) {
++    path.path->close();
++  }
++  FT_Done_Glyph(glyph);
++  return path.path;
+ }
+ 
+-static int glyphPathMoveTo(FT_Vector *pt, void *path) {
+-  ((SplashPath *)path)->moveTo(pt->x / 64.0, -pt->y / 64.0);
++#if ( FREETYPE_VERSION >= MAKE_VERSION(2,2,0) )
++static int glyphPathMoveTo(const FT_Vector *pt, void *path)
++#else
++static int glyphPathMoveTo(FT_Vector *pt, void *path)
++#endif
++{
++  SplashFTFontPath *p = (SplashFTFontPath *)path;
++
++  if (p->needClose) {
++    p->path->close();
++    p->needClose = gFalse;
++  }
++  p->path->moveTo(pt->x / 64.0, -pt->y / 64.0);
+   return 0;
+ }
+ 
+-static int glyphPathLineTo(FT_Vector *pt, void *path) {
+-  ((SplashPath *)path)->lineTo(pt->x / 64.0, -pt->y / 64.0);
++#if ( FREETYPE_VERSION >= MAKE_VERSION(2,2,0) )
++static int glyphPathLineTo(const FT_Vector *pt, void *path)
++#else
++static int glyphPathLineTo(FT_Vector *pt, void *path)
++#endif
++{
++  SplashFTFontPath *p = (SplashFTFontPath *)path;
++
++  p->path->lineTo(pt->x / 64.0, -pt->y / 64.0);
++  p->needClose = gTrue;
+   return 0;
+ }
+ 
+-static int glyphPathConicTo(FT_Vector *ctrl, FT_Vector *pt, void *path) {
++#if ( FREETYPE_VERSION >= MAKE_VERSION(2,2,0) )
++static int glyphPathConicTo(const FT_Vector *ctrl, const FT_Vector *pt, void 
*path)
++#else
++static int glyphPathConicTo(FT_Vector *ctrl, FT_Vector *pt, void *path)
++#endif
++{
++  SplashFTFontPath *p = (SplashFTFontPath *)path;
+   SplashCoord x0, y0, x1, y1, x2, y2, x3, y3, xc, yc;
+ 
+-  if (!((SplashPath *)path)->getCurPt(&x0, &y0)) {
++  if (!p->path->getCurPt(&x0, &y0)) {
+     return 0;
+   }
+   xc = ctrl->x / 64.0;
+@@ -269,20 +325,28 @@
+   //     p1 = (1/3) * (p0 + 2pc)
+   //     p2 = (1/3) * (2pc + p3)
+ 
+-  x1 = (1.0 / 3.0) * (x0 + 2 * xc);
+-  y1 = (1.0 / 3.0) * (y0 + 2 * yc);
+-  x2 = (1.0 / 3.0) * (2 * xc + x3);
+-  y2 = (1.0 / 3.0) * (2 * yc + y3);
++  x1 = (SplashCoord)(1.0 / 3.0) * (x0 + (SplashCoord)2 * xc);
++  y1 = (SplashCoord)(1.0 / 3.0) * (y0 + (SplashCoord)2 * yc);
++  x2 = (SplashCoord)(1.0 / 3.0) * ((SplashCoord)2 * xc + x3);
++  y2 = (SplashCoord)(1.0 / 3.0) * ((SplashCoord)2 * yc + y3);
+ 
+-  ((SplashPath *)path)->curveTo(x1, y1, x2, y2, x3, y3);
++  p->path->curveTo(x1, y1, x2, y2, x3, y3);
++  p->needClose = gTrue;
+   return 0;
+ }
+ 
+-static int glyphPathCubicTo(FT_Vector *ctrl1, FT_Vector *ctrl2,
+-                          FT_Vector *pt, void *path) {
+-  ((SplashPath *)path)->curveTo(ctrl1->x / 64.0, -ctrl1->y / 64.0,
+-                              ctrl2->x / 64.0, -ctrl2->y / 64.0,
+-                              pt->x / 64.0, -pt->y / 64.0);
++#if ( FREETYPE_VERSION >= MAKE_VERSION(2,2,0) )
++static int glyphPathCubicTo(const FT_Vector *ctrl1, const FT_Vector *ctrl2, 
const FT_Vector *pt, void *path)
++#else
++static int glyphPathCubicTo(FT_Vector *ctrl1, FT_Vector *ctrl2, FT_Vector 
*pt, void *path)
++#endif
++{
++  SplashFTFontPath *p = (SplashFTFontPath *)path;
++
++  p->path->curveTo(ctrl1->x / 64.0, -ctrl1->y / 64.0,
++                 ctrl2->x / 64.0, -ctrl2->y / 64.0,
++                 pt->x / 64.0, -pt->y / 64.0);
++  p->needClose = gTrue;
+   return 0;
+ }
+ 

--- End Message ---
--- Begin Message ---
Source: poppler
Source-Version: 0.4.5-5

We believe that the bug you reported is fixed in the latest version of
poppler, which is due to be installed in the Debian FTP archive:

libpoppler-dev_0.4.5-5_i386.deb
  to pool/main/p/poppler/libpoppler-dev_0.4.5-5_i386.deb
libpoppler-glib-dev_0.4.5-5_i386.deb
  to pool/main/p/poppler/libpoppler-glib-dev_0.4.5-5_i386.deb
libpoppler-qt-dev_0.4.5-5_i386.deb
  to pool/main/p/poppler/libpoppler-qt-dev_0.4.5-5_i386.deb
libpoppler0c2-glib_0.4.5-5_i386.deb
  to pool/main/p/poppler/libpoppler0c2-glib_0.4.5-5_i386.deb
libpoppler0c2-qt_0.4.5-5_i386.deb
  to pool/main/p/poppler/libpoppler0c2-qt_0.4.5-5_i386.deb
libpoppler0c2_0.4.5-5_i386.deb
  to pool/main/p/poppler/libpoppler0c2_0.4.5-5_i386.deb
poppler-utils_0.4.5-5_i386.deb
  to pool/main/p/poppler/poppler-utils_0.4.5-5_i386.deb
poppler_0.4.5-5.diff.gz
  to pool/main/p/poppler/poppler_0.4.5-5.diff.gz
poppler_0.4.5-5.dsc
  to pool/main/p/poppler/poppler_0.4.5-5.dsc



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Ondřej Surý <[EMAIL PROTECTED]> (supplier of updated poppler package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Tue, 24 Oct 2006 10:09:19 +0200
Source: poppler
Binary: libpoppler-glib-dev poppler-utils libpoppler0c2-qt libpoppler-qt-dev 
libpoppler-dev libpoppler0c2-glib libpoppler0c2
Architecture: source i386
Version: 0.4.5-5
Distribution: unstable
Urgency: low
Maintainer: Ondřej Surý <[EMAIL PROTECTED]>
Changed-By: Ondřej Surý <[EMAIL PROTECTED]>
Description: 
 libpoppler-dev - PDF rendering library -- development files
 libpoppler-glib-dev - PDF rendering library -- development files (GLib 
interface)
 libpoppler-qt-dev - PDF rendering library -- development files (Qt interface)
 libpoppler0c2 - PDF rendering library
 libpoppler0c2-glib - PDF rendering library (GLib-based shared library)
 libpoppler0c2-qt - PDF rendering library (Qt-based shared library)
 poppler-utils - PDF utilitites (based on libpoppler)
Closes: 375332 393162
Changes: 
 poppler (0.4.5-5) unstable; urgency=low
 .
   * Acknowledge NMU (Closes: #375332)
   * Add versioned conflict on pdftohtml (Closes: #393162)
Files: 
 7d219f5290c8314387d927a4aefd328a 735 devel optional poppler_0.4.5-5.dsc
 3b30664009378881fcecccad590543c3 481140 devel optional poppler_0.4.5-5.diff.gz
 1551e57e627bb8efa3783ecbb4567b71 442644 libs optional 
libpoppler0c2_0.4.5-5_i386.deb
 16bb1abeb92097ccec0ef89b73b086db 572966 libdevel optional 
libpoppler-dev_0.4.5-5_i386.deb
 2485b70c663a2e0dd185b17b780de559 40296 libs optional 
libpoppler0c2-glib_0.4.5-5_i386.deb
 467952f5a405edba253dc515372185e2 43814 libdevel optional 
libpoppler-glib-dev_0.4.5-5_i386.deb
 459b490f0e04f5c859d7656a4cfc3628 29068 libs optional 
libpoppler0c2-qt_0.4.5-5_i386.deb
 26ad541b6709bb0505711e2931edcace 29822 libdevel optional 
libpoppler-qt-dev_0.4.5-5_i386.deb
 5e9988978e47696d1d11bb54b753a878 80478 utils optional 
poppler-utils_0.4.5-5_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)

iD8DBQFFPcym9OZqfMIN8nMRAqReAJ9XVxPef2gVe0OJl4KKu0AaEk4wNACcD6NT
dPSQAqzm7SpqRK+a0fktHM4=
=BGEk
-----END PGP SIGNATURE-----


--- End Message ---

Reply via email to