@@ -448,7 +448,14 @@ elementToBeamer slideLevel (Sec lvl _num (ident,classes,kvs) tit elts)
448 : tit ++ [RawInline "latex" "}"] )
448 : tit ++ [RawInline "latex" "}"] )
449 : bs ++ [RawBlock "latex" "\\end{block}"]
449 : bs ++ [RawBlock "latex" "\\end{block}"]
450 | lvl < slideLevel = do
450 | lvl < slideLevel = do
451+ let isSec Sec{} = True
453+ let (contentElts, secElts) = break isSec elts
454+ let elts' = if null contentElts
456+ else Sec slideLevel [] nullAttr tit contentElts :
451− bs <- concat `fmap` mapM (elementToBeamer slideLevel) elts
458+ bs <- concat `fmap` mapM (elementToBeamer slideLevel) elts'
452 return $ Header lvl (ident,classes,kvs) tit : bs
459 return $ Header lvl (ident,classes,kvs) tit : bs
453 | otherwise = do -- lvl == slideLevel
460 | otherwise = do -- lvl == slideLevel
454 -- note: [fragile] is required or verbatim breaks
461 -- note: [fragile] is required or verbatim breaks