+2007-11-13 Ondrej Jirman <megous@megous.com>
+
+ ** Fix for bug #494299
+
+ * libedataserver/e-file-cache.c: (add_key_to_slist),
+ (add_object_to_slist): Rename helper functions.
+ * libedataserver/e-file-cache.c: (e_file_cache_get_keys):
+ Fix memory corruption.
+
2007-10-29 Srinivasa Ragavan <sragavan@novell.com>
* NEWS, configure.in: Evolution Data Server 2.21.1 release.
}
static void
-add_key_to_list (const char *key, const char *value, gpointer user_data)
+add_key_to_slist (const char *key, const char *value, gpointer user_data)
{
- GList **keys = user_data;
+ GSList **keys = user_data;
- *keys = g_list_append (*keys, (char *) key);
+ *keys = g_slist_append (*keys, (char *) key);
}
/**
e_file_cache_clean (EFileCache *cache)
{
EFileCachePrivate *priv;
- GList *keys = NULL;
+ GSList *keys = NULL;
g_return_val_if_fail (E_IS_FILE_CACHE (cache), FALSE);
priv = cache->priv;
- e_xmlhash_foreach_key (priv->xml_hash, (EXmlHashFunc) add_key_to_list, &keys);
+ e_xmlhash_foreach_key (priv->xml_hash, (EXmlHashFunc) add_key_to_slist, &keys);
while (keys != NULL) {
e_file_cache_remove_object (cache, (const char *) keys->data);
- keys = g_list_remove (keys, keys->data);
+ keys = g_slist_remove (keys, keys->data);
}
return TRUE;
}
static void
-add_object_to_list (const char *key, const char *value, gpointer user_data)
+add_object_to_slist (const char *key, const char *value, gpointer user_data)
{
GSList **list = user_data;
priv = cache->priv;
- e_xmlhash_foreach_key (priv->xml_hash, (EXmlHashFunc) add_object_to_list, &list);
+ e_xmlhash_foreach_key (priv->xml_hash, (EXmlHashFunc) add_object_to_slist, &list);
return list;
}
priv = cache->priv;
- e_xmlhash_foreach_key (priv->xml_hash, (EXmlHashFunc) add_key_to_list, &list);
+ e_xmlhash_foreach_key (priv->xml_hash, (EXmlHashFunc) add_key_to_slist, &list);
return list;
}