Update to poppler-0.87.0.

This commit is contained in:
kili 2020-04-03 20:48:24 +00:00
parent c6f5bbdd01
commit d56dfefced
6 changed files with 6 additions and 306 deletions

View File

@ -1,25 +1,21 @@
# $OpenBSD: Makefile,v 1.156 2020/03/30 18:26:06 kili Exp $
# $OpenBSD: Makefile,v 1.157 2020/04/03 20:48:24 kili Exp $
COMMENT-main= PDF rendering library
COMMENT-qt5= Qt5 interface to PDF rendering library
COMMENT-utils= PDF conversion tools and utilities
V= 0.86.1
V= 0.87.0
DISTNAME= poppler-$V
CATEGORIES= print
PKGNAME-main= poppler-$V
PKGNAME-utils= poppler-utils-$V
PKGNAME-qt5= poppler-qt5-$V
REVISION-main= 1
REVISION-glib= 0
REVISION-utils= 1
REVISION-qt5= 0
EXTRACT_SUFX= .tar.xz
SHARED_LIBS += poppler 61.1 # 97.0
SHARED_LIBS += poppler 62.0 # 98.0
SHARED_LIBS += poppler-glib 19.4 # 8.15
SHARED_LIBS += poppler-qt5 8.2 # 1.22
SHARED_LIBS += poppler-qt5 8.3 # 1.23
SHARED_LIBS += poppler-cpp 16.0 # 0.7
HOMEPAGE= https://poppler.freedesktop.org/

View File

@ -1,2 +1,2 @@
SHA256 (poppler-0.86.1.tar.xz) = r2MKJ3yOGUwxM5xURiQYNK7W7T1LTccIAxHlHGYlf2w=
SIZE (poppler-0.86.1.tar.xz) = 1593856
SHA256 (poppler-0.87.0.tar.xz) = b2ArnCTC0FeAvpPnMGIBAS5BRZ8om4J5onp5QxrUFQ4=
SIZE (poppler-0.87.0.tar.xz) = 1595088

View File

