aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2021-06-01 21:44:55 -0600
committerJohn MacFarlane <jgm@berkeley.edu>2021-06-01 21:44:55 -0600
commit2e4ef14d9112f230e336a1f3767f87293bdfb73e (patch)
tree0471ae3df43f0aba9b20a79b8532b762b8d1bf7b
parentabb59bd58222c67fd36a8e447c01de3404a7ed1d (diff)
downloadpandoc-2e4ef14d9112f230e336a1f3767f87293bdfb73e.tar.gz
Markdown reader: fix pipe table regression in 2.11.4.
Previously pipe tables with empty headers (that is, a header line with all empty cells) would be rendered as headerless tables. This broke in 2.11.4. The fix here is to produce an AST with an empty table head when a pipe table has all empty header cells. Closes #7343.
-rw-r--r--src/Text/Pandoc/Readers/Markdown.hs2
-rw-r--r--test/pipe-tables.native12
2 files changed, 3 insertions, 11 deletions
diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs
index 1761ee2c1..1e9867d07 100644
--- a/src/Text/Pandoc/Readers/Markdown.hs
+++ b/src/Text/Pandoc/Readers/Markdown.hs
@@ -2254,4 +2254,4 @@ toRow :: [Blocks] -> Row
toRow = Row nullAttr . map B.simpleCell
toHeaderRow :: [Blocks] -> [Row]
-toHeaderRow l = [toRow l | not (null l)]
+toHeaderRow l = [toRow l | not (null l) && not (all null l)]
diff --git a/test/pipe-tables.native b/test/pipe-tables.native
index 557cd0642..249eec17e 100644
--- a/test/pipe-tables.native
+++ b/test/pipe-tables.native
@@ -131,13 +131,7 @@
,(AlignLeft,ColWidthDefault)
,(AlignCenter,ColWidthDefault)]
(TableHead ("",[],[])
- [Row ("",[],[])
- [Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1)
- []
- ,Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1)
- []
- ,Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1)
- []]])
+ [])
[(TableBody ("",[],[]) (RowHeadColumns 0)
[]
[Row ("",[],[])
@@ -213,9 +207,7 @@
[])
[(AlignCenter,ColWidthDefault)]
(TableHead ("",[],[])
- [Row ("",[],[])
- [Cell ("",[],[]) AlignDefault (RowSpan 1) (ColSpan 1)
- []]])
+ [])
[(TableBody ("",[],[]) (RowHeadColumns 0)
[]
[Row ("",[],[])