diff options
author | Sebastian Rasmussen <sebras@hotmail.com> | 2009-07-04 16:47:08 +0200 |
---|---|---|
committer | Sebastian Rasmussen <sebras@hotmail.com> | 2009-07-04 16:47:08 +0200 |
commit | 5c8278009303064c2ba0c2e436448ee8670b53c7 (patch) | |
tree | 081388ad1f2be50be5847cc82d9cd4281001fc03 | |
parent | 0f1dc367074f37abc1f1d66cfe7b6173eff67033 (diff) | |
download | mupdf-5c8278009303064c2ba0c2e436448ee8670b53c7.tar.xz |
Remove creation of fake objects from pdfinfo.
-rw-r--r-- | apps/pdfinfo.c | 55 |
1 files changed, 14 insertions, 41 deletions
diff --git a/apps/pdfinfo.c b/apps/pdfinfo.c index 66282fca..614af82c 100644 --- a/apps/pdfinfo.c +++ b/apps/pdfinfo.c @@ -284,7 +284,6 @@ gatherdimensions(int page, fz_obj *pageref, fz_obj *pageobj) fz_error gatherfonts(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) { - fz_error error; int i; for (i = 0; i < fz_dictlen(dict); i++) @@ -313,9 +312,7 @@ gatherfonts(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) else { name = fz_dictgets(fontdict, "Name"); - if (!name) - error = fz_newnull(&name); - if (!fz_isnull(name) && !fz_isname(name)) + if (name && !fz_isname(name)) return fz_throw("not a font dict name (%d %d R)", fz_tonum(ref), fz_togen(ref)); } @@ -350,7 +347,6 @@ gatherfonts(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) fz_error gatherimages(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) { - fz_error error; int i; for (i = 0; i < fz_dictlen(dict); i++) @@ -360,10 +356,10 @@ gatherimages(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) fz_obj *type; fz_obj *width; fz_obj *height; - fz_obj *bpc; - fz_obj *filter; + fz_obj *bpc = nil; + fz_obj *filter = nil; fz_obj *mask; - fz_obj *cs; + fz_obj *cs = nil; fz_obj *altcs; int k; @@ -378,13 +374,7 @@ gatherimages(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) continue; filter = fz_dictgets(imagedict, "Filter"); - if (!filter) - { - error = fz_newname(&filter, "Raw"); - if (error) - return fz_rethrow(error, "cannot create fake raw image filter (%d %d R)", fz_tonum(ref), fz_togen(ref)); - } - if (!fz_isname(filter) && !fz_isarray(filter)) + if (filter && !fz_isname(filter) && !fz_isarray(filter)) return fz_throw("not an image filter (%d %d R)", fz_tonum(ref), fz_togen(ref)); mask = fz_dictgets(imagedict, "ImageMask"); @@ -408,11 +398,8 @@ gatherimages(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) { if (cs) fz_warn("image mask (%d %d R) may not have colorspace", fz_tonum(ref), fz_togen(ref)); - error = fz_newname(&cs, "ImageMask"); - if (error) - return fz_rethrow(error, "cannot create fake image mask colorspace (%d %d R)", fz_tonum(ref), fz_togen(ref)); } - if (!fz_isname(cs)) + if (cs && !fz_isname(cs)) return fz_throw("not an image colorspace (%d %d R)", fz_tonum(ref), fz_togen(ref)); if (altcs && !fz_isname(altcs)) return fz_throw("not an image alternate colorspace (%d %d R)", fz_tonum(ref), fz_togen(ref)); @@ -430,12 +417,6 @@ gatherimages(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) return fz_throw("not an image bits per component (%d %d R)", fz_tonum(ref), fz_togen(ref)); if (fz_tobool(mask) && fz_isint(bpc) && fz_toint(bpc) != 1) return fz_throw("not an image mask bits per component (%d %d R)", fz_tonum(ref), fz_togen(ref)); - if (fz_tobool(mask) && !bpc) - { - error = fz_newint(&bpc, 1); - if (error) - return fz_rethrow(error, "cannot create fake image mask bits per components (%d %d R)", fz_tonum(ref), fz_togen(ref)); - } for (k = 0; k < images; k++) if (fz_tonum(image[k]->ref) == fz_tonum(ref) && @@ -642,7 +623,6 @@ gathershadings(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) fz_error gatherpatterns(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) { - fz_error error; int i; for (i = 0; i < fz_dictlen(dict); i++) @@ -650,8 +630,8 @@ gatherpatterns(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) fz_obj *ref; fz_obj *patterndict; fz_obj *type; - fz_obj *paint; - fz_obj *tiling; + fz_obj *paint = nil; + fz_obj *tiling = nil; int k; patterndict = ref = fz_dictgetval(dict, i); @@ -672,15 +652,6 @@ gatherpatterns(int page, fz_obj *pageref, fz_obj *pageobj, fz_obj *dict) if (!fz_isint(tiling) || fz_toint(tiling) < 1 || fz_toint(tiling) > 3) return fz_throw("not a pattern tiling type (%d %d R)", fz_tonum(ref), fz_togen(ref)); } - else - { - error = fz_newint(&paint, 0); - if (error) - return fz_throw("cannot create fake pattern paint type"); - error = fz_newint(&tiling, 0); - if (error) - return fz_throw("cannot create fake pattern tiling type"); - } for (k = 0; k < patterns; k++) if (fz_tonum(pattern[k]->ref) == fz_tonum(ref) && @@ -846,7 +817,7 @@ printinfo(char *filename, int show, int page) printf("Fonts (%d):\n", fonts); for (i = 0; i < fonts; i++) { - printf(PAGE_FMT "%s %s (%d %d R)\n", + printf(PAGE_FMT "%s '%s' (%d %d R)\n", font[i]->page, fz_tonum(font[i]->pageref), fz_togen(font[i]->pageref), fz_toname(font[i]->u.font.subtype), @@ -878,14 +849,16 @@ printinfo(char *filename, int show, int page) fz_toname(fz_arrayget(image[i]->u.image.filter, j)), j == fz_arraylen(image[i]->u.image.filter) - 1 ? "" : " "); } - else + else if (image[i]->u.image.filter) printf("%s", fz_toname(image[i]->u.image.filter)); + else + printf("Raw"); printf(" ] %dx%d %dbpc %s%s%s (%d %d R)\n", fz_toint(image[i]->u.image.width), fz_toint(image[i]->u.image.height), - fz_toint(image[i]->u.image.bpc), - fz_toname(image[i]->u.image.cs), + image[i]->u.image.bpc ? fz_toint(image[i]->u.image.bpc) : 1, + image[i]->u.image.cs ? fz_toname(image[i]->u.image.cs) : "ImageMask", image[i]->u.image.altcs ? " " : "", image[i]->u.image.altcs ? fz_toname(image[i]->u.image.altcs) : "", fz_tonum(image[i]->ref), fz_togen(image[i]->ref)); |