summaryrefslogtreecommitdiff
path: root/libsoup/soup-message-headers.c
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2012-08-24 13:20:15 +0200
committerAlexander Larsson <alexl@redhat.com>2012-08-24 13:26:37 +0200
commit2e70097a13289f6e665e7bbe327d12d5b0d3cddb (patch)
tree3a7372e21d7b11603ee7a60fae2f1f6ac25cb0ef /libsoup/soup-message-headers.c
parenta62003b40bd4a7069dd30f84895068ff66f9144a (diff)
downloadlibsoup-2e70097a13289f6e665e7bbe327d12d5b0d3cddb.tar.gz
Avoid double free of hash key
When soup_message_headers_get_content_disposition re-inserts the new filename we need to g_strdup the key or otherwise it will be freed by the hashtable key destroy func. https://bugzilla.gnome.org/show_bug.cgi?id=682569
Diffstat (limited to 'libsoup/soup-message-headers.c')
-rw-r--r--libsoup/soup-message-headers.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libsoup/soup-message-headers.c b/libsoup/soup-message-headers.c
index b9bab238..1dd53dda 100644
--- a/libsoup/soup-message-headers.c
+++ b/libsoup/soup-message-headers.c
@@ -1303,7 +1303,7 @@ soup_message_headers_get_content_disposition (SoupMessageHeaders *hdrs,
char *filename = strrchr (orig_value, '/');
if (filename)
- g_hash_table_insert (*params, orig_key, filename + 1);
+ g_hash_table_insert (*params, g_strdup (orig_key), filename + 1);
}
return TRUE;
}