]> git.ipfire.org Git - thirdparty/cups.git/commitdiff
Fix memory leak in cups-oauth.
authorMichael R Sweet <msweet@msweet.org>
Thu, 13 Nov 2025 17:58:41 +0000 (12:58 -0500)
committerMichael R Sweet <msweet@msweet.org>
Fri, 14 Nov 2025 22:12:44 +0000 (17:12 -0500)
tools/cups-oauth.c

index 9a0b968181865153a40c8aa29f6bc94ba8972157..ee6b1f03b25a793c016c9816d1494015bbd3c236 100644 (file)
@@ -464,6 +464,7 @@ static int                          // O - Exit status
 do_get_metadata(const char *oauth_uri, // I - Authorization Server URI
                 const char *name)      // I - Field name
 {
+  int          ret = 0;                // Exit status
   cups_json_t  *metadata;              // Metadata
   char         *json;                  // JSON string
 
@@ -513,12 +514,10 @@ do_get_metadata(const char *oauth_uri,    // I - Authorization Server URI
             }
             break;
       }
-
-      return (0);
     }
     else
     {
-      return (1);
+      ret = 1;
     }
   }
   else if ((json = cupsJSONExportString(metadata)) != NULL)
@@ -527,7 +526,9 @@ do_get_metadata(const char *oauth_uri,      // I - Authorization Server URI
     free(json);
   }
 
-  return (0);
+  cupsJSONDelete(metadata);
+
+  return (ret);
 }