Index: base/third_party/xdg_mime/free_pointer_later.patch |
diff --git a/base/third_party/xdg_mime/free_pointer_later.patch b/base/third_party/xdg_mime/free_pointer_later.patch |
new file mode 100644 |
index 0000000000000000000000000000000000000000..76687610d528554d072992386ceab33ae5548d7e |
--- /dev/null |
+++ b/base/third_party/xdg_mime/free_pointer_later.patch |
@@ -0,0 +1,22 @@ |
+diff --git a/base/third_party/xdg_mime/xdgmime.c b/base/third_party/xdg_mime/xdgmime.c |
+index c7b16bb..6dc58c2 100644 |
+--- a/base/third_party/xdg_mime/xdgmime.c |
++++ b/base/third_party/xdg_mime/xdgmime.c |
+@@ -558,13 +558,13 @@ xdg_mime_get_mime_type_for_file (const char *file_name, |
+ mime_type = _xdg_mime_magic_lookup_data (global_magic, data, bytes_read, NULL, |
+ mime_types, n); |
+ |
+- free (data); |
+ fclose (file); |
+ |
+- if (mime_type) |
+- return mime_type; |
++ if (!mime_type) |
++ mime_type = _xdg_binary_or_text_fallback(data, bytes_read); |
+ |
+- return _xdg_binary_or_text_fallback(data, bytes_read); |
++ free (data); |
++ return mime_type; |
+ } |
+ |
+ const char * |