From 0411fe7ccf26c36f78af58100b9670dd639d2d3b Mon Sep 17 00:00:00 2001 From: Jesse Rosenthal Date: Mon, 11 Aug 2014 12:48:16 -0400 Subject: Docx reader: handle empty reducibles. --- src/Text/Pandoc/Readers/Docx/Reducible.hs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Text/Pandoc/Readers/Docx/Reducible.hs b/src/Text/Pandoc/Readers/Docx/Reducible.hs index 2dbef4131..a852e25bf 100644 --- a/src/Text/Pandoc/Readers/Docx/Reducible.hs +++ b/src/Text/Pandoc/Readers/Docx/Reducible.hs @@ -88,11 +88,13 @@ combineReducibles r s = in case null shared of True | (x : xs) <- reverse rs - , isSpace x -> - rebuild conts (reverse xs) ++ [x, s] + , isSpace x -> case xs of + [] -> [x, s] + _ -> rebuild conts (reverse xs) ++ [x, s] | (x : xs) <- ss - , isSpace x -> - [r, x] ++ rebuild conts' (xs) + , isSpace x -> case xs of + [] -> [r, x] + _ -> [r, x] ++ rebuild conts' (xs) True -> [r,s] False -> rebuild shared $ @@ -121,7 +123,6 @@ instance Reducible Inline where False -> [Span attr2' ils2] in [Span attr' $ reduceList $ s1' ++ s2'] - (Str x) <++> (Str y) = [Str (x++y)] il <++> il' = combineReducibles il il' -- cgit v1.2.3