Title: [88870] trunk/Source/WebKit2
Revision
88870
Author
[email protected]
Date
2011-06-14 16:25:45 -0700 (Tue, 14 Jun 2011)

Log Message

2011-06-14  Anders Carlsson  <[email protected]>

        Reviewed by Sam Weinig.

        Start using the new encode/decode functions
        https://bugs.webkit.org/show_bug.cgi?id=62676

        * Platform/CoreIPC/DataReference.cpp:
        (CoreIPC::DataReference::encode):
        Use encodeVariableLengthByteArray.

        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageEncoder::baseEncode):
        Use encodeVariableLengthByteArray and the new dataReference accessors.

        (WebKit::UserMessageDecoder::baseDecode):
        Use decodeVariableLengthByteArray.
 
        * Shared/WebData.h:
        (WebKit::WebData::dataReference):
        Return a reference to the data.

        * Shared/WebSerializedScriptValue.h:
        (WebKit::WebSerializedScriptValue::dataReference):
        Ditto.

        * Shared/cf/ArgumentCodersCF.cpp:
        (CoreIPC::encode):
        Use encodeVariableLengthByteArray.

        * Shared/mac/SandboxExtensionMac.mm:
        (WebKit::SandboxExtension::Handle::encode):
        Use encodeVariableLengthByteArray.

        * WebProcess/WebPage/DecoderAdapter.cpp:
        (WebKit::DecoderAdapter::decodeBytes):
        Use decodeVariableLengthByteArray.

        * WebProcess/WebPage/EncoderAdapter.cpp:
        (WebKit::EncoderAdapter::dataReference):
        Rename data() to dataReference() to indicate that it returns a reference to the data.

        (WebKit::EncoderAdapter::encodeBytes):
        Use encodeVariableLengthByteArray.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (88869 => 88870)


--- trunk/Source/WebKit2/ChangeLog	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/ChangeLog	2011-06-14 23:25:45 UTC (rev 88870)
@@ -2,6 +2,51 @@
 
         Reviewed by Sam Weinig.
 
+        Start using the new encode/decode functions
+        https://bugs.webkit.org/show_bug.cgi?id=62676
+
+        * Platform/CoreIPC/DataReference.cpp:
+        (CoreIPC::DataReference::encode):
+        Use encodeVariableLengthByteArray.
+
+        * Shared/UserMessageCoders.h:
+        (WebKit::UserMessageEncoder::baseEncode):
+        Use encodeVariableLengthByteArray and the new dataReference accessors.
+
+        (WebKit::UserMessageDecoder::baseDecode):
+        Use decodeVariableLengthByteArray.
+ 
+        * Shared/WebData.h:
+        (WebKit::WebData::dataReference):
+        Return a reference to the data.
+
+        * Shared/WebSerializedScriptValue.h:
+        (WebKit::WebSerializedScriptValue::dataReference):
+        Ditto.
+
+        * Shared/cf/ArgumentCodersCF.cpp:
+        (CoreIPC::encode):
+        Use encodeVariableLengthByteArray.
+
+        * Shared/mac/SandboxExtensionMac.mm:
+        (WebKit::SandboxExtension::Handle::encode):
+        Use encodeVariableLengthByteArray.
+
+        * WebProcess/WebPage/DecoderAdapter.cpp:
+        (WebKit::DecoderAdapter::decodeBytes):
+        Use decodeVariableLengthByteArray.
+
+        * WebProcess/WebPage/EncoderAdapter.cpp:
+        (WebKit::EncoderAdapter::dataReference):
+        Rename data() to dataReference() to indicate that it returns a reference to the data.
+
+        (WebKit::EncoderAdapter::encodeBytes):
+        Use encodeVariableLengthByteArray.
+
+2011-06-14  Anders Carlsson  <[email protected]>
+
+        Reviewed by Sam Weinig.
+
         Add encodeVariableLengthByteArray and decodeVariableLengthByteArray
         https://bugs.webkit.org/show_bug.cgi?id=62674
 

Modified: trunk/Source/WebKit2/Platform/CoreIPC/DataReference.cpp (88869 => 88870)


--- trunk/Source/WebKit2/Platform/CoreIPC/DataReference.cpp	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/Platform/CoreIPC/DataReference.cpp	2011-06-14 23:25:45 UTC (rev 88870)
@@ -33,7 +33,7 @@
 
 void DataReference::encode(ArgumentEncoder* encoder) const
 {
-    encoder->encodeBytes(m_data, m_size);
+    encoder->encodeVariableLengthByteArray(*this);
 }
 
 bool DataReference::decode(ArgumentDecoder* decoder, DataReference& dataReference)

Modified: trunk/Source/WebKit2/Shared/UserMessageCoders.h (88869 => 88870)


--- trunk/Source/WebKit2/Shared/UserMessageCoders.h	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/Shared/UserMessageCoders.h	2011-06-14 23:25:45 UTC (rev 88870)
@@ -28,6 +28,7 @@
 
 #include "ArgumentDecoder.h"
 #include "ArgumentEncoder.h"
