fix bug that left stray </p> tags
authorJoey Hess <joey@gnu.kitenet.net>
Mon, 5 Apr 2010 21:18:30 +0000 (17:18 -0400)
committerJoey Hess <joey@gnu.kitenet.net>
Mon, 5 Apr 2010 21:18:30 +0000 (17:18 -0400)
Both markdown and tidy add paragraph tags around text, that needs to be
stripped when the text is a short, one line fragment that is being inserted
into a larger page. tidy also adds several newlines to the end, and this
broke removal of the paragraph tags.

IkiWiki.pm
doc/bugs/stray___60____47__p__62___tags.mdwn

index 6739ba56cbf59f431c5de94aa00ffbfbbc0697b8..0cbc847887b1b6d8493268e41721a7f8d8784a32 100644 (file)
@@ -1164,7 +1164,7 @@ sub htmlize ($$$$) {
        my $content=shift;
        
        my $oneline = $content !~ /\n/;
-
+       
        if (exists $hooks{htmlize}{$type}) {
                $content=$hooks{htmlize}{$type}{call}->(
                        page => $page,
@@ -1185,10 +1185,9 @@ sub htmlize ($$$$) {
        
        if ($oneline) {
                # hack to get rid of enclosing junk added by markdown
-               # and other htmlizers
+               # and other htmlizers/sanitizers
                $content=~s/^<p>//i;
-               $content=~s/<\/p>$//i;
-               chomp $content;
+               $content=~s/<\/p>\n*$//i;
        }
 
        return $content;
index 6e508ffda97ab28f7bf45b6c320fff0c0f3a1fe2..99d6fe09f36640ee0135401d50a65999a43cc089 100644 (file)
@@ -13,3 +13,5 @@ I believe that this snippet in `IkiWiki.pm` might be the reason for the imbalanc
         }
 
 The fact that HTML in a `\[[!meta title]]` is added but then escaped might indicate that some other bug is involved.
+
+> [[done]] --[[Joey]]