Title: [200850] releases/WebKitGTK/webkit-2.12/Source/WebCore
Revision
200850
Author
[email protected]
Date
2016-05-13 06:07:46 -0700 (Fri, 13 May 2016)

Log Message

Merge r200410 - CrashTracer: [USER] com.apple.WebKit.WebContent at …ple.WebCore: WebCore::EditCommandComposition::unapply + 105
https://bugs.webkit.org/show_bug.cgi?id=157282
<rdar://problem/25391441>

Reviewed by Darin Adler.

A frame could be destroyed in the middle of executing undo/redo command.
Therefore, add an early return.

* editing/CompositeEditCommand.cpp:
(WebCore::EditCommandComposition::unapply):
(WebCore::EditCommandComposition::reapply):

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog (200849 => 200850)


--- releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog	2016-05-13 12:59:02 UTC (rev 200849)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog	2016-05-13 13:07:46 UTC (rev 200850)
@@ -1,3 +1,18 @@
+2016-05-04  Jiewen Tan  <[email protected]>
+
+        CrashTracer: [USER] com.apple.WebKit.WebContent at …ple.WebCore: WebCore::EditCommandComposition::unapply + 105
+        https://bugs.webkit.org/show_bug.cgi?id=157282
+        <rdar://problem/25391441>
+
+        Reviewed by Darin Adler.
+
+        A frame could be destroyed in the middle of executing undo/redo command.
+        Therefore, add an early return.
+
+        * editing/CompositeEditCommand.cpp:
+        (WebCore::EditCommandComposition::unapply):
+        (WebCore::EditCommandComposition::reapply):
+
 2016-04-29  Alex Christensen  <[email protected]>
 
         Do not reuse cache entries with conditional headers

Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/editing/CompositeEditCommand.cpp (200849 => 200850)


--- releases/WebKitGTK/webkit-2.12/Source/WebCore/editing/CompositeEditCommand.cpp	2016-05-13 12:59:02 UTC (rev 200849)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/editing/CompositeEditCommand.cpp	2016-05-13 13:07:46 UTC (rev 200850)
@@ -99,7 +99,8 @@
 {
     ASSERT(m_document);
     RefPtr<Frame> frame = m_document->frame();
-    ASSERT(frame);
+    if (!frame)
+        return;
 
     // Changes to the document may have been made since the last editing operation that require a layout, as in <rdar://problem/5658603>.
     // Low level operations, like RemoveNodeCommand, don't require a layout because the high level operations that use them perform one
@@ -125,7 +126,8 @@
 {
     ASSERT(m_document);
     RefPtr<Frame> frame = m_document->frame();
-    ASSERT(frame);
+    if (!frame)
+        return;
 
     // Changes to the document may have been made since the last editing operation that require a layout, as in <rdar://problem/5658603>.
     // Low level operations, like RemoveNodeCommand, don't require a layout because the high level operations that use them perform one
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to