+#include "DataReference.h"
 #include "ImmutableArray.h"
 #include "ImmutableDictionary.h"
 #include "ShareableBitmap.h"
@@ -97,7 +98,7 @@
         }
         case APIObject::TypeSerializedScriptValue: {
             WebSerializedScriptValue* scriptValue = static_cast<WebSerializedScriptValue*>(m_root);
-            encoder->encodeBytes(scriptValue->data().data(), scriptValue->data().size());
+            encoder->encodeVariableLengthByteArray(scriptValue->dataReference());
             return true;
         }
         case APIObject::TypeDouble: {
@@ -143,7 +144,7 @@
         }
         case APIObject::TypeData: {
             WebData* data = ""
-            encoder->encodeBytes(data->bytes(), data->size());
+            encoder->encodeVariableLengthByteArray(data->dataReference());
             return true;
         }
         case APIObject::TypeCertificateInfo: {
@@ -243,10 +244,12 @@
             break;
         }
         case APIObject::TypeSerializedScriptValue: {
-            Vector<uint8_t> buffer;
-            if (!decoder->decodeBytes(buffer))
+            CoreIPC::DataReference dataReference;
+            if (!decoder->decodeVariableLengthByteArray(dataReference))
                 return false;
-            coder.m_root = WebSerializedScriptValue::adopt(buffer);
+            
+            Vector<uint8_t> vector = dataReference.vector();
+            coder.m_root = WebSerializedScriptValue::adopt(vector);
             break;
         }
         case APIObject::TypeDouble: {
@@ -300,10 +303,10 @@
             return true;
         }
         case APIObject::TypeData: {
-            Vector<uint8_t> buffer;
-            if (!decoder->decodeBytes(buffer))
+            CoreIPC::DataReference dataReference;
+            if (!decoder->decodeVariableLengthByteArray(dataReference))
                 return false;
-            coder.m_root = WebData::create(buffer);
+            coder.m_root = WebData::create(dataReference.data(), dataReference.size());
             break;
         }
         case APIObject::TypeCertificateInfo: {

Modified: trunk/Source/WebKit2/Shared/WebData.h (88869 => 88870)


--- trunk/Source/WebKit2/Shared/WebData.h	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/Shared/WebData.h	2011-06-14 23:25:45 UTC (rev 88870)
@@ -27,6 +27,7 @@
 #define WebData_h
 
 #include "APIObject.h"
+#include "DataReference.h"
 #include <wtf/Forward.h>
 #include <wtf/Vector.h>
 
@@ -70,6 +71,8 @@
     const unsigned char* bytes() const { return m_bytes; }
     size_t size() const { return m_size; }
 
+    CoreIPC::DataReference dataReference() const { return CoreIPC::DataReference(m_bytes, m_size); }
+
 private:
     WebData(const unsigned char* bytes, size_t size, FreeDataFunction freeDataFunction, const void* context)
         : m_bytes(bytes)

Modified: trunk/Source/WebKit2/Shared/WebSerializedScriptValue.h (88869 => 88870)


--- trunk/Source/WebKit2/Shared/WebSerializedScriptValue.h	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/Shared/WebSerializedScriptValue.h	2011-06-14 23:25:45 UTC (rev 88870)
@@ -28,6 +28,7 @@
 
 #include "APIObject.h"
 
+#include "DataReference.h"
 #include <WebCore/SerializedScriptValue.h>
 #include <wtf/RefPtr.h>
 
@@ -59,9 +60,9 @@
     {
         return m_serializedScriptValue->deserialize(context, exception);
     }
-    
-    const Vector<uint8_t>& data() { return m_serializedScriptValue->data(); }
 
+    CoreIPC::DataReference dataReference() const { return m_serializedScriptValue->data(); }
+
     void* internalRepresentation() { return m_serializedScriptValue.get(); }
 
 private:

Modified: trunk/Source/WebKit2/Shared/cf/ArgumentCodersCF.cpp (88869 => 88870)


--- trunk/Source/WebKit2/Shared/cf/ArgumentCodersCF.cpp	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/Shared/cf/ArgumentCodersCF.cpp	2011-06-14 23:25:45 UTC (rev 88870)
@@ -291,7 +291,7 @@
     CFIndex length = CFDataGetLength(data);
     const UInt8* bytePtr = CFDataGetBytePtr(data);
 
-    encoder->encodeBytes(bytePtr, length);
+    encoder->encodeVariableLengthByteArray(CoreIPC::DataReference(bytePtr, length));
 }
 
 bool decode(ArgumentDecoder* decoder, RetainPtr<CFDataRef>& result)
@@ -376,7 +376,7 @@
     ASSERT_UNUSED(result, result);
 
     encoder->encodeEnum(numberType);
-    encoder->encodeBytes(buffer.data(), buffer.size());
+    encoder->encodeVariableLengthByteArray(buffer);
 }
 
 static size_t sizeForNumberType(CFNumberType numberType)
