From 6b46c2dfd196a01e87c7e339a2cbbad1cb403bb6 Mon Sep 17 00:00:00 2001
From: John MacFarlane <fiddlosopher@gmail.com>
Date: Tue, 27 Mar 2012 12:16:02 -0400
Subject: [PATCH] Properly handle citations nested in other inline elements.

Closes #460.

Note:  processBiblio is a mess.  It should be rewritten for
clarity and efficiency.
---
 src/Text/Pandoc/Biblio.hs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/Text/Pandoc/Biblio.hs b/src/Text/Pandoc/Biblio.hs
index c8e87b2a0..6adb3248e 100644
--- a/src/Text/Pandoc/Biblio.hs
+++ b/src/Text/Pandoc/Biblio.hs
@@ -80,7 +80,7 @@ processCite s cs (Cite t _ : rest) =
                             ++ processCite s cs rest
                    else Cite t (renderPandoc s (x:xs)) : processCite s cs rest
         _ -> Str ("Error processing " ++ show t) : processCite s cs rest
-processCite s cs (x:xs) = x : processCite s cs xs
+processCite s cs (x:xs) = bottomUp (processCite s cs) x : processCite s cs xs
 processCite _ _ [] = []
 
 procInlines :: ([Inline] -> [Inline]) -> Block -> Block