OSDN Git Service

Bug: can't get tag name if tag doesn't have whitespace. Ex) NG : <br/> OK : <br />
authorcoltware <coltware@gmail.com>
Wed, 24 Mar 2010 10:25:07 +0000 (19:25 +0900)
committerAtsushi Konno <konn@users.sourceforge.jp>
Thu, 13 May 2010 16:31:05 +0000 (01:31 +0900)
src/qs_parse_tag.c

index f24709b..10a213c 100644 (file)
@@ -49,7 +49,13 @@ qs_parse_tag(Doc *doc, const char *s, int len)
   /* 
    * s[0] == '<' && s[len] == '>' 
    */
-  tag_name = (char *)s_get_tag_name(doc, ++s, --ll);
+  if (sv_s[len-1] == '/'){
+       ll -= 2;
+       tag_name = (char *)s_get_tag_name(doc, ++s, ll);
+  }
+  else{
+       tag_name = (char *)s_get_tag_name(doc, ++s, --ll);
+  }
 
   node = (Node *)qs_new_tag(doc);
   if (! node) {
@@ -111,7 +117,7 @@ s_get_tag_name(Doc *doc, const char *s, int len)
 
   sp = ii;
   for (;ii<len; ii++) {
-    if (is_white_space(s[ii])) 
+    if (is_white_space(s[ii]))
       break;
   }