From 7e481d73cf4889551278fc7f72a3c8f1178445e4 Mon Sep 17 00:00:00 2001
From: John MacFarlane <jgm@berkeley.edu>
Date: Wed, 9 Jan 2019 08:36:04 -0800
Subject: [PATCH] Beamer writer: avoid duplicated `fragile` property in some
 cases.

Closes #5208.
---
 src/Text/Pandoc/Writers/LaTeX.hs | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs
index 7441152a6..0b539d553 100644
--- a/src/Text/Pandoc/Writers/LaTeX.hs
+++ b/src/Text/Pandoc/Writers/LaTeX.hs
@@ -471,7 +471,9 @@ elementToBeamer slideLevel  (Sec lvl _num (ident,classes,kvs) tit elts)
                           "b", "c", "t", "environment",
                           "label", "plain", "shrink", "standout",
                           "noframenumbering"]
-      let optionslist = ["fragile" | fragile && isNothing (lookup "fragile" kvs)] ++
+      let optionslist = ["fragile" | fragile
+                                   , isNothing (lookup "fragile" kvs)
+                                   , "fragile" `notElem` classes] ++
                         [k | k <- classes, k `elem` frameoptions] ++
                         [k ++ "=" ++ v | (k,v) <- kvs, k `elem` frameoptions]
       let options = if null optionslist