X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=inline;f=pdf%2Fxpdf%2Fpdfimages.cc;h=5e35bfb48fad33678e6877525b1d891b53f70388;hb=bfd0b848c8c81ab10698f74b77f9f0904c3161e1;hp=898ad00ed5f5ea951f51e17e0dea99b495543c8a;hpb=2a393c134fe3fe8eb85bf818cb7ad6ae4396322a;p=evince.git diff --git a/pdf/xpdf/pdfimages.cc b/pdf/xpdf/pdfimages.cc index 898ad00e..5e35bfb4 100644 --- a/pdf/xpdf/pdfimages.cc +++ b/pdf/xpdf/pdfimages.cc @@ -72,6 +72,9 @@ int main(int argc, char *argv[]) { GString *ownerPW, *userPW; ImageOutputDev *imgOut; GBool ok; + int exitCode; + + exitCode = 99; // parse args ok = parseArgs(argDesc, &argc, argv); @@ -81,7 +84,7 @@ int main(int argc, char *argv[]) { if (!printVersion) { printUsage("pdfimages", " ", argDesc); } - exit(1); + goto err0; } fileName = new GString(argv[1]); imgRoot = argv[2]; @@ -111,13 +114,15 @@ int main(int argc, char *argv[]) { delete ownerPW; } if (!doc->isOk()) { - goto err; + exitCode = 1; + goto err1; } // check for copy permission if (!doc->okToCopy()) { error(-1, "Copying of images from this document is not allowed."); - goto err; + exitCode = 3; + goto err1; } // get page range @@ -128,18 +133,22 @@ int main(int argc, char *argv[]) { // write image files imgOut = new ImageOutputDev(imgRoot, dumpJPEG); - if (imgOut->isOk()) + if (imgOut->isOk()) { doc->displayPages(imgOut, firstPage, lastPage, 72, 0, gFalse); + } delete imgOut; + exitCode = 0; + // clean up - err: + err1: delete doc; delete globalParams; + err0: // check for memory leaks Object::memCheck(stderr); gMemReport(stderr); - return 0; + return exitCode; }