Index: third_party/WebKit/LayoutTests/editing/execCommand/apply_style/justify_full_without_body_crash.html |
diff --git a/third_party/WebKit/LayoutTests/editing/execCommand/apply_style/justify_full_without_body_crash.html b/third_party/WebKit/LayoutTests/editing/execCommand/apply_style/justify_full_without_body_crash.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2dc90ed7c7dc693933cc7288ad1ea7a0c28a68d9 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/editing/execCommand/apply_style/justify_full_without_body_crash.html |
@@ -0,0 +1,32 @@ |
+<!doctype html> |
+<script src="../../../resources/testharness.js"></script> |
+<script src="../../../resources/testharnessreport.js"></script> |
+<script src="../../assert_selection.js"></script> |
+<script> |
+test(() => { |
+ assert_selection( |
+ '|<style>* {display: list-item}</style>', |
+ selection => { |
+ let doc = selection.document; |
+ doc.designMode = 'on'; |
+ // Insert an element into STYLE to cause crash |
+ element = doc.createElement('div'); |
+ element.textContent = 'foo'; |
+ var style = doc.querySelector('style'); |
+ style.insertBefore(element, style.firstChild); |
+ doc.documentElement.replaceChild(style, doc.body); |
+ doc.execCommand('selectAll'); |
+ doc.execCommand('JustifyFull'); |
+ }, |
+ [ |
+ '<html>', |
+ '<head style="text-align: justify;"></head>', |
+ '<style>', |
+ '<div style="text-align: justify;">foo</div>', |
+ '<div><br></div>', |
+ '<br>', |
+ '</style>', |
+ '</html>' |
+ ].join('')); |
+}, 'justyFull should not crash without BODY'); |
+</script> |