From e2c361f353b475fa99ce68c0b3ac037b3d5c926c Mon Sep 17 00:00:00 2001
From: Robin Ward ` weren't
working.
---
.../discourse/dialects/autoquote_dialect.js | 2 +-
app/assets/javascripts/discourse/dialects/html.js | 10 +++++++---
test/javascripts/lib/markdown_test.js | 3 +++
3 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/app/assets/javascripts/discourse/dialects/autoquote_dialect.js b/app/assets/javascripts/discourse/dialects/autoquote_dialect.js
index e34bd3c2330..e58e6b4ced0 100644
--- a/app/assets/javascripts/discourse/dialects/autoquote_dialect.js
+++ b/app/assets/javascripts/discourse/dialects/autoquote_dialect.js
@@ -20,4 +20,4 @@ Discourse.Dialect.registerInline('"', function(str, match, prev) {
return [str.length, ['blockquote', inner]];
}
}
-});
\ No newline at end of file
+});
diff --git a/app/assets/javascripts/discourse/dialects/html.js b/app/assets/javascripts/discourse/dialects/html.js
index ed4d4641a25..466a0ad4f54 100644
--- a/app/assets/javascripts/discourse/dialects/html.js
+++ b/app/assets/javascripts/discourse/dialects/html.js
@@ -25,12 +25,16 @@ var blockTags = ['address', 'article', 'aside', 'audio', 'blockquote', 'canvas',
};
Discourse.Dialect.registerBlock('html', function(block, next) {
+ var split;
// Fix manual blockquote paragraphing even though it's not strictly correct
- var split = splitAtLast('blockquote', block, next, true);
- if (split) { return split; }
+ if (block.search(/[^\s]+
]+)\>/m.exec(block);
+ var m = /^<([^>]+)\>/.exec(block);
if (m && m[1]) {
var tag = m[1].split(/\s/);
if (tag && tag[0] && blockTags.indexOf(tag[0]) !== -1) {
diff --git a/test/javascripts/lib/markdown_test.js b/test/javascripts/lib/markdown_test.js
index 4fb041e0e65..62821659b7c 100644
--- a/test/javascripts/lib/markdown_test.js
+++ b/test/javascripts/lib/markdown_test.js
@@ -321,6 +321,9 @@ test("Code Blocks", function() {
"
[quote="sam, post:1, topic:9441, full:true"]This is `<not>` a bug.[/quote]
test", + "
hello
\n\ntest", + "it allows an indented code block to by followed by a `
`"); }); test("sanitize", function() {