OSDN Git Service

* Fixed missing initializer.
authorAtsushi Konno <konn@users.sourceforge.jp>
Fri, 10 Apr 2009 16:33:39 +0000 (01:33 +0900)
committerAtsushi Konno <konn@users.sourceforge.jp>
Fri, 10 Apr 2009 16:33:39 +0000 (01:33 +0900)
  * Added new original tag (CHXJ:RAW).

12 files changed:
include/mod_chxj.h
src/chxj_chtml10.c
src/chxj_chtml20.c
src/chxj_chtml30.c
src/chxj_chtml40.c
src/chxj_chtml50.c
src/chxj_jhtml.c
src/chxj_jxhtml.c
src/chxj_node_convert.c
src/chxj_xhtml_mobile_1_0.c
src/mod_chxj.c
src/qs_parse_string.c

index 5424a7c..d27009a 100644 (file)
@@ -258,6 +258,7 @@ typedef enum {
   tagOPTION,
   tagDIV,
   tagCHXJIF,  
+  tagCHXJRAW,  
   tagNOBR,  
   tagSMALL,  
   tagSTYLE,  
index 4c596be..2bab42e 100644 (file)
@@ -290,6 +290,11 @@ tag_handler chtml10_handler[] = {
     s_chtml10_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_chtml10_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index 08a3eb3..4278e40 100644 (file)
@@ -295,6 +295,11 @@ tag_handler chtml20_handler[] = {
     s_chtml20_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_chtml20_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index ec7a1a8..073d690 100644 (file)
@@ -293,6 +293,11 @@ tag_handler chtml30_handler[] = {
     s_chtml30_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_chtml30_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index b772f94..58478c7 100644 (file)
@@ -293,6 +293,11 @@ tag_handler chtml40_handler[] = {
     s_chtml40_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_chtml40_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index 23081d8..1bdb294 100644 (file)
@@ -293,6 +293,11 @@ tag_handler chtml50_handler[] = {
     s_chtml50_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_chtml50_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index 895a2b1..67c9ca8 100644 (file)
@@ -302,6 +302,11 @@ tag_handler jhtml_handler[] = {
     s_jhtml_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_jhtml_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index e24efb3..22ab559 100644 (file)
@@ -300,6 +300,11 @@ tag_handler jxhtml_handler[] = {
     s_jxhtml_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_jxhtml_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index 5c72f03..f837b11 100644 (file)
@@ -795,6 +795,15 @@ chxj_node_convert(
           }
         }
       }
+      /*----------------------------------------------------------------------*/
+      /* <CHXJ:RAW>                                                           */
+      /*----------------------------------------------------------------------*/
+      else
+      if (strcasecmp(name, "chxj:raw") == 0) {
+        if (handlers[tagCHXJRAW].start_tag_handler) {
+           handlers[tagCHXJRAW].start_tag_handler(pdoc, child);
+        }
+      }
       else {
         chxj_node_convert(spec, r, pdoc, doc, child, indent+1);
       }
index f3096ee..5c90ce4 100644 (file)
@@ -295,6 +295,11 @@ tag_handler xhtml_handler[] = {
     s_xhtml_1_0_chxjif_tag,
     NULL,
   },
+  /* tagCHXJRAW */
+  {
+    s_xhtml_1_0_chxjif_tag,
+    NULL,
+  },
   /* tagNOBR */
   {
     NULL,
index a2a8100..83cce0b 100644 (file)
@@ -3028,7 +3028,7 @@ static const command_rec cmds[] = {
     NULL,
     OR_ALL,
     "for CustomLog directive. mod_chxj's internal POST log environment name.(Default:chxj-post-log)"),
-  {NULL}
+  {NULL,{NULL},NULL,0,0,NULL},
 };
 
 
index f5e1441..62105e4 100644 (file)
@@ -230,7 +230,7 @@ qs_parse_string(Doc *doc, const char *src, int srclen)
         }
         else
         if (doc->parse_mode == PARSE_MODE_NO_PARSE) {
-          if (STRCASEEQ('c','C',"chxj:if",&node->name[1]) || STRCASEEQ('p','P',"plaintext",&node->name[1])) {
+          if (STRCASEEQ('c','C',"chxj:if",&node->name[1]) || STRCASEEQ('p','P',"plaintext",&node->name[1]) || STRCASEEQ('c','C',"chxj:raw",&node->name[1])) {
             if (doc->now_parent_node->parent != NULL) {
               doc->now_parent_node = doc->now_parent_node->parent;
               doc->parse_mode = PARSE_MODE_CHTML;
@@ -257,7 +257,7 @@ qs_parse_string(Doc *doc, const char *src, int srclen)
           continue;
       }
 
-      if (doc->parse_mode == PARSE_MODE_CHTML && STRCASEEQ('c','C',"chxj:if", node->name)) {
+      if (doc->parse_mode == PARSE_MODE_CHTML && (STRCASEEQ('c','C',"chxj:if", node->name) || STRCASEEQ('c','C',"chxj:raw",node->name))) {
         Attr *parse_attr;
         doc->parse_mode = PARSE_MODE_NO_PARSE;
         doc->now_parent_node = node;