mirror of
https://github.com/discourse/discourse.git
synced 2025-09-05 08:59:27 +08:00
FIX: Make sure html_raw is hoisted in custom markdown cook function (#16050)
When returning the customRenderFn from within buildCustomMarkdownCookFunction for custom markdown engines (such as the one used by the [chat] transcripts) we were not hoisting/unhoisting the `html_raw` tokens created by the transcript, which meant that opts.discourse.hoisted could end up in a state where it was null, and which caused errors and general unpleasantness. Instead, we can just call the `cook` function that is already exported from discourse-markdown-it, that takes care of what we did previously plus the hoisting. There is a companion chat commit that adds tests for this, there are no custom markdown engine usages in core to test with.
This commit is contained in:
parent
430d004fe4
commit
cfe4ff8d56
1 changed files with 1 additions and 3 deletions
|
@ -337,9 +337,7 @@ function buildCustomMarkdownCookFunction(engineOpts, defaultEngineOpts) {
|
||||||
// we don't need the whole engine as a consumer, just a cook function
|
// we don't need the whole engine as a consumer, just a cook function
|
||||||
// will do
|
// will do
|
||||||
return function customRenderFn(contentToRender) {
|
return function customRenderFn(contentToRender) {
|
||||||
return newOpts.discourse
|
return cook(contentToRender, newOpts);
|
||||||
.sanitizer(newOpts.engine.render(contentToRender))
|
|
||||||
.trim();
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue