From d0f9d82a8652cedc913671a2caf8d7a367beadb1 Mon Sep 17 00:00:00 2001 From: kramm Date: Fri, 8 Feb 2008 10:42:08 +0000 Subject: [PATCH] moved the 'PDF disallows copying' to a lower level --- lib/pdf/pdf.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/pdf/pdf.cc b/lib/pdf/pdf.cc index 7d13c7b..9390e4a 100644 --- a/lib/pdf/pdf.cc +++ b/lib/pdf/pdf.cc @@ -34,6 +34,7 @@ typedef struct _pdf_page_info typedef struct _pdf_doc_internal { int protect; + int nocopy; PDFDoc*doc; Object docinfo; InfoOutputDev*info; @@ -187,6 +188,10 @@ gfxpage_t* pdf_doc_getpage(gfxdocument_t*doc, int page) if(page < 1 || page > doc->num_pages) return 0; + if(di->nocopy) { + msg(" PDF disallows copying."); + return 0; + } gfxpage_t* pdf_page = (gfxpage_t*)malloc(sizeof(gfxpage_t)); pdf_page_internal_t*pi= (pdf_page_internal_t*)malloc(sizeof(pdf_page_internal_t)); @@ -387,8 +392,7 @@ static gfxdocument_t*pdf_open(gfxsource_t*src, const char*filename) i->protect = 0; if (i->doc->isEncrypted()) { if(!i->doc->okToCopy()) { - printf("PDF disallows copying.\n"); - return 0; + i->nocopy = 1; } if(!i->doc->okToChange() || !i->doc->okToAddNotes()) i->protect = 1; -- 1.7.10.4