]> diplodocus.org Git - nmh/commitdiff
Fixed memory leak in mime_type(). get_file_info() always allocates
authorDavid Levine <levinedl@acm.org>
Thu, 25 Dec 2014 00:25:43 +0000 (18:25 -0600)
committerDavid Levine <levinedl@acm.org>
Thu, 25 Dec 2014 00:25:43 +0000 (18:25 -0600)
its return value.

sbr/mime_type.c

index 06a6156d418294c0754742c2bc199835d19a8cf0..23ccf0387fec78a7d11978522a00d80a21390efe 100644 (file)
@@ -37,14 +37,15 @@ mime_type(const char *file_name) {
             if ((mimeencoding = get_file_info(MIMEENCODINGPROC, file_name))) {
                 content_type = concat(mimetype, "; charset=", mimeencoding,
                                       NULL);
+                free (mimetype);
             } else {
-                content_type = strdup(mimetype);
+                content_type = mimetype;
             }
         } else {
-            content_type = strdup(mimetype);
+            content_type = mimetype;
         }
 #else  /* MIMEENCODINGPROC */
-        content_type = strdup(mimetype);
+        content_type = mimetype;
 #endif /* MIMEENCODINGPROC */
     }
 #endif /* MIMETYPEPROC */