You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.7 KiB
54 lines
1.7 KiB
2 years ago
|
From d9924186325c89aefa56e36258f56f246dd2c4ad Mon Sep 17 00:00:00 2001
|
||
|
From: Richard Lescak <rlescak@redhat.com>
|
||
|
Date: Tue, 11 Jan 2022 10:53:34 +0100
|
||
|
Subject: [PATCH] cups/http.c,encode.c: Fix memory leaks
|
||
|
|
||
|
---
|
||
|
CHANGES.md | 3 ++-
|
||
|
cups/encode.c | 1 +
|
||
|
cups/http.c | 1 +
|
||
|
3 files changed, 4 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/cups/encode.c b/cups/encode.c
|
||
|
index 5bcbf6fe5..15b1c6b40 100644
|
||
|
--- a/cups/encode.c
|
||
|
+++ b/cups/encode.c
|
||
|
@@ -655,6 +655,7 @@ _cupsEncodeOption(
|
||
|
ippSetCollection(ipp, &attr, i, collection);
|
||
|
cupsEncodeOptions2(collection, num_cols, cols, IPP_TAG_JOB);
|
||
|
cupsFreeOptions(num_cols, cols);
|
||
|
+ ippDelete(collection);
|
||
|
break;
|
||
|
|
||
|
default :
|
||
|
diff --git a/cups/http.c b/cups/http.c
|
||
|
index bd41e6f8e..4b6a24bd3 100644
|
||
|
--- a/cups/http.c
|
||
|
+++ b/cups/http.c
|
||
|
@@ -4624,6 +4624,7 @@ http_tls_upgrade(http_t *http) /* I - HTTP connection */
|
||
|
* Restore the HTTP request data...
|
||
|
*/
|
||
|
|
||
|
+ httpClearFields(http);
|
||
|
memcpy(http->_fields, myhttp._fields, sizeof(http->_fields));
|
||
|
memcpy(http->fields, myhttp.fields, sizeof(http->fields));
|
||
|
|
||
|
diff --git a/cups/ppd.c b/cups/ppd.c
|
||
|
index 525df3592..54368ac4c 100644
|
||
|
--- a/cups/ppd.c
|
||
|
+++ b/cups/ppd.c
|
||
|
@@ -3430,12 +3430,12 @@ ppd_update_filters(ppd_file_t *ppd, /* I - PPD file */
|
||
|
srctype[256],
|
||
|
dstsuper[16], /* Destination MIME media type */
|
||
|
dsttype[256],
|
||
|
- program[1024], /* Command to run */
|
||
|
*ptr, /* Pointer into command to run */
|
||
|
buffer[1024], /* Re-written cupsFilter value */
|
||
|
**filter; /* Current filter */
|
||
|
int cost; /* Cost of filter */
|
||
|
|
||
|
+ char program[1024] = { 0 }; /* Command to run */
|
||
|
|
||
|
DEBUG_printf(("4ppd_update_filters(ppd=%p, cg=%p)", ppd, pg));
|
||
|
|