Skip to content

Commit c33be19

Browse files
committed
Core: Prevent error from throwing when element does not have a parentNode in highlightElement. Fix #1203
1 parent 1fd690d commit c33be19

File tree

3 files changed

+13
-9
lines changed

3 files changed

+13
-9
lines changed

components/prism-core.js

+6-4
Original file line numberDiff line numberDiff line change
@@ -184,11 +184,13 @@ var _ = _self.Prism = {
184184
// Set language on the element, if not present
185185
element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
186186

187-
// Set language on the parent, for styling
188-
parent = element.parentNode;
187+
if (element.parentNode) {
188+
// Set language on the parent, for styling
189+
parent = element.parentNode;
189190

190-
if (/pre/i.test(parent.nodeName)) {
191-
parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
191+
if (/pre/i.test(parent.nodeName)) {
192+
parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
193+
}
192194
}
193195

194196
var code = element.textContent;

components/prism-core.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

prism.js

+6-4
Original file line numberDiff line numberDiff line change
@@ -189,11 +189,13 @@ var _ = _self.Prism = {
189189
// Set language on the element, if not present
190190
element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
191191

192-
// Set language on the parent, for styling
193-
parent = element.parentNode;
192+
if (element.parentNode) {
193+
// Set language on the parent, for styling
194+
parent = element.parentNode;
194195

195-
if (/pre/i.test(parent.nodeName)) {
196-
parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
196+
if (/pre/i.test(parent.nodeName)) {
197+
parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
198+
}
197199
}
198200

199201
var code = element.textContent;

0 commit comments

Comments
 (0)