diff src/protocols/jabber/xdata.c @ 8010:c4b5a35c7a12

[gaim-migrate @ 8690] jabber crashen fixen committer: Tailor Script <tailor@pidgin.im>
author Nathan Walp <nwalp@pidgin.im>
date Mon, 05 Jan 2004 17:42:36 +0000
parents b02b30247e7a
children 8f4ce853e685
line wrap: on
line diff
--- a/src/protocols/jabber/xdata.c	Mon Jan 05 13:47:20 2004 +0000
+++ b/src/protocols/jabber/xdata.c	Mon Jan 05 17:42:36 2004 +0000
@@ -166,7 +166,7 @@
 	gaim_request_fields_add_group(fields, group);
 
 	for(fn = packet->child; fn; fn = fn->next) {
-		if(fn->name && !strcmp(fn->name, "field")) {
+		if(fn->type == NODE_TYPE_TAG && !strcmp(fn->name, "field")) {
 			xmlnode *valuenode;
 			const char *type = xmlnode_get_attrib(fn, "type");
 			const char *label = xmlnode_get_attrib(fn, "label");
@@ -204,7 +204,7 @@
 				GString *str = g_string_new("");
 
 				for(valuenode = fn->child; valuenode; valuenode = valuenode->next) {
-					if(strcmp(valuenode->name, "value"))
+					if(valuenode->type != NODE_TYPE_TAG || strcmp(valuenode->name, "value"))
 						continue;
 
 					if(!(value = xmlnode_get_data(valuenode)))
@@ -237,7 +237,7 @@
 				}
 
 				for(valuenode = fn->child; valuenode; valuenode = valuenode->next) {
-					if(strcmp(valuenode->name, "value"))
+					if(valuenode->type != NODE_TYPE_TAG || strcmp(valuenode->name, "value"))
 						continue;
 					selected = g_list_prepend(selected, xmlnode_get_data(valuenode));
 				}
@@ -245,7 +245,7 @@
 				for(optnode = fn->child; optnode; optnode = optnode->next) {
 					const char *lbl;
 
-					if(strcmp(optnode->name, "option"))
+					if(optnode->type != NODE_TYPE_TAG || strcmp(optnode->name, "option"))
 						continue;
 
 					if(!(valuenode = xmlnode_get_child(optnode, "value")))