@@ -464,7 +464,7 @@
     ASSERT(numConvertedBytes == length);
 
     encoder->encodeEnum(encoding);
-    encoder->encodeBytes(buffer.data(), bufferLength);
+    encoder->encodeVariableLengthByteArray(buffer);
 }
 
 bool decode(ArgumentDecoder* decoder, RetainPtr<CFStringRef>& result)

Modified: trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm (88869 => 88870)


--- trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/Shared/mac/SandboxExtensionMac.mm	2011-06-14 23:25:45 UTC (rev 88870)
@@ -56,7 +56,7 @@
 void SandboxExtension::Handle::encode(CoreIPC::ArgumentEncoder* encoder) const
 {
     if (!m_sandboxExtension) {
-        encoder->encodeBytes(0, 0);
+        encoder->encodeVariableLengthByteArray(CoreIPC::DataReference());
         return;
     }
 
@@ -64,7 +64,7 @@
     const char *serializedFormat = WKSandboxExtensionGetSerializedFormat(m_sandboxExtension, &length);
     ASSERT(serializedFormat);
 
-    encoder->encodeBytes(reinterpret_cast<const uint8_t*>(serializedFormat), length);
+    encoder->encodeVariableLengthByteArray(CoreIPC::DataReference(reinterpret_cast<const uint8_t*>(serializedFormat), length));
 
     // Encoding will destroy the sandbox extension locally.
     WKSandboxExtensionDestroy(m_sandboxExtension);

Modified: trunk/Source/WebKit2/WebProcess/WebPage/DecoderAdapter.cpp (88869 => 88870)


--- trunk/Source/WebKit2/WebProcess/WebPage/DecoderAdapter.cpp	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/WebProcess/WebPage/DecoderAdapter.cpp	2011-06-14 23:25:45 UTC (rev 88870)
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "DecoderAdapter.h"
 
+#include "DataReference.h"
 #include "WebCoreArgumentCoders.h"
 
 namespace WebKit {
@@ -37,7 +38,12 @@
 
 bool DecoderAdapter::decodeBytes(Vector<uint8_t>& bytes)
 {
-    return m_decoder.decodeBytes(bytes);
+    CoreIPC::DataReference dataReference;
+    if (!m_decoder.decodeVariableLengthByteArray(dataReference))
+        return false;
+
+    bytes = dataReference.vector();
+    return true;
 }
 
 bool DecoderAdapter::decodeBool(bool& value)

Modified: trunk/Source/WebKit2/WebProcess/WebPage/EncoderAdapter.cpp (88869 => 88870)


--- trunk/Source/WebKit2/WebProcess/WebPage/EncoderAdapter.cpp	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/WebProcess/WebPage/EncoderAdapter.cpp	2011-06-14 23:25:45 UTC (rev 88870)
@@ -36,14 +36,14 @@
 {
 }
 
-CoreIPC::DataReference EncoderAdapter::data() const
+CoreIPC::DataReference EncoderAdapter::dataReference() const
 {
     return CoreIPC::DataReference(m_encoder->buffer(), m_encoder->bufferSize());
 }
 
 void EncoderAdapter::encodeBytes(const uint8_t* bytes, size_t size)
 {
-    m_encoder->encodeBytes(bytes, size);
+    m_encoder->encodeVariableLengthByteArray(CoreIPC::DataReference(bytes, size));
 }
 
 void EncoderAdapter::encodeBool(bool value)

Modified: trunk/Source/WebKit2/WebProcess/WebPage/EncoderAdapter.h (88869 => 88870)


--- trunk/Source/WebKit2/WebProcess/WebPage/EncoderAdapter.h	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/WebProcess/WebPage/EncoderAdapter.h	2011-06-14 23:25:45 UTC (rev 88870)
@@ -41,7 +41,7 @@
 public:
     EncoderAdapter();
 
-    CoreIPC::DataReference data() const;
+    CoreIPC::DataReference dataReference() const;
 
 private:
     virtual void encodeBytes(const uint8_t*, size_t);

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp (88869 => 88870)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp	2011-06-14 23:13:03 UTC (rev 88869)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp	2011-06-14 23:25:45 UTC (rev 88870)
@@ -88,8 +88,7 @@
     EncoderAdapter encoder;
     item->encodeBackForwardTree(encoder);
 
-    WebProcess::shared().connection()->send(Messages::WebProcessProxy::AddBackForwardItem(itemID,
-        item->originalURLString(), item->urlString(), item->title(), encoder.data()), 0);
+    WebProcess::shared().connection()->send(Messages::WebProcessProxy::AddBackForwardItem(itemID, item->originalURLString(), item->urlString(), item->title(), encoder.dataReference()), 0);
 }
 
 void WebBackForwardListProxy::addItemFromUIProcess(uint64_t itemID, PassRefPtr<WebCore::HistoryItem> prpItem)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to