diff -up cups-filters-1.0.35/filter/pdf.cxx.poppler023 cups-filters-1.0.35/filter/pdf.cxx --- cups-filters-1.0.35/filter/pdf.cxx.poppler023 2015-06-16 15:47:21.870132195 +0100 +++ cups-filters-1.0.35/filter/pdf.cxx 2015-06-16 15:47:59.623128579 +0100 @@ -17,6 +17,10 @@ #include "pdf.h" #include +#include +#ifdef HAVE_CPP_POPPLER_VERSION_H +#include "cpp/poppler-version.h" +#endif extern "C" pdf_t * pdf_load_template(const char *filename) @@ -343,7 +347,11 @@ public: { } +#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 23 + Goffset getPos() +#else int getPos() +#endif { return this->pos; } diff -up cups-filters-1.0.35/filter/pdftoijs.cxx.poppler023 cups-filters-1.0.35/filter/pdftoijs.cxx --- cups-filters-1.0.35/filter/pdftoijs.cxx.poppler023 2015-06-16 15:47:21.871132195 +0100 +++ cups-filters-1.0.35/filter/pdftoijs.cxx 2015-06-16 15:47:59.623128579 +0100 @@ -70,8 +70,13 @@ namespace { } #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19 +#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 23 +void CDECL myErrorFun(void *data, ErrorCategory category, + Goffset pos, char *msg) +#else void CDECL myErrorFun(void *data, ErrorCategory category, int pos, char *msg) +#endif { if (pos >= 0) { fprintf(stderr, "ERROR (%d): ", pos); @@ -297,19 +302,15 @@ int main(int argc, char *argv[]) { if (argc == 6) { /* stdin */ int fd; - Object obj; - BaseStream *str; - FILE *fp; + char name[BUFSIZ]; char buf[BUFSIZ]; int n; - fd = cupsTempFd(buf,sizeof(buf)); + fd = cupsTempFd(name,sizeof(name)); if (fd < 0) { pdfError(-1,"Can't create temporary file"); exit(1); } - /* remove name */ - unlink(buf); /* copy stdin to the tmp file */ while ((n = read(0,buf,BUFSIZ)) > 0) { @@ -319,23 +320,10 @@ int main(int argc, char *argv[]) { exit(1); } } - if (lseek(fd,0,SEEK_SET) < 0) { - pdfError(-1,"Can't rewind temporary file"); - close(fd); - exit(1); - } - - if ((fp = fdopen(fd,"rb")) == 0) { - pdfError(-1,"Can't fdopen temporary file"); - close(fd); - exit(1); - } - - obj.initNull(); -// parsePDFTOPDFComment(fp); // TODO? - rewind(fp); - str = new FileStream(fp,0,gFalse,0,&obj); - doc = new PDFDoc(str); + close(fd); + doc = new PDFDoc(new GooString(name)); + /* remove name */ + unlink(name); } else { GooString *fileName = new GooString(argv[6]); /* argc == 7 filenmae is specified */ diff -up cups-filters-1.0.35/filter/pdftoopvp/pdftoopvp.cxx.poppler023 cups-filters-1.0.35/filter/pdftoopvp/pdftoopvp.cxx --- cups-filters-1.0.35/filter/pdftoopvp/pdftoopvp.cxx.poppler023 2015-06-16 15:47:21.871132195 +0100 +++ cups-filters-1.0.35/filter/pdftoopvp/pdftoopvp.cxx 2015-06-16 15:47:59.624128579 +0100 @@ -112,8 +112,13 @@ static int outOnePage(PDFDoc *doc, OPVPO #define MAX_OPVP_OPTIONS 20 #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19 +#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 23 +void CDECL myErrorFun(void *data, ErrorCategory category, + Goffset pos, char *msg) +#else void CDECL myErrorFun(void *data, ErrorCategory category, int pos, char *msg) +#endif { if (pos >= 0) { fprintf(stderr, "ERROR (%d): ", pos); @@ -619,9 +624,6 @@ exit(0); char *s; GooString name; int fd; - Object obj; - BaseStream *str; - FILE *fp; char buf[4096]; int n; @@ -633,8 +635,6 @@ exit(0); } name.append("/XXXXXX"); fd = mkstemp(name.getCString()); - /* remove name */ - unlink(name.getCString()); if (fd < 0) { opvpError(-1,"Can't create temporary file"); exitCode = 2; @@ -675,23 +675,10 @@ exit(0); goto err0; } } - if (lseek(fd,0,SEEK_SET) < 0) { - opvpError(-1,"Can't rewind temporary file"); - close(fd); - exitCode = 2; - goto err0; - } - - if ((fp = fdopen(fd,"rb")) == 0) { - opvpError(-1,"Can't fdopen temporary file"); - close(fd); - exitCode = 2; - goto err0; - } - - obj.initNull(); - str = new FileStream(fp,0,gFalse,0,&obj); - doc = new PDFDoc(str); + close(fd); + doc = new PDFDoc(&name); + /* remove name */ + unlink(name.getCString()); } else { /* no jcl check */ doc = new PDFDoc(fileName.copy()); diff -up cups-filters-1.0.35/filter/pdftoraster.cxx.poppler023 cups-filters-1.0.35/filter/pdftoraster.cxx --- cups-filters-1.0.35/filter/pdftoraster.cxx.poppler023 2015-06-16 15:47:21.871132195 +0100 +++ cups-filters-1.0.35/filter/pdftoraster.cxx 2015-06-16 15:47:59.624128579 +0100 @@ -185,8 +185,13 @@ namespace { } #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19 +#if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 23 +void CDECL myErrorFun(void *data, ErrorCategory category, + Goffset pos, char *msg) +#else void CDECL myErrorFun(void *data, ErrorCategory category, int pos, char *msg) +#endif { if (pos >= 0) { fprintf(stderr, "ERROR (%d): ", pos); @@ -1762,19 +1767,15 @@ int main(int argc, char *argv[]) { if (argc == 6) { /* stdin */ int fd; - Object obj; - BaseStream *str; - FILE *fp; + char name[BUFSIZ]; char buf[BUFSIZ]; int n; - fd = cupsTempFd(buf,sizeof(buf)); + fd = cupsTempFd(name,sizeof(name)); if (fd < 0) { pdfError(-1,const_cast("Can't create temporary file")); exit(1); } - /* remove name */ - unlink(buf); /* copy stdin to the tmp file */ while ((n = read(0,buf,BUFSIZ)) > 0) { @@ -1784,23 +1785,10 @@ int main(int argc, char *argv[]) { exit(1); } } - if (lseek(fd,0,SEEK_SET) < 0) { - pdfError(-1,const_cast("Can't rewind temporary file")); - close(fd); - exit(1); - } - - if ((fp = fdopen(fd,"rb")) == 0) { - pdfError(-1,const_cast("Can't fdopen temporary file")); - close(fd); - exit(1); - } - - obj.initNull(); - parsePDFTOPDFComment(fp); - rewind(fp); - str = new FileStream(fp,0,gFalse,0,&obj); - doc = new PDFDoc(str); + close(fd); + doc = new PDFDoc(new GooString(name)); + /* remove name */ + unlink(name); } else { GooString *fileName = new GooString(argv[6]); /* argc == 7 filenmae is specified */ diff -up cups-filters-1.0.35/NEWS.poppler023 cups-filters-1.0.35/NEWS