From c43be849f83f9a3804d50ebb7d7f949f28c1c22a Mon Sep 17 00:00:00 2001 From: Zdenek Dohnal Date: Mon, 12 Oct 2020 13:01:05 +0200 Subject: [PATCH] cups-browsed.c: uuid was used after its pointer was freed by ippDelete() --- utils/cups-browsed.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/cups-browsed.c b/utils/cups-browsed.c index 8c2040b68..b0e7a8038 100644 --- a/utils/cups-browsed.c +++ b/utils/cups-browsed.c @@ -3614,7 +3614,7 @@ new_local_printer (const char *device_uri, { local_printer_t *printer = g_malloc (sizeof (local_printer_t)); printer->device_uri = strdup (device_uri); - printer->uuid = (uuid ? strdup (uuid) : NULL); + printer->uuid = uuid; printer->cups_browsed_controlled = cups_browsed_controlled; return printer; } @@ -3796,7 +3796,7 @@ get_printer_uuid(http_t *http_printer, if (attr) - uuid = ippGetString(attr, 0, NULL) + 9; + uuid = strdup(ippGetString(attr, 0, NULL) + 9); else { debug_printf ("Printer with URI %s: Cannot read \"printer-uuid\" IPP attribute!\n", raw_uri); -- 2.47.2