Title: [177644] branches/safari-600.1.4.13-branch/Source/WebKit2
- Revision
- 177644
- Author
- [email protected]
- Date
- 2014-12-22 12:08:41 -0800 (Mon, 22 Dec 2014)
Log Message
Merged r173973. rdar://problem/19327404
Modified Paths
Diff
Modified: branches/safari-600.1.4.13-branch/Source/WebKit2/ChangeLog (177643 => 177644)
--- branches/safari-600.1.4.13-branch/Source/WebKit2/ChangeLog 2014-12-22 20:08:08 UTC (rev 177643)
+++ branches/safari-600.1.4.13-branch/Source/WebKit2/ChangeLog 2014-12-22 20:08:41 UTC (rev 177644)
@@ -1,3 +1,22 @@
+2014-12-22 Babak Shafiei <[email protected]>
+
+ Merge r173973.
+
+ 2014-09-25 Tim Horton <[email protected]>
+
+ CommitLayerTree decode fails in 32-bit apps on 64-bit devices (TransformationMatrix alignment differs)
+ https://bugs.webkit.org/show_bug.cgi?id=136444
+ <rdar://problem/17952526>
+
+ Reviewed by Anders Carlsson.
+
+ * Shared/WebCoreArgumentCoders.cpp:
+ (IPC::ArgumentCoder<TransformationMatrix>::encode):
+ (IPC::ArgumentCoder<TransformationMatrix>::decode):
+ Stop using SimpleArgumentCoder to encode/decode TransformationMatrix,
+ because the alignment of TransformationMatrix differs between architectures,
+ and there's no guarantee that both sides of a connection are the same architecture.
+
2014-12-17 Babak Shafiei <[email protected]>
Merge r176996.
Modified: branches/safari-600.1.4.13-branch/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp (177643 => 177644)
--- branches/safari-600.1.4.13-branch/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp 2014-12-22 20:08:08 UTC (rev 177643)
+++ branches/safari-600.1.4.13-branch/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp 2014-12-22 20:08:41 UTC (rev 177644)
@@ -98,12 +98,83 @@
void ArgumentCoder<TransformationMatrix>::encode(ArgumentEncoder& encoder, const TransformationMatrix& transformationMatrix)
{
- SimpleArgumentCoder<TransformationMatrix>::encode(encoder, transformationMatrix);
+ encoder << transformationMatrix.m11();
+ encoder << transformationMatrix.m12();
+ encoder << transformationMatrix.m13();
+ encoder << transformationMatrix.m14();
+
+ encoder << transformationMatrix.m21();
+ encoder << transformationMatrix.m22();
+ encoder << transformationMatrix.m23();
+ encoder << transformationMatrix.m24();
+
+ encoder << transformationMatrix.m31();
+ encoder << transformationMatrix.m32();
+ encoder << transformationMatrix.m33();
+ encoder << transformationMatrix.m34();
+
+ encoder << transformationMatrix.m41();
+ encoder << transformationMatrix.m42();
+ encoder << transformationMatrix.m43();
+ encoder << transformationMatrix.m44();
}
bool ArgumentCoder<TransformationMatrix>::decode(ArgumentDecoder& decoder, TransformationMatrix& transformationMatrix)
{
- return SimpleArgumentCoder<TransformationMatrix>::decode(decoder, transformationMatrix);
+ double m11;
+ if (!decoder.decode(m11))
+ return false;
+ double m12;
+ if (!decoder.decode(m12))
+ return false;
+ double m13;
+ if (!decoder.decode(m13))
+ return false;
+ double m14;
+ if (!decoder.decode(m14))
+ return false;
+
+ double m21;
+ if (!decoder.decode(m21))
+ return false;
+ double m22;
+ if (!decoder.decode(m22))
+ return false;
+ double m23;
+ if (!decoder.decode(m23))
+ return false;
+ double m24;
+ if (!decoder.decode(m24))
+ return false;
+
+ double m31;
+ if (!decoder.decode(m31))
+ return false;
+ double m32;
+ if (!decoder.decode(m32))
+ return false;
+ double m33;
+ if (!decoder.decode(m33))
+ return false;
+ double m34;
+ if (!decoder.decode(m34))
+ return false;
+
+ double m41;
+ if (!decoder.decode(m41))
+ return false;
+ double m42;
+ if (!decoder.decode(m42))
+ return false;
+ double m43;
+ if (!decoder.decode(m43))
+ return false;
+ double m44;
+ if (!decoder.decode(m44))
+ return false;
+
+ transformationMatrix.setMatrix(m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44);
+ return true;
}
void ArgumentCoder<LinearTimingFunction>::encode(ArgumentEncoder& encoder, const LinearTimingFunction& timingFunction)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes