Title: [176679] branches/safari-600.3-branch/Source/WebKit2
Revision
176679
Author
[email protected]
Date
2014-12-02 11:37:08 -0800 (Tue, 02 Dec 2014)

Log Message

Merged r176474. rdar://problems/19063717

Modified Paths

Diff

Modified: branches/safari-600.3-branch/Source/WebKit2/ChangeLog (176678 => 176679)


--- branches/safari-600.3-branch/Source/WebKit2/ChangeLog	2014-12-02 19:34:27 UTC (rev 176678)
+++ branches/safari-600.3-branch/Source/WebKit2/ChangeLog	2014-12-02 19:37:08 UTC (rev 176679)
@@ -1,5 +1,23 @@
 2014-12-02  Dana Burkart  <[email protected]>
 
+        Merge r176474. <rdar://problem/19063717>
+
+    2014-11-21  Tim Horton  <[email protected]>
+
+            Crashes while encoding a TextIndicator with no contentImageWithHighlight
+            https://bugs.webkit.org/show_bug.cgi?id=138984
+            <rdar://problem/19063717>
+
+            Reviewed by Sam Weinig.
+
+            * Shared/WebCoreArgumentCoders.cpp:
+            (IPC::ArgumentCoder<TextIndicatorData>::encode):
+            (IPC::ArgumentCoder<TextIndicatorData>::decode):
+            encodeImage doesn't deal with null images, so handle that case gracefully.
+
+
+2014-12-02  Dana Burkart  <[email protected]>
+
         Merge r176613. <rdar://problem/19108805>
 
     2014-12-01  Conrad Shultz  <[email protected]>

Modified: branches/safari-600.3-branch/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp (176678 => 176679)


--- branches/safari-600.3-branch/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp	2014-12-02 19:34:27 UTC (rev 176678)
+++ branches/safari-600.3-branch/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp	2014-12-02 19:37:08 UTC (rev 176679)
@@ -2177,8 +2177,16 @@
     encoder << textIndicatorData.textRectsInBoundingRectCoordinates;
     encoder << textIndicatorData.contentImageScaleFactor;
     encoder.encodeEnum(textIndicatorData.presentationTransition);
-    encodeImage(encoder, textIndicatorData.contentImage.get());
-    encodeImage(encoder, textIndicatorData.contentImageWithHighlight.get());
+
+    bool hasImage = textIndicatorData.contentImage;
+    encoder << hasImage;
+    if (hasImage)
+        encodeImage(encoder, textIndicatorData.contentImage.get());
+
+    bool hasImageWithHighlight = textIndicatorData.contentImageWithHighlight;
+    encoder << hasImageWithHighlight;
+    if (hasImageWithHighlight)
+        encodeImage(encoder, textIndicatorData.contentImageWithHighlight.get());
 }
 
 bool ArgumentCoder<TextIndicatorData>::decode(ArgumentDecoder& decoder, TextIndicatorData& textIndicatorData)
@@ -2198,11 +2206,17 @@
     if (!decoder.decodeEnum(textIndicatorData.presentationTransition))
         return false;
 
-    if (!decodeImage(decoder, textIndicatorData.contentImage))
+    bool hasImage;
+    if (!decoder.decode(hasImage))
         return false;
+    if (hasImage && !decodeImage(decoder, textIndicatorData.contentImage))
+        return false;
 
-    if (!decodeImage(decoder, textIndicatorData.contentImageWithHighlight))
+    bool hasImageWithHighlight;
+    if (!decoder.decode(hasImageWithHighlight))
         return false;
+    if (hasImageWithHighlight && !decodeImage(decoder, textIndicatorData.contentImageWithHighlight))
+        return false;
 
     return true;
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to