@ -1,60 +0,0 @@
$OpenBSD: patch-glib_poppler-action_cc,v 1.1 2020/03/30 18:26:06 kili Exp $
Upstream commit 68b6dd2ecd868c1a757cb8b9273e2e26687e5229 (Adam
Reichold):
Replace dynamic_cast by static_cast where we already perform the
type checks explicitly before downcasting.
Index: glib/poppler-action.cc
--- glib/poppler-action.cc.orig
+++ glib/poppler-action.cc
@@ -627,39 +627,39 @@ _poppler_action_new (PopplerDocument *document,
switch (link->getKind ()) {
case actionGoTo:
action->type = POPPLER_ACTION_GOTO_DEST;
- build_goto_dest (document, action, dynamic_cast <const LinkGoTo *> (link));
+ build_goto_dest (document, action, static_cast <const LinkGoTo *> (link));
break;
case actionGoToR:
action->type = POPPLER_ACTION_GOTO_REMOTE;
- build_goto_remote (action, dynamic_cast <const LinkGoToR *> (link));
+ build_goto_remote (action, static_cast <const LinkGoToR *> (link));
break;
case actionLaunch:
action->type = POPPLER_ACTION_LAUNCH;
- build_launch (action, dynamic_cast <const LinkLaunch *> (link));
+ build_launch (action, static_cast <const LinkLaunch *> (link));
break;
case actionURI:
action->type = POPPLER_ACTION_URI;
- build_uri (action, dynamic_cast <const LinkURI *> (link));
+ build_uri (action, static_cast <const LinkURI *> (link));
break;
case actionNamed:
action->type = POPPLER_ACTION_NAMED;
- build_named (action, dynamic_cast <const LinkNamed *> (link));
+ build_named (action, static_cast <const LinkNamed *> (link));
break;
case actionMovie:
action->type = POPPLER_ACTION_MOVIE;
- build_movie (document, action, dynamic_cast<const LinkMovie*> (link));
+ build_movie (document, action, static_cast<const LinkMovie*> (link));
break;
case actionRendition:
action->type = POPPLER_ACTION_RENDITION;
- build_rendition (action, dynamic_cast<const LinkRendition*> (link));
+ build_rendition (action, static_cast<const LinkRendition*> (link));
break;
case actionOCGState:
action->type = POPPLER_ACTION_OCG_STATE;
- build_ocg_state (document, action, dynamic_cast<const LinkOCGState*> (link));
+ build_ocg_state (document, action, static_cast<const LinkOCGState*> (link));
break;
case actionJavaScript:
action->type = POPPLER_ACTION_JAVASCRIPT;
- build_javascript (action, dynamic_cast<const LinkJavaScript*> (link));
+ build_javascript (action, static_cast<const LinkJavaScript*> (link));
break;
case actionUnknown:
default:

View File

@ -1,108 +0,0 @@
$OpenBSD: patch-poppler_Link_cc,v 1.1 2020/03/30 18:26:06 kili Exp $
Upstream commit 81a86064c14a7fc25047b6040d65464e732cf501 (Adam
Reichold):
Fix vague linkage of Link* class vtables
Due to falling back to the implicitly inline destructors, some of
the Link* classes had all their overridden methods defined inline
with made the linkage of their vtables vague.
This change moves their destructors into a defined translation unit
thereby anchoring their vtables in the libpoppler DSO which fixes
issues using dynamic_cast when builing Poppler using Clang.
Index: poppler/Link.cc
--- poppler/Link.cc.orig
+++ poppler/Link.cc
@@ -444,6 +444,8 @@ LinkGoTo::LinkGoTo(const Object *destObj) {
}
}
+LinkGoTo::~LinkGoTo() = default;
+
//------------------------------------------------------------------------
// LinkGoToR
//------------------------------------------------------------------------
@@ -474,6 +476,8 @@ LinkGoToR::LinkGoToR(Object *fileSpecObj, Object *dest
}
}
+LinkGoToR::~LinkGoToR() = default;
+
//------------------------------------------------------------------------
// LinkLaunch
//------------------------------------------------------------------------
@@ -552,6 +556,8 @@ LinkURI::LinkURI(const Object *uriObj, const GooString
}
}
+LinkURI::~LinkURI() = default;
+
//------------------------------------------------------------------------
// LinkNamed
//------------------------------------------------------------------------
@@ -564,6 +570,8 @@ LinkNamed::LinkNamed(const Object *nameObj) {
}
}
+LinkNamed::~LinkNamed() = default;
+
//------------------------------------------------------------------------
// LinkMovie
//------------------------------------------------------------------------
@@ -607,6 +615,8 @@ LinkMovie::LinkMovie(const Object *obj) {
}
}
+LinkMovie::~LinkMovie() = default;
+
//------------------------------------------------------------------------
// LinkSound
//------------------------------------------------------------------------
@@ -645,6 +655,8 @@ LinkSound::LinkSound(const Object *soundObj) {
}
}
+LinkSound::~LinkSound() = default;
+
//------------------------------------------------------------------------
// LinkRendition
//------------------------------------------------------------------------
@@ -738,6 +750,8 @@ LinkJavaScript::LinkJavaScript(Object *jsObj) {
}
}
+LinkJavaScript::~LinkJavaScript() = default;
+
Object LinkJavaScript::createObject(XRef *xref, const GooString &js)
{
Dict *linkDict = new Dict(xref);
@@ -793,6 +807,8 @@ LinkOCGState::LinkOCGState(const Object *obj)
preserveRB = obj->dictLookup("PreserveRB").getBoolWithDefaultValue(true);
}
+LinkOCGState::~LinkOCGState() = default;
+
//------------------------------------------------------------------------
// LinkHide
//------------------------------------------------------------------------
@@ -814,6 +830,8 @@ LinkHide::LinkHide(const Object *hideObj) {
}
}
+LinkHide::~LinkHide() = default;
+
//------------------------------------------------------------------------
// LinkUnknown
//------------------------------------------------------------------------
@@ -821,6 +839,8 @@ LinkHide::LinkHide(const Object *hideObj) {
LinkUnknown::LinkUnknown(const char *actionA) {
action = std::string(actionA ? actionA : "");
}
+
+LinkUnknown::~LinkUnknown() = default;
//------------------------------------------------------------------------
// Links

View File

@ -1,108 +0,0 @@
$OpenBSD: patch-poppler_Link_h,v 1.1 2020/03/30 18:26:06 kili Exp $
Upstream commit 81a86064c14a7fc25047b6040d65464e732cf501 (Adam
Reichold):
Fix vague linkage of Link* class vtables
Due to falling back to the implicitly inline destructors, some of
the Link* classes had all their overridden methods defined inline
with made the linkage of their vtables vague.
This change moves their destructors into a defined translation unit
thereby anchoring their vtables in the libpoppler DSO which fixes
issues using dynamic_cast when builing Poppler using Clang.
Index: poppler/Link.h
--- poppler/Link.h.orig
+++ poppler/Link.h
@@ -164,6 +164,8 @@ class LinkGoTo: public LinkAction { (public)
// Build a LinkGoTo from a destination (dictionary, name, or string).
LinkGoTo(const Object *destObj);
+ ~LinkGoTo() override;
+
// Was the LinkGoTo created successfully?
bool isOk() const override { return dest || namedDest; }
@@ -191,6 +193,8 @@ class LinkGoToR: public LinkAction { (public)
// (dictionary, name, or string).
LinkGoToR(Object *fileSpecObj, Object *destObj);
+ ~LinkGoToR() override;
+
// Was the LinkGoToR created successfully?
bool isOk() const override { return fileName && (dest || namedDest); }
@@ -243,6 +247,8 @@ class LinkURI: public LinkAction { (public)
// Build a LinkURI given the URI (string) and base URI.
LinkURI(const Object *uriObj, const GooString *baseURI);
+ ~LinkURI() override;
+
// Was the LinkURI created successfully?
bool isOk() const override { return hasURIFlag; }
@@ -266,6 +272,8 @@ class LinkNamed: public LinkAction { (public)
// Build a LinkNamed given the action name.
LinkNamed(const Object *nameObj);
+ ~LinkNamed() override;
+
bool isOk() const override { return hasNameFlag; }
LinkActionKind getKind() const override { return actionNamed; }
@@ -294,6 +302,8 @@ class LinkMovie: public LinkAction { (public)
LinkMovie(const Object *obj);
+ ~LinkMovie() override;
+
bool isOk() const override { return hasAnnotRef() || hasAnnotTitleFlag; }
LinkActionKind getKind() const override { return actionMovie; }
@@ -374,6 +384,8 @@ class LinkSound: public LinkAction { (public)
LinkSound(const Object *soundObj);
+ ~LinkSound() override;
+
bool isOk() const override { return sound != nullptr; }
LinkActionKind getKind() const override { return actionSound; }
@@ -403,6 +415,8 @@ class LinkJavaScript: public LinkAction { (public)
// Build a LinkJavaScript given the action name.
LinkJavaScript(Object *jsObj);
+ ~LinkJavaScript() override;
+
bool isOk() const override { return isValid; }
LinkActionKind getKind() const override { return actionJavaScript; }
@@ -423,7 +437,7 @@ class LinkOCGState: public LinkAction {
public:
LinkOCGState(const Object *obj);
- ~LinkOCGState() override = default;
+ ~LinkOCGState() override;
bool isOk() const override { return isValid; }
@@ -454,6 +468,8 @@ class LinkHide: public LinkAction {
public:
LinkHide(const Object *hideObj);
+ ~LinkHide() override;
+
bool isOk() const override { return hasTargetNameFlag; }
LinkActionKind getKind() const override { return actionHide; }
@@ -488,6 +504,8 @@ class LinkUnknown: public LinkAction { (public)
// Build a LinkUnknown with the specified action type.
LinkUnknown(const char *actionA);
+
+ ~LinkUnknown() override;
// Was the LinkUnknown create successfully?
// Yes: nothing can go wrong when creating LinkUnknown objects

View File

@ -1,20 +0,0 @@
$OpenBSD: patch-utils_HtmlOutputDev_cc,v 1.1 2020/03/30 18:26:06 kili Exp $
Upstream commit 68b6dd2ecd868c1a757cb8b9273e2e26687e5229 (Adam
Reichold):
Replace dynamic_cast by static_cast where we already perform the
type checks explicitly before downcasting.
Index: utils/HtmlOutputDev.cc
--- utils/HtmlOutputDev.cc.orig
+++ utils/HtmlOutputDev.cc
@@ -1838,7 +1838,7 @@ int HtmlOutputDev::getOutlinePageNum(OutlineItem *item
if (!action || action->getKind() != actionGoTo)
return pagenum;
- link = dynamic_cast<const LinkGoTo*>(action);
+ link = static_cast<const LinkGoTo*>(action);
if (!link || !link->isOk())
return pagenum;