Skip to content

Commit 1de271e

Browse files
committed
Add a try/catch to provide some robustness in case document.implementation.createHTMLDocument isn't available
1 parent cc5e987 commit 1de271e

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

packages/rrweb/src/record/mutation.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -462,7 +462,14 @@ export default class MutationBuffer {
462462
if (isIgnored(m.target, this.mirror)) {
463463
return;
464464
}
465-
const unattachedDoc = document.implementation.createHTMLDocument(); // avoid upsetting original document from a Content Security point of view
465+
let unattachedDoc;
466+
try {
467+
// avoid upsetting original document from a Content Security point of view
468+
unattachedDoc = document.implementation.createHTMLDocument();
469+
} catch (e) {
470+
// fallback to more direct method
471+
unattachedDoc = this.doc;
472+
}
466473
switch (m.type) {
467474
case 'characterData': {
468475
const value = m.target.textContent;

0 commit comments

Comments
 (0)