]> granicus.if.org Git - php/commitdiff
Fixed a bug -- Nodes of certain types don't actually have ID values and PHP
authorJohn Coggeshall <john@php.net>
Mon, 3 Nov 2003 16:35:58 +0000 (16:35 +0000)
committerJohn Coggeshall <john@php.net>
Mon, 3 Nov 2003 16:35:58 +0000 (16:35 +0000)
would segv trying to read one.

ext/tidy/tidy.c

index 07143462236c4d06ea9ef1bee0a2256daad16de7..8f41a1aaeb76fbf7f9cf7bcccfb0372308305e96 100644 (file)
@@ -985,9 +985,16 @@ static void tidy_add_default_properities(PHPTidyObj *obj, tidy_obj_type type TSR
                        ADD_PROPERITY_STRING(obj->std.properties, value, buf.bp);
                        tidyBufFree(&buf);
                        
+                       fprintf(stderr, "type: %d\n",tidyNodeGetType(obj->node)); 
                        ADD_PROPERITY_STRING(obj->std.properties, name, tidyNodeGetName(obj->node));
                        ADD_PROPERITY_LONG(obj->std.properties, type, tidyNodeGetType(obj->node));
-                       ADD_PROPERITY_LONG(obj->std.properties, id, tidyNodeGetId(obj->node));
+                       switch(tidyNodeGetType(obj->node)) {
+                               case TidyNode_Text:
+                               case TidyNode_Comment:
+                                       break;
+                               default:
+                                       ADD_PROPERITY_LONG(obj->std.properties, id, tidyNodeGetId(obj->node));
+                       }
                        
             break;
                case is_attr: