Title: [177713] trunk/Source/WebKit2
Revision
177713
Author
[email protected]
Date
2014-12-23 17:20:33 -0800 (Tue, 23 Dec 2014)

Log Message

Handle WKTypeRefWrapper when converting object graphs
https://bugs.webkit.org/show_bug.cgi?id=139927

Reviewed by Tim Horton.

* UIProcess/Cocoa/WebProcessProxyCocoa.mm:
(WebKit::WebProcessProxy::transformHandlesToObjects):
(WebKit::WebProcessProxy::transformObjectsToHandles):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::transformHandlesToObjects):
(WebKit::WebProcess::transformObjectsToHandles):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (177712 => 177713)


--- trunk/Source/WebKit2/ChangeLog	2014-12-24 01:14:01 UTC (rev 177712)
+++ trunk/Source/WebKit2/ChangeLog	2014-12-24 01:20:33 UTC (rev 177713)
@@ -1,3 +1,17 @@
+2014-12-23  Anders Carlsson  <[email protected]>
+
+        Handle WKTypeRefWrapper when converting object graphs
+        https://bugs.webkit.org/show_bug.cgi?id=139927
+
+        Reviewed by Tim Horton.
+
+        * UIProcess/Cocoa/WebProcessProxyCocoa.mm:
+        (WebKit::WebProcessProxy::transformHandlesToObjects):
+        (WebKit::WebProcessProxy::transformObjectsToHandles):
+        * WebProcess/cocoa/WebProcessCocoa.mm:
+        (WebKit::WebProcess::transformHandlesToObjects):
+        (WebKit::WebProcess::transformObjectsToHandles):
+
 2014-12-23  Chris Dumez  <[email protected]>
 
         [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources

Modified: trunk/Source/WebKit2/UIProcess/Cocoa/WebProcessProxyCocoa.mm (177712 => 177713)


--- trunk/Source/WebKit2/UIProcess/Cocoa/WebProcessProxyCocoa.mm	2014-12-24 01:14:01 UTC (rev 177712)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/WebProcessProxyCocoa.mm	2014-12-24 01:20:33 UTC (rev 177713)
@@ -29,6 +29,7 @@
 #import "ObjCObjectGraph.h"
 #import "WKBrowsingContextControllerInternal.h"
 #import "WKBrowsingContextHandleInternal.h"
+#import "WKTypeRefWrapper.h"
 
 namespace WebKit {
 
@@ -45,6 +46,9 @@
 #if WK_API_ENABLED
             if (dynamic_objc_cast<WKBrowsingContextHandle>(object))
                 return true;
+
+            if (dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return true;
 #endif
             return false;
         }
@@ -58,6 +62,10 @@
 
                 return [NSNull null];
             }
+
+            if (auto* wrapper = dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return adoptNS([[WKTypeRefWrapper alloc] initWithObject:toAPI(m_webProcessProxy.transformHandlesToObjects(toImpl(wrapper.object)).get())]);
+
 #endif
             return object;
         }
@@ -76,6 +84,9 @@
 #if WK_API_ENABLED
             if (dynamic_objc_cast<WKBrowsingContextController>(object))
                 return true;
+
+            if (dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return true;
 #endif
             return false;
         }
@@ -85,7 +96,12 @@
 #if WK_API_ENABLED
             if (auto* controller = dynamic_objc_cast<WKBrowsingContextController>(object))
                 return controller.handle;
+
+            if (auto* wrapper = dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return adoptNS([[WKTypeRefWrapper alloc] initWithObject:toAPI(transformObjectsToHandles(toImpl(wrapper.object)).get())]);
+
 #endif
+
             return object;
         }
     };

Modified: trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm (177712 => 177713)


--- trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm	2014-12-24 01:14:01 UTC (rev 177712)
+++ trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm	2014-12-24 01:20:33 UTC (rev 177713)
@@ -33,6 +33,7 @@
 #import "SecItemShim.h"
 #import "WKBrowsingContextHandleInternal.h"
 #import "WKFullKeyboardAccessWatcher.h"
+#import "WKTypeRefWrapper.h"
 #import "WKWebProcessPlugInBrowserContextControllerInternal.h"
 #import "WebFrame.h"
 #import "WebInspector.h"
@@ -306,6 +307,9 @@
 #if WK_API_ENABLED
             if (dynamic_objc_cast<WKBrowsingContextHandle>(object))
                 return true;
+
+            if (dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return true;
 #endif
             return false;
         }
@@ -319,6 +323,9 @@
 
                 return [NSNull null];
             }
+
+            if (auto* wrapper = dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return adoptNS([[WKTypeRefWrapper alloc] initWithObject:toAPI(m_webProcess.transformHandlesToObjects(toImpl(wrapper.object)).get())]);
 #endif
             return object;
         }
@@ -337,7 +344,11 @@
 #if WK_API_ENABLED
             if (dynamic_objc_cast<WKWebProcessPlugInBrowserContextController>(object))
                 return true;
+
+            if (dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return true;
 #endif
+
             return false;
         }
 
@@ -346,6 +357,9 @@
 #if WK_API_ENABLED
             if (auto* controller = dynamic_objc_cast<WKWebProcessPlugInBrowserContextController>(object))
                 return controller.handle;
+
+            if (auto* wrapper = dynamic_objc_cast<WKTypeRefWrapper>(object))
+                return adoptNS([[WKTypeRefWrapper alloc] initWithObject:toAPI(transformObjectsToHandles(toImpl(wrapper.object)).get())]);
 #endif
             return object;
         }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to