[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.16-1409-g5afdf4d
hyatt at apple.com
hyatt at apple.com
Thu Dec 3 13:41:59 UTC 2009
The following commit has been merged in the webkit-1.1 branch:
commit 4288e538592e10fe4109d7961f0d06aaece0885a
Author: hyatt at apple.com <hyatt at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Nov 21 02:54:23 2009 +0000
Change WebSerializedJSValue on Windows to have a zero-argument createInstance call. Move the
serialization into a separate serialize() function that can be called after the object has been
created.
Reviewed by Jon Honeycutt.
Fix a typo in serialize() caused when fixing build bustage (put a ! back in).
* Interfaces/IWebSerializedJSValue.idl:
* WebSerializedJSValue.cpp:
(WebSerializedJSValue::WebSerializedJSValue):
(WebSerializedJSValue::createInstance):
(WebSerializedJSValue::serialize):
(WebSerializedJSValue::deserialize):
* WebSerializedJSValue.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog
index 869215f..89b46dc 100644
--- a/WebKit/win/ChangeLog
+++ b/WebKit/win/ChangeLog
@@ -1,3 +1,21 @@
+2009-11-20 Dave Hyatt <hyatt at apple.com>
+
+ Reviewed by Jon Honeycutt.
+
+ Change WebSerializedJSValue on Windows to have a zero-argument createInstance call. Move the
+ serialization into a separate serialize() function that can be called after the object has been
+ created.
+
+ Fix a typo in serialize() caused when fixing build bustage (put a ! back in).
+
+ * Interfaces/IWebSerializedJSValue.idl:
+ * WebSerializedJSValue.cpp:
+ (WebSerializedJSValue::WebSerializedJSValue):
+ (WebSerializedJSValue::createInstance):
+ (WebSerializedJSValue::serialize):
+ (WebSerializedJSValue::deserialize):
+ * WebSerializedJSValue.h:
+
2009-11-20 Brian Weinstein <bweinstein at apple.com>
Reviewed by Dave Hyatt.
diff --git a/WebKit/win/Interfaces/IWebSerializedJSValue.idl b/WebKit/win/Interfaces/IWebSerializedJSValue.idl
index 16bc924..c59a0c5 100644
--- a/WebKit/win/Interfaces/IWebSerializedJSValue.idl
+++ b/WebKit/win/Interfaces/IWebSerializedJSValue.idl
@@ -35,5 +35,6 @@ import "JavaScriptCoreAPITypes.idl";
pointer_default(unique)
]
interface IWebSerializedJSValue : IUnknown {
+ [local] HRESULT serialize([in] JSContextRef context, [in] JSValueRef value, [out, retval] JSException* exception);
[local] HRESULT deserialize([in] JSContextRef context, [out, retval] JSValueRef* value);
}
diff --git a/WebKit/win/WebSerializedJSValue.cpp b/WebKit/win/WebSerializedJSValue.cpp
index e1ecdec..307df90 100644
--- a/WebKit/win/WebSerializedJSValue.cpp
+++ b/WebKit/win/WebSerializedJSValue.cpp
@@ -30,15 +30,9 @@
using namespace WebCore;
-WebSerializedJSValue::WebSerializedJSValue(JSContextRef sourceContext, JSValueRef value, JSValueRef* exception)
+WebSerializedJSValue::WebSerializedJSValue()
: m_refCount(0)
{
- ASSERT_ARG(value, value);
- ASSERT_ARG(sourceContext, sourceContext);
-
- if (value && sourceContext)
- m_value = SerializedScriptValue::create(sourceContext, value, exception);
-
++gClassCount;
gClassNameCount.add("WebSerializedJSValue");
}
@@ -49,9 +43,9 @@ WebSerializedJSValue::~WebSerializedJSValue()
gClassNameCount.remove("WebSerializedJSValue");
}
-COMPtr<WebSerializedJSValue> WebSerializedJSValue::createInstance(JSContextRef sourceContext, JSValueRef value, JSValueRef* exception)
+COMPtr<WebSerializedJSValue> WebSerializedJSValue::createInstance()
{
- return new WebSerializedJSValue(sourceContext, value, exception);
+ return new WebSerializedJSValue();
}
ULONG WebSerializedJSValue::AddRef()
@@ -86,12 +80,25 @@ HRESULT WebSerializedJSValue::QueryInterface(REFIID riid, void** ppvObject)
return S_OK;
}
+HRESULT WebSerializedJSValue::serialize(JSContextRef sourceContext, JSValueRef value, JSValueRef* exception)
+{
+ ASSERT_ARG(value, value);
+ ASSERT_ARG(sourceContext, sourceContext);
+
+ if (!value || !sourceContext)
+ return E_POINTER;
+
+ m_value = SerializedScriptValue::create(sourceContext, value, exception);
+
+ return S_OK;
+}
+
HRESULT WebSerializedJSValue::deserialize(JSContextRef destinationContext, JSValueRef* outValue)
{
if (!outValue)
return E_POINTER;
- if (m_value)
+ if (!m_value)
*outValue = 0;
else
*outValue = m_value->deserialize(destinationContext, 0);
diff --git a/WebKit/win/WebSerializedJSValue.h b/WebKit/win/WebSerializedJSValue.h
index 2a21d57..d39323c 100644
--- a/WebKit/win/WebSerializedJSValue.h
+++ b/WebKit/win/WebSerializedJSValue.h
@@ -36,15 +36,16 @@ namespace WebCore {
class WebSerializedJSValue : public Noncopyable, public IWebSerializedJSValue {
public:
- static COMPtr<WebSerializedJSValue> createInstance(JSContextRef, JSValueRef value, JSValueRef* exception);
+ static COMPtr<WebSerializedJSValue> createInstance();
virtual ULONG STDMETHODCALLTYPE AddRef();
virtual ULONG STDMETHODCALLTYPE Release();
+ virtual HRESULT STDMETHODCALLTYPE serialize(JSContextRef, JSValueRef value, JSValueRef* exception);
virtual HRESULT STDMETHODCALLTYPE deserialize(JSContextRef, JSValueRef* result);
private:
- WebSerializedJSValue(JSContextRef, JSValueRef, JSValueRef*);
+ WebSerializedJSValue();
~WebSerializedJSValue();
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, void** ppvObject);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list