From 9a675c2ff1b3a8eae9b7f25f3f96441016c5b70f Mon Sep 17 00:00:00 2001 From: kramm Date: Wed, 12 Mar 2008 19:10:59 +0000 Subject: [PATCH] allow to overload old global parameters --- lib/pdf/pdf.cc | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/pdf/pdf.cc b/lib/pdf/pdf.cc index 9390e4a..965919a 100644 --- a/lib/pdf/pdf.cc +++ b/lib/pdf/pdf.cc @@ -288,10 +288,21 @@ char* pdf_doc_getinfo(gfxdocument_t*doc, const char*name) static void storeDeviceParameter(const char*name, const char*value) { + parameter_t*o = device_config; + while(o) { + if(!strcmp(name, o->name)) { + /* overwrite old value */ + free(o->value); + o->value = strdup(value); + return; + } + o = o->next; + } parameter_t*p = new parameter_t(); p->name = strdup(name); p->value = strdup(value); p->next = 0; + if(device_config_next) { device_config_next->next = p; device_config_next = p; @@ -426,7 +437,6 @@ static gfxdocument_t*pdf_open(gfxsource_t*src, const char*filename) GFXOutputDev*outputDev = new GFXOutputDev(i->info, i->doc); i->outputDev = (CommonOutputDev*)outputDev; } - /* pass global parameters to PDF driver*/ parameter_t*p = device_config; while(p) { -- 1.7.10.4