Blob Blame History Raw
diff -rupN poppler-0.62.0/utils/pdfdetach.cc poppler-0.62.0-new/utils/pdfdetach.cc
--- poppler-0.62.0/utils/pdfdetach.cc	2017-12-03 20:25:06.000000000 +0100
+++ poppler-0.62.0-new/utils/pdfdetach.cc	2019-02-20 19:33:40.012775237 +0100
@@ -249,7 +249,12 @@ int main(int argc, char *argv[]) {
       }
       *p = '\0';
 
-      if (!fileSpec->getEmbeddedFile()->save(path)) {
+      auto *embFile = fileSpec->getEmbeddedFile();
+      if (!embFile || !embFile->isOk()) {
+	exitCode = 3;
+	goto err2;
+      }
+      if (!embFile->save(path)) {
 	error(errIO, -1, "Error saving embedded file as '{0:s}'", p);
 	exitCode = 2;
 	goto err2;
@@ -294,7 +299,12 @@ int main(int argc, char *argv[]) {
       p = path;
     }
 
-    if (!fileSpec->getEmbeddedFile()->save(p)) {
+    auto *embFile = fileSpec->getEmbeddedFile();
+    if (!embFile || !embFile->isOk()) {
+      exitCode = 3;
+      goto err2;
+    }
+    if (!embFile->save(p)) {
       error(errIO, -1, "Error saving embedded file as '{0:s}'", p);
       exitCode = 2;
       goto err2;