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