OSDN Git Service

bug a@clear ez, y! : style="clear:both" -> clear="all" i,ez,y!: use s_xxxx_nopush_and...
authorcoltware@gmail.com <coltware@gmail.com>
Wed, 25 Nov 2009 15:18:31 +0000 (15:18 +0000)
committerAtsushi Konno <atkonn@gmail.com>
Thu, 10 Dec 2009 03:28:42 +0000 (12:28 +0900)
src/chxj_ixhtml10.c
src/chxj_jxhtml.c
src/chxj_xhtml_mobile_1_0.c

index cc5a680..49c72dc 100755 (executable)
@@ -1406,7 +1406,7 @@ s_ixhtml10_start_br_tag(void *pdoc, Node *node)
     }
   }
   if (IS_CSS_ON(ixhtml10->entryp)) {
-    css_prop_list_t *style = s_ixhtml10_push_and_get_now_style(pdoc, node, attr_style);
+    css_prop_list_t *style = s_ixhtml10_nopush_and_get_now_style(pdoc, node, attr_style);
     if (style) {
       css_property_t *clear_prop = chxj_css_get_property_value(doc, style, "clear");
       css_property_t *cur;
index bfb3f3c..0765b97 100755 (executable)
@@ -1438,17 +1438,19 @@ s_jxhtml_start_br_tag(void *pdoc, Node *node)
     }
   }
   if (IS_CSS_ON(jxhtml->entryp)) {
-    css_prop_list_t *style = s_jxhtml_push_and_get_now_style(pdoc, node, attr_style);
+    css_prop_list_t *style = s_jxhtml_nopush_and_get_now_style(pdoc, node, attr_style);
     if (style) {
       css_property_t *clear_prop = chxj_css_get_property_value(doc, style, "clear");
       css_property_t *cur;
       for (cur = clear_prop->next; cur != clear_prop; cur = cur->next) {
         if (cur->value && *cur->value) {
           if ( STRCASEEQ('l','L',"left",  cur->value)
-            || STRCASEEQ('r','R',"right", cur->value)
-            || STRCASEEQ('b','B',"both"  ,cur->value)) {
+            || STRCASEEQ('r','R',"right", cur->value)) {
             attr_clear = apr_pstrdup(doc->pool, cur->value);
           }
+          else if(STRCASEEQ('b','B',"both"  ,cur->value)) {
+            attr_clear = apr_pstrdup(doc->pool, "all");
+          }
         }
       }
     }
index a837236..16b2176 100755 (executable)
@@ -1335,17 +1335,19 @@ s_xhtml_1_0_start_br_tag(void *pdoc, Node *node)
     }
   }
   if (IS_CSS_ON(xhtml->entryp)) {
-    css_prop_list_t *style = s_xhtml_1_0_push_and_get_now_style(pdoc, node, attr_style);
+    css_prop_list_t *style = s_xhtml_1_0_nopush_and_get_now_style(pdoc, node, attr_style);
     if (style) {
       css_property_t *clear_prop = chxj_css_get_property_value(doc, style, "clear");
       css_property_t *cur;
       for (cur = clear_prop->next; cur != clear_prop; cur = cur->next) {
         if (cur->value && *cur->value) {
           if ( STRCASEEQ('l','L',"left",  cur->value)
-            || STRCASEEQ('r','R',"right", cur->value)
-            || STRCASEEQ('b','B',"both"  ,cur->value)) {
+            || STRCASEEQ('r','R',"right", cur->value)) {
             attr_clear = apr_pstrdup(doc->pool, cur->value);
           }
+          else if(STRCASEEQ('b','B',"both"  ,cur->value)) {
+            attr_clear = apr_pstrdup(doc->pool, "all");
+          }
         }
       }
     }