diff options
Diffstat (limited to 'Build/source/libs/poppler/poppler-src')
8 files changed, 109 insertions, 10 deletions
diff --git a/Build/source/libs/poppler/poppler-src/CMakeLists.txt b/Build/source/libs/poppler/poppler-src/CMakeLists.txt index e58a41d5bdb..d30fa4b1c73 100644 --- a/Build/source/libs/poppler/poppler-src/CMakeLists.txt +++ b/Build/source/libs/poppler/poppler-src/CMakeLists.txt @@ -22,7 +22,7 @@ if (ECM_FOUND) endif() set(POPPLER_MAJOR_VERSION "0") -set(POPPLER_MINOR_VERSION "40") +set(POPPLER_MINOR_VERSION "41") set(POPPLER_MICRO_VERSION "0") set(POPPLER_VERSION "${POPPLER_MAJOR_VERSION}.${POPPLER_MINOR_VERSION}.${POPPLER_MICRO_VERSION}") diff --git a/Build/source/libs/poppler/poppler-src/ChangeLog b/Build/source/libs/poppler/poppler-src/ChangeLog index 0b23e0f8f1d..b1785bebd13 100644 --- a/Build/source/libs/poppler/poppler-src/ChangeLog +++ b/Build/source/libs/poppler/poppler-src/ChangeLog @@ -1,3 +1,45 @@ +commit 5689c990a187108ddc0a88b9825ba3bea644368f +Author: Thomas Freitag <Thomas.Freitag@alfa.de> +Date: Tue Feb 16 01:44:31 2016 +0100 + + Adjust limit check and check in addition bitmap pointer + + Bug #94053 + + poppler/SplashOutputDev.cc | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +commit 57bc52b93e6431f0dc7762e2001dedd614383001 +Author: Jakub Wilk <jwilk@debian.org> +Date: Sun Feb 14 11:22:31 2016 +0100 + + pdfinfo manpage: corrupted description of -js and -rawdates + + utils/pdfinfo.1 | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +commit ab3c9ccb630004be049cb59f303612aa2a35f408 +Author: Adrian Johnson <ajohnson@redneon.com> +Date: Fri Feb 12 20:15:46 2016 +1030 + + cairo: add missing font types (fontCIDType0COT and fontTrueTypeOT) + + bug 93559 + + poppler/CairoFontEngine.cc | 41 ++++++++++++++++++++++++++++++++++++++--- + 1 file changed, 38 insertions(+), 3 deletions(-) + +commit f1c4d8ac1fe4293566285117170e8234c1be3943 +Author: Albert Astals Cid <aacid@kde.org> +Date: Thu Feb 4 01:08:59 2016 +0100 + + pdfseparate: Refine resource detection + + Related to bug #87637 + + poppler/PDFDoc.cc | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + commit 449d45fab8e61393d858549460e61599e4dbd7eb Author: Albert Astals Cid <aacid@kde.org> Date: Wed Jan 13 23:19:12 2016 +0100 diff --git a/Build/source/libs/poppler/poppler-src/NEWS b/Build/source/libs/poppler/poppler-src/NEWS index cbe433d7303..22f7e54df2b 100644 --- a/Build/source/libs/poppler/poppler-src/NEWS +++ b/Build/source/libs/poppler/poppler-src/NEWS @@ -1,3 +1,12 @@ +Release 0.41.0 + core: + * CairoOutputDev: add missing font types (fontCIDType0COT and fontTrueTypeOT). Bug #93559 + * SplashOutputDev: Adjust limit check and check in addition bitmap pointer. Bug #94053 + + utils: + * pdfseparate: Refine resource detection + * pdfinfo: fix man page + Release 0.40.0 core: * CairoOutputDev: Use shape mask with soft mask. Bug #91931 diff --git a/Build/source/libs/poppler/poppler-src/config.h.in b/Build/source/libs/poppler/poppler-src/config.h.in index 786143b27d4..14c5129fe2d 100644 --- a/Build/source/libs/poppler/poppler-src/config.h.in +++ b/Build/source/libs/poppler/poppler-src/config.h.in @@ -153,8 +153,7 @@ /* Define as const if the declaration of iconv() needs const. */ #undef ICONV_CONST -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ +/* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Enable multithreading support. */ diff --git a/Build/source/libs/poppler/poppler-src/configure.ac b/Build/source/libs/poppler/poppler-src/configure.ac index 1e34506f760..45575bed9b9 100644 --- a/Build/source/libs/poppler/poppler-src/configure.ac +++ b/Build/source/libs/poppler/poppler-src/configure.ac @@ -1,5 +1,5 @@ m4_define([poppler_version_major],[0]) -m4_define([poppler_version_minor],[40]) +m4_define([poppler_version_minor],[41]) m4_define([poppler_version_micro],[0]) m4_define([poppler_version],[poppler_version_major.poppler_version_minor.poppler_version_micro]) diff --git a/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc b/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc index 1d611b59d3c..3cff917a425 100644 --- a/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc +++ b/Build/source/libs/poppler/poppler-src/poppler/CairoFontEngine.cc @@ -21,7 +21,7 @@ // Copyright (C) 2006, 2007, 2010, 2011 Carlos Garcia Campos <carlosgc@gnome.org> // Copyright (C) 2007 Koji Otani <sho@bbr.jp> // Copyright (C) 2008, 2009 Chris Wilson <chris@chris-wilson.co.uk> -// Copyright (C) 2008, 2012, 2014 Adrian Johnson <ajohnson@redneon.com> +// Copyright (C) 2008, 2012, 2014, 2016 Adrian Johnson <ajohnson@redneon.com> // Copyright (C) 2009 Darren Kenny <darren.kenny@sun.com> // Copyright (C) 2010 Suzuki Toshiya <mpsuzuki@hiroshima-u.ac.jp> // Copyright (C) 2010 Jan Kümmel <jan+freedesktop@snorc.org> @@ -499,6 +499,7 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, codeToGIDLen = n; /* Fall through */ case fontTrueType: + case fontTrueTypeOT: if (font_data != NULL) { ff = FoFiTrueType::make(font_data, font_data_len); } else { @@ -509,7 +510,7 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, goto err2; } /* This might be set already for the CIDType2 case */ - if (fontType == fontTrueType) { + if (fontType == fontTrueType || fontType == fontTrueTypeOT) { codeToGID = ((Gfx8BitFont *)gfxFont)->getCodeToGIDMap(ff); codeToGIDLen = 256; } @@ -544,7 +545,41 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, goto err2; } break; - + + case fontCIDType0COT: + codeToGID = NULL; + n = 0; + if (((GfxCIDFont *)gfxFont)->getCIDToGID()) { + n = ((GfxCIDFont *)gfxFont)->getCIDToGIDLen(); + if (n) { + codeToGID = (int *)gmallocn(n, sizeof(int)); + memcpy(codeToGID, ((GfxCIDFont *)gfxFont)->getCIDToGID(), + n * sizeof(int)); + } + } + codeToGIDLen = n; + + if (!codeToGID) { + if (!useCIDs) { + if (font_data != NULL) { + ff = FoFiTrueType::make(font_data, font_data_len); + } else { + ff = FoFiTrueType::load(fileNameC); + } + if (ff) { + if (ff->isOpenTypeCFF()) { + codeToGID = ff->getCIDToGIDMap((int *)&codeToGIDLen); + } + delete ff; + } + } + } + if (! _ft_new_face (lib, fileNameC, font_data, font_data_len, &face, &font_face)) { + error(errSyntaxError, -1, "could not create cid (OT) face\n"); + goto err2; + } + break; + default: fprintf (stderr, "font type %d not handled\n", (int)fontType); goto err2; diff --git a/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc b/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc index 46c4544e75b..8287060ae6c 100644 --- a/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc +++ b/Build/source/libs/poppler/poppler-src/poppler/PDFDoc.cc @@ -26,7 +26,7 @@ // Copyright (C) 2010 Ilya Gorenbein <igorenbein@finjan.com> // Copyright (C) 2010 Srinivas Adicherla <srinivas.adicherla@geodesic.com> // Copyright (C) 2010 Philip Lorenz <lorenzph+freedesktop@gmail.com> -// Copyright (C) 2011-2015 Thomas Freitag <Thomas.Freitag@alfa.de> +// Copyright (C) 2011-2016 Thomas Freitag <Thomas.Freitag@alfa.de> // Copyright (C) 2012, 2013 Fabio D'Urso <fabiodurso@hotmail.it> // Copyright (C) 2013, 2014 Adrian Johnson <ajohnson@redneon.com> // Copyright (C) 2013 Adam Reichold <adamreichold@myopera.com> @@ -701,6 +701,13 @@ int PDFDoc::savePageAs(GooString *name, int pageNo) markPageObjects(catDict, yRef, countRef, 0, refPage->num, rootNum + 2); Dict *pageDict = page.getDict(); + if (resourcesObj.isNull() && !pageDict->hasKey("Resources")) { + Dict *resourceDict = getCatalog()->getPage(pageNo)->getResourceDict(); + if (resourceDict != NULL) { + resourcesObj.initDict(resourceDict); + markPageObjects(resourcesObj.getDict(), yRef, countRef, 0, refPage->num, rootNum + 2); + } + } markPageObjects(pageDict, yRef, countRef, 0, refPage->num, rootNum + 2); pageDict->lookupNF("Annots", &annotsObj); if (!annotsObj.isNull()) { diff --git a/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc b/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc index d2827d14645..ac0f9ac19ff 100644 --- a/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc +++ b/Build/source/libs/poppler/poppler-src/poppler/SplashOutputDev.cc @@ -20,7 +20,7 @@ // Copyright (C) 2006 Scott Turner <scotty1024@mac.com> // Copyright (C) 2007 Koji Otani <sho@bbr.jp> // Copyright (C) 2009 Petr Gajdos <pgajdos@novell.com> -// Copyright (C) 2009-2015 Thomas Freitag <Thomas.Freitag@alfa.de> +// Copyright (C) 2009-2016 Thomas Freitag <Thomas.Freitag@alfa.de> // Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org> // Copyright (C) 2009, 2014, 2015 William Bader <williambader@hotmail.com> // Copyright (C) 2010 Patrick Spendrin <ps_ml@gmx.de> @@ -4481,7 +4481,7 @@ GBool SplashOutputDev::tilingPatternFill(GfxState *state, Gfx *gfxA, Catalog *ca repeatX = x1 - x0; repeatY = y1 - y0; } else { - if ((unsigned long) result_width * result_height > 0x800000L) { + if ((unsigned long) surface_width * surface_height > 0x800000L) { state->setCTM(savedCTM[0], savedCTM[1], savedCTM[2], savedCTM[3], savedCTM[4], savedCTM[5]); return gFalse; } @@ -4525,6 +4525,13 @@ GBool SplashOutputDev::tilingPatternFill(GfxState *state, Gfx *gfxA, Catalog *ca bitmap = new SplashBitmap(surface_width, surface_height, 1, (paintType == 1) ? colorMode : splashModeMono8, gTrue); + if (bitmap->getDataPtr() == NULL) { + SplashBitmap *tBitmap = bitmap; + bitmap = formerBitmap; + delete tBitmap; + state->setCTM(savedCTM[0], savedCTM[1], savedCTM[2], savedCTM[3], savedCTM[4], savedCTM[5]); + return gFalse; + } splash = new Splash(bitmap, gTrue); if (paintType == 2) { SplashColor clearColor; |