From b95df93775733d507f72d7ecad05154be2c9d5b1 Mon Sep 17 00:00:00 2001 From: Daniel Kimsey Date: Tue, 6 Nov 2012 15:39:39 -0500 Subject: [PATCH 1/2] Fixes #568, triple-tilde without language causes crash --- lib/gollum/markup.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/gollum/markup.rb b/lib/gollum/markup.rb index fe35c476..7602b7fd 100644 --- a/lib/gollum/markup.rb +++ b/lib/gollum/markup.rb @@ -488,8 +488,10 @@ module Gollum # extract lang from { .ruby } or { #stuff .ruby .indent } # see http://johnmacfarlane.net/pandoc/README.html#delimited-code-blocks - lang = lang.match(/\.([^}\s]+)/) - lang = lang[1] unless lang.nil? + if lang + lang = lang.match(/\.([^}\s]+)/) + lang = lang[1] unless lang.nil? + end @codemap[id] = cached ? { :output => cached } : From 70127922ab3b545b1802e03e6adea74d934ef980 Mon Sep 17 00:00:00 2001 From: Daniel Kimsey Date: Tue, 6 Nov 2012 15:49:47 -0500 Subject: [PATCH 2/2] Added test for #568 --- test/test_markup.rb | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/test_markup.rb b/test/test_markup.rb index 056028ff..13b05708 100644 --- a/test/test_markup.rb +++ b/test/test_markup.rb @@ -212,6 +212,19 @@ context "Markup" do assert_equal expected, output end + # Issue #568 + test "tilde code blocks without a language" do + page = 'test_rgx' + @wiki.write_page(page, :markdown, + %Q(~~~ +'hi' +~~~ + ), commit_details) + output = @wiki.page(page).formatted_data + expected = %Q{
'hi'\n
} + assert_equal expected, output + end + test "tilda code blocks #537" do page = 'test_rgx' @wiki.write_page(page, :markdown,