From fb5a52884dd17d17bab47de7f53c17c05ced6e1b Mon Sep 17 00:00:00 2001 From: Tomas Bzatek Date: Sat, 4 Jun 2011 17:30:12 +0200 Subject: Introduce conditional system This is very basic scripting support - simple value retrieval and block conditionals. Defines could be either static from theme setup or programatically added during page generation. --- src/gallery-utils.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/gallery-utils.c') diff --git a/src/gallery-utils.c b/src/gallery-utils.c index 494900c..3caff02 100644 --- a/src/gallery-utils.c +++ b/src/gallery-utils.c @@ -365,3 +365,22 @@ needs_update (const gchar *source, const gchar *dest) return (src_stat.st_mtime > dst_stat.st_mtime); } + +/* + * clone_string_hash_table: clones data from existing string hash table and returns newly-allocated copy + */ +GHashTable * +clone_string_hash_table (GHashTable *hash_table) +{ + GHashTable *dest; + GHashTableIter iter; + gchar *key, *value; + + dest = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); + + g_hash_table_iter_init (&iter, hash_table); + while (g_hash_table_iter_next (&iter, (gpointer) &key, (gpointer) &value)) + g_hash_table_insert (dest, g_strdup (key), g_strdup (value)); + + return dest; +} -- cgit v1.2.3