summaryrefslogtreecommitdiff
path: root/utils/pdfseparate.cc
diff options
context:
space:
mode:
authorThomas Freitag <Thomas.Freitag@alfa.de>2015-02-24 23:34:57 +0100
committerAlbert Astals Cid <aacid@kde.org>2015-02-25 15:02:54 +0100
commit57b6b78a0831fb31c06fd1bc6e9803de524f9d2d (patch)
tree57c67a4abba972971022d3fa5d2867543578364c /utils/pdfseparate.cc
parent8a30d219df71ead323649ff0dfd4a724b5e7bd18 (diff)
pdfseparate: use always an unique instance for PDFDoc for savePageAs
Diffstat (limited to 'utils/pdfseparate.cc')
-rw-r--r--utils/pdfseparate.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/utils/pdfseparate.cc b/utils/pdfseparate.cc
index bc98c7d1..9fa70525 100644
--- a/utils/pdfseparate.cc
+++ b/utils/pdfseparate.cc
@@ -4,7 +4,7 @@
//
// This file is licensed under the GPLv2 or later
//
-// Copyright (C) 2011, 2012 Thomas Freitag <Thomas.Freitag@alfa.de>
+// Copyright (C) 2011, 2012, 2015 Thomas Freitag <Thomas.Freitag@alfa.de>
// Copyright (C) 2012-2014 Albert Astals Cid <aacid@kde.org>
// Copyright (C) 2013 Pino Toscano <pino@kde.org>
// Copyright (C) 2013 Daniel Kahn Gillmor <dkg@fifthhorseman.net>
@@ -124,12 +124,15 @@ bool extractPages (const char *srcFileName, const char *destFileName) {
for (int pageNo = firstPage; pageNo <= lastPage; pageNo++) {
snprintf (pathName, sizeof (pathName) - 1, destFileName, pageNo);
GooString *gpageName = new GooString (pathName);
- int errCode = doc->savePageAs(gpageName, pageNo);
+ PDFDoc *pagedoc = new PDFDoc (new GooString (srcFileName), NULL, NULL, NULL);
+ int errCode = pagedoc->savePageAs(gpageName, pageNo);
if ( errCode != errNone) {
delete gpageName;
delete doc;
+ delete pagedoc;
return false;
}
+ delete pagedoc;
delete gpageName;
}
delete doc;