src/blist.c

changeset 7848
b5f43f67a55e
parent 7826
248e04e64bb9
child 7849
c5cb6bc921a5
--- a/src/blist.c	Sat Dec 13 07:05:02 2003 +0000
+++ b/src/blist.c	Sat Dec 13 17:06:10 2003 +0000
@@ -2534,7 +2534,10 @@
 
 	setting = g_hash_table_lookup(node->settings, key);
 
-	return setting ? setting->value.boolean : FALSE;
+	g_return_val_if_fail(setting != NULL, FALSE);
+	g_return_val_if_fail(setting->type == GAIM_BLIST_NODE_SETTING_BOOL, FALSE);
+
+	return setting->value.boolean;
 }
 
 void gaim_blist_node_set_int(GaimBlistNode* node, const char *key, int value)
@@ -2562,7 +2565,10 @@
 
 	setting = g_hash_table_lookup(node->settings, key);
 
-	return setting ? setting->value.integer : 0;
+	g_return_val_if_fail(setting != NULL, 0);
+	g_return_val_if_fail(setting->type == GAIM_BLIST_NODE_SETTING_INT, 0);
+
+	return setting->value.integer;
 }
 
 void gaim_blist_node_set_string(GaimBlistNode* node, const char *key,
@@ -2591,7 +2597,10 @@
 
 	setting = g_hash_table_lookup(node->settings, key);
 
-	return setting ? setting->value.string : NULL;
+	g_return_val_if_fail(setting != NULL, NULL);
+	g_return_val_if_fail(setting->type == GAIM_BLIST_NODE_SETTING_STRING, NULL);
+
+	return setting->value.string;
 }
 
 

mercurial