Index: valid.c =================================================================== RCS file: /cvs/gnome/gnome-xml/valid.c,v retrieving revision 1.163 diff -c -r1.163 valid.c *** valid.c 29 Sep 2003 18:02:37 -0000 1.163 --- valid.c 2 Oct 2003 02:39:24 -0000 *************** *** 2379,2385 **** */ int xmlRemoveID(xmlDocPtr doc, xmlAttrPtr attr) { ! xmlAttrPtr cur; xmlIDTablePtr table; xmlChar *ID; --- 2379,2385 ---- */ int xmlRemoveID(xmlDocPtr doc, xmlAttrPtr attr) { ! xmlIDPtr cur; xmlIDTablePtr table; xmlChar *ID; *************** *** 2395,2405 **** if (ID == NULL) return(-1); cur = xmlHashLookup(table, ID); ! if (cur != attr) { xmlFree(ID); return(-1); } ! xmlHashUpdateEntry(table, ID, NULL, (xmlHashDeallocator) xmlFreeID); xmlFree(ID); return(0); } --- 2395,2405 ---- if (ID == NULL) return(-1); cur = xmlHashLookup(table, ID); ! if (cur->attr != attr) { xmlFree(ID); return(-1); } ! xmlHashRemoveEntry(table, ID, (xmlHashDeallocator) xmlFreeID); xmlFree(ID); return(0); }