summaryrefslogtreecommitdiff
path: root/filter
diff options
context:
space:
mode:
authormsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2014-03-27 17:06:12 +0000
committermsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2014-03-27 17:06:12 +0000
commitcfeac714b41e4098b7c7cadccc7959a862b3c6c6 (patch)
treeba12e729e4062021a0e3ed5ca4ba60e96e067b4a /filter
parent1e9586e168322435489eec85a76403c8d4131ce9 (diff)
downloadcups-cfeac714b41e4098b7c7cadccc7959a862b3c6c6.tar.gz
Fix a memory leak in the label printer driver (STR #4393)
Make sure we free CompBuffer and LastBuffer as needed in EndPage. git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@11755 a1ca3aef-8c08-0410-bb20-df032aa958be
Diffstat (limited to 'filter')
-rw-r--r--filter/rastertolabel.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/filter/rastertolabel.c b/filter/rastertolabel.c
index 162307d65..6868a73e4 100644
--- a/filter/rastertolabel.c
+++ b/filter/rastertolabel.c
@@ -629,13 +629,6 @@ EndPage(ppd_file_t *ppd, /* I - PPD file */
puts("^IDR:CUPS.GRF^FS");
puts("^XZ");
-
- /*
- * Free compression buffers...
- */
-
- free(CompBuffer);
- free(LastBuffer);
break;
case ZEBRA_CPCL :
@@ -704,6 +697,18 @@ EndPage(ppd_file_t *ppd, /* I - PPD file */
*/
free(Buffer);
+
+ if (CompBuffer)
+ {
+ free(CompBuffer);
+ CompBuffer = NULL;
+ }
+
+ if (LastBuffer)
+ {
+ free(LastBuffer);
+ LastBuffer = NULL;
+ }
}