summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan A. Suarez Romero <jasuarez@igalia.com>2010-02-15 20:22:38 +0100
committerJuan A. Suarez Romero <jasuarez@igalia.com>2010-02-15 20:22:38 +0100
commit7610d59cf810e590f4ad6d101dc8903ce4ee3e19 (patch)
treee442761bf0fb86b6509ae543acd52d2d11e032e4
parentd98f59419568c364962f887214954b2d44e715d4 (diff)
downloadgrilo-plugins-7610d59cf810e590f4ad6d101dc8903ce4ee3e19.tar.gz
Fix leaks
-rw-r--r--src/flickr/gflickr.c11
-rw-r--r--src/flickr/grl-flickr.c6
2 files changed, 12 insertions, 5 deletions
diff --git a/src/flickr/gflickr.c b/src/flickr/gflickr.c
index 76d8f0d..6e98661 100644
--- a/src/flickr/gflickr.c
+++ b/src/flickr/gflickr.c
@@ -184,14 +184,17 @@ add_node (xmlNodePtr node, GHashTable *photo)
"_",
(const gchar *) attr->name,
NULL),
- g_strdup ((gchar *) xmlGetProp (node, attr->name)));
+ (gchar *) xmlGetProp (node, attr->name));
}
}
static GHashTable *
get_photo (xmlNodePtr node)
{
- GHashTable *photo = g_hash_table_new (g_str_hash, g_str_equal);
+ GHashTable *photo = g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ g_free);
/* Add photo node */
add_node (node, photo);
@@ -209,7 +212,7 @@ get_photo (xmlNodePtr node)
xmlStrcmp (node->name, (const xmlChar *) "description") == 0) {
g_hash_table_insert (photo,
g_strdup ((const gchar *) node->name),
- g_strdup ((const gchar *) xmlNodeGetContent (node)));
+ (gchar *) xmlNodeGetContent (node));
}
node = node->next;
@@ -241,6 +244,7 @@ process_photo_result (const gchar *xml_result, gpointer user_data)
data->get_info_cb (NULL, photo, data->user_data);
g_hash_table_unref (photo);
}
+ g_free (data);
xmlFreeDoc (doc);
}
@@ -275,6 +279,7 @@ process_photolist_result (const gchar *xml_result, gpointer user_data)
g_list_foreach (photolist, (GFunc) g_hash_table_unref, NULL);
g_list_free (photolist);
}
+ g_free (data);
xmlFreeDoc (doc);
}
diff --git a/src/flickr/grl-flickr.c b/src/flickr/grl-flickr.c
index e35b9b2..4c52b16 100644
--- a/src/flickr/grl-flickr.c
+++ b/src/flickr/grl-flickr.c
@@ -175,7 +175,7 @@ update_media (GrlContentMedia *media, GHashTable *photo)
}
description = g_hash_table_lookup (photo, "description");
id = g_hash_table_lookup (photo, "photo_id");
- thumbnail = g_hash_table_lookup (photo, "photo_url_t");
+ thumbnail = g_strdup (g_hash_table_lookup (photo, "photo_url_t"));
if (!thumbnail) {
thumbnail = g_flickr_photo_url_thumbnail (NULL, photo);
}
@@ -183,7 +183,7 @@ update_media (GrlContentMedia *media, GHashTable *photo)
if (!title) {
title = g_hash_table_lookup (photo, "photo_title");
}
- url = g_hash_table_lookup (photo, "photo_url_o");
+ url = g_strdup (g_hash_table_lookup (photo, "photo_url_o"));
if (!url) {
url = g_flickr_photo_url_original (NULL, photo);
}
@@ -206,6 +206,7 @@ update_media (GrlContentMedia *media, GHashTable *photo)
if (thumbnail) {
grl_content_media_set_thumbnail (media, thumbnail);
+ g_free (thumbnail);
}
if (title) {
@@ -214,6 +215,7 @@ update_media (GrlContentMedia *media, GHashTable *photo)
if (url) {
grl_content_media_set_url (media, url);
+ g_free (url);
}
}