diff options
author | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2008-07-24 01:02:46 +0000 |
---|---|---|
committer | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2008-07-24 01:02:46 +0000 |
commit | 005dd1eb9e7844f4bf631111847c26c9a4b56df3 (patch) | |
tree | 6a5030f2c3c51c88b05f886e7034a3734fb77046 /cups/ppd.c | |
parent | 5d6412a9f1d6faef517cc8038f9d3784afef9945 (diff) | |
download | cups-005dd1eb9e7844f4bf631111847c26c9a4b56df3.tar.gz |
Merge changes from CUPS 1.4svn-r7791.
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@886 a1ca3aef-8c08-0410-bb20-df032aa958be
Diffstat (limited to 'cups/ppd.c')
-rw-r--r-- | cups/ppd.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/cups/ppd.c b/cups/ppd.c index 436dd05f2..75db5c5ac 100644 --- a/cups/ppd.c +++ b/cups/ppd.c @@ -59,6 +59,7 @@ * Include necessary headers. */ +#include "ppd-private.h" #include "globals.h" #include "debug.h" #include <stdlib.h> @@ -292,6 +293,26 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */ cupsArrayDelete(ppd->coptions); /* + * Free constraints... + */ + + if (ppd->cups_uiconstraints) + { + _ppd_cups_uiconsts_t *consts; /* Current constraints */ + + + for (consts = (_ppd_cups_uiconsts_t *)cupsArrayFirst(ppd->cups_uiconstraints); + consts; + consts = (_ppd_cups_uiconsts_t *)cupsArrayNext(ppd->cups_uiconstraints)) + { + free(consts->constraints); + free(consts); + } + + cupsArrayDelete(ppd->cups_uiconstraints); + } + + /* * Free the whole record... */ @@ -1042,6 +1063,9 @@ ppdOpen2(cups_file_t *fp) /* I - File to read from */ sizeof(choice->text)); choice->code = _cupsStrAlloc(string); + + if (custom_option->section == PPD_ORDER_JCL) + ppd_decode(choice->code); } /* |