Fossil SCM
ended some paragraphs for elements, not allowed in p for xhtml
Commit
2353aa9a2f9f428f75d7bac4bfd70e6ecea318dc
Parent
32f3ad23b10a260…
1 file changed
+11
+11
| --- src/wikiformat.c | ||
| +++ src/wikiformat.c | ||
| @@ -745,10 +745,13 @@ | ||
| 745 | 745 | static void renderMarkup(Blob *pOut, ParsedMarkup *p){ |
| 746 | 746 | int i; |
| 747 | 747 | if( p->endTag ){ |
| 748 | 748 | blob_appendf(pOut, "</%s>", aMarkup[p->iCode].zName); |
| 749 | 749 | }else{ |
| 750 | + /* close active paragraph for several elemnts, which are not allowed | |
| 751 | + ** in paragraphs(xhtml!) | |
| 752 | + */ | |
| 750 | 753 | blob_appendf(pOut, "<%s", aMarkup[p->iCode].zName); |
| 751 | 754 | for(i=0; i<p->nAttr; i++){ |
| 752 | 755 | blob_appendf(pOut, " %s", aAttribute[p->aAttr[i].iACode].zName); |
| 753 | 756 | if( p->aAttr[i].zValue ){ |
| 754 | 757 | const char *zVal = p->aAttr[i].zValue; |
| @@ -1395,10 +1398,18 @@ | ||
| 1395 | 1398 | if( markup.iType==MUTYPE_FONT ){ |
| 1396 | 1399 | startAutoParagraph(p); |
| 1397 | 1400 | }else if( markup.iType==MUTYPE_BLOCK ){ |
| 1398 | 1401 | p->wantAutoParagraph = 0; |
| 1399 | 1402 | } |
| 1403 | + if ( markup.iCode==MARKUP_HR | |
| 1404 | + || markup.iCode==MARKUP_H1 | |
| 1405 | + || markup.iCode==MARKUP_H2 | |
| 1406 | + || markup.iCode==MARKUP_H3 | |
| 1407 | + || markup.iCode==MARKUP_H4 | |
| 1408 | + || markup.iCode==MARKUP_H5 | |
| 1409 | + ) | |
| 1410 | + endAutoParagraph(p); | |
| 1400 | 1411 | if( (markup.iType & MUTYPE_STACK )!=0 ){ |
| 1401 | 1412 | pushStack(p, markup.iCode); |
| 1402 | 1413 | } |
| 1403 | 1414 | renderMarkup(p->pOut, &markup); |
| 1404 | 1415 | } |
| 1405 | 1416 |
| --- src/wikiformat.c | |
| +++ src/wikiformat.c | |
| @@ -745,10 +745,13 @@ | |
| 745 | static void renderMarkup(Blob *pOut, ParsedMarkup *p){ |
| 746 | int i; |
| 747 | if( p->endTag ){ |
| 748 | blob_appendf(pOut, "</%s>", aMarkup[p->iCode].zName); |
| 749 | }else{ |
| 750 | blob_appendf(pOut, "<%s", aMarkup[p->iCode].zName); |
| 751 | for(i=0; i<p->nAttr; i++){ |
| 752 | blob_appendf(pOut, " %s", aAttribute[p->aAttr[i].iACode].zName); |
| 753 | if( p->aAttr[i].zValue ){ |
| 754 | const char *zVal = p->aAttr[i].zValue; |
| @@ -1395,10 +1398,18 @@ | |
| 1395 | if( markup.iType==MUTYPE_FONT ){ |
| 1396 | startAutoParagraph(p); |
| 1397 | }else if( markup.iType==MUTYPE_BLOCK ){ |
| 1398 | p->wantAutoParagraph = 0; |
| 1399 | } |
| 1400 | if( (markup.iType & MUTYPE_STACK )!=0 ){ |
| 1401 | pushStack(p, markup.iCode); |
| 1402 | } |
| 1403 | renderMarkup(p->pOut, &markup); |
| 1404 | } |
| 1405 |
| --- src/wikiformat.c | |
| +++ src/wikiformat.c | |
| @@ -745,10 +745,13 @@ | |
| 745 | static void renderMarkup(Blob *pOut, ParsedMarkup *p){ |
| 746 | int i; |
| 747 | if( p->endTag ){ |
| 748 | blob_appendf(pOut, "</%s>", aMarkup[p->iCode].zName); |
| 749 | }else{ |
| 750 | /* close active paragraph for several elemnts, which are not allowed |
| 751 | ** in paragraphs(xhtml!) |
| 752 | */ |
| 753 | blob_appendf(pOut, "<%s", aMarkup[p->iCode].zName); |
| 754 | for(i=0; i<p->nAttr; i++){ |
| 755 | blob_appendf(pOut, " %s", aAttribute[p->aAttr[i].iACode].zName); |
| 756 | if( p->aAttr[i].zValue ){ |
| 757 | const char *zVal = p->aAttr[i].zValue; |
| @@ -1395,10 +1398,18 @@ | |
| 1398 | if( markup.iType==MUTYPE_FONT ){ |
| 1399 | startAutoParagraph(p); |
| 1400 | }else if( markup.iType==MUTYPE_BLOCK ){ |
| 1401 | p->wantAutoParagraph = 0; |
| 1402 | } |
| 1403 | if ( markup.iCode==MARKUP_HR |
| 1404 | || markup.iCode==MARKUP_H1 |
| 1405 | || markup.iCode==MARKUP_H2 |
| 1406 | || markup.iCode==MARKUP_H3 |
| 1407 | || markup.iCode==MARKUP_H4 |
| 1408 | || markup.iCode==MARKUP_H5 |
| 1409 | ) |
| 1410 | endAutoParagraph(p); |
| 1411 | if( (markup.iType & MUTYPE_STACK )!=0 ){ |
| 1412 | pushStack(p, markup.iCode); |
| 1413 | } |
| 1414 | renderMarkup(p->pOut, &markup); |
| 1415 | } |
| 1416 |