Title: [141170] trunk/Source/WebKit2
Revision
141170
Author
[email protected]
Date
2013-01-29 15:15:17 -0800 (Tue, 29 Jan 2013)

Log Message

Get rid of MessageID::get()
https://bugs.webkit.org/show_bug.cgi?id=108235

Reviewed by Beth Dakin.

Just check for the message receiver name and message name explicitly instead.

* Platform/CoreIPC/MessageID.h:
(CoreIPC::MessageID::is):
* Shared/CoreIPCSupport/WebContextMessageKinds.h:
(WebContextLegacyMessage::messageReceiverName):
(WebContextLegacyMessage):
(WebContextLegacyMessage::postMessageMessageName):
(WebContextLegacyMessage::postSynchronousMessageMessageName):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (141169 => 141170)


--- trunk/Source/WebKit2/ChangeLog	2013-01-29 23:00:10 UTC (rev 141169)
+++ trunk/Source/WebKit2/ChangeLog	2013-01-29 23:15:17 UTC (rev 141170)
@@ -1,3 +1,23 @@
+2013-01-29  Anders Carlsson  <[email protected]>
+
+        Get rid of MessageID::get()
+        https://bugs.webkit.org/show_bug.cgi?id=108235
+
+        Reviewed by Beth Dakin.
+
+        Just check for the message receiver name and message name explicitly instead.
+
+        * Platform/CoreIPC/MessageID.h:
+        (CoreIPC::MessageID::is):
+        * Shared/CoreIPCSupport/WebContextMessageKinds.h:
+        (WebContextLegacyMessage::messageReceiverName):
+        (WebContextLegacyMessage):
+        (WebContextLegacyMessage::postMessageMessageName):
+        (WebContextLegacyMessage::postSynchronousMessageMessageName):
+        * UIProcess/WebContext.cpp:
+        (WebKit::WebContext::didReceiveMessage):
+        (WebKit::WebContext::didReceiveSyncMessage):
+
 2013-01-29  Kiran Muppala  <[email protected]>
 
         Add support for enabling process suppression in WebProcesses with no visible pages

Modified: trunk/Source/WebKit2/Platform/CoreIPC/MessageID.h (141169 => 141170)


--- trunk/Source/WebKit2/Platform/CoreIPC/MessageID.h	2013-01-29 23:00:10 UTC (rev 141169)
+++ trunk/Source/WebKit2/Platform/CoreIPC/MessageID.h	2013-01-29 23:15:17 UTC (rev 141170)
@@ -172,19 +172,11 @@
     {
     }
 
-    template <typename EnumType>
-    EnumType get() const
-    {
-        ASSERT(getClass() == MessageKindTraits<EnumType>::messageClass);
-        return static_cast<EnumType>(m_messageID & 0xffff);
-    }
-
     template <MessageClass K>
     bool is() const
     {
         return getClass() == K;
     }
-    
 
     static MessageID fromInt(unsigned i)
     {

Modified: trunk/Source/WebKit2/Shared/CoreIPCSupport/WebContextMessageKinds.h (141169 => 141170)


--- trunk/Source/WebKit2/Shared/CoreIPCSupport/WebContextMessageKinds.h	2013-01-29 23:00:10 UTC (rev 141169)
+++ trunk/Source/WebKit2/Shared/CoreIPCSupport/WebContextMessageKinds.h	2013-01-29 23:15:17 UTC (rev 141170)
@@ -38,15 +38,30 @@
     PostSynchronousMessage
 };
 
+inline CoreIPC::StringReference messageReceiverName()
+{
+    return CoreIPC::StringReference("WebContextLegacyMessage");
 }
 
+inline CoreIPC::StringReference postMessageMessageName()
+{
+    return CoreIPC::StringReference("PostMessage");
+}
+
+inline CoreIPC::StringReference postSynchronousMessageMessageName()
+{
+    return CoreIPC::StringReference("PostSynchronousMessage");
+}
+
+}
+
 namespace CoreIPC {
 
 template<> struct MessageKindTraits<WebContextLegacyMessage::Kind> {
     static const MessageClass messageClass = MessageClassWebContextLegacy;
     static StringReference messageReceiverName()
     {
-        return StringReference("WebContextLegacyMessage");
+        return WebContextLegacyMessage::messageReceiverName();
     }
 };
 

Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (141169 => 141170)


--- trunk/Source/WebKit2/UIProcess/WebContext.cpp	2013-01-29 23:00:10 UTC (rev 141169)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp	2013-01-29 23:15:17 UTC (rev 141170)
@@ -898,21 +898,18 @@
         return;
     }
 
-    switch (messageID.get<WebContextLegacyMessage::Kind>()) {
-        case WebContextLegacyMessage::PostMessage: {
-            String messageName;
-            RefPtr<APIObject> messageBody;
-            WebContextUserMessageDecoder messageBodyDecoder(messageBody, WebProcessProxy::fromConnection(connection));
-            if (!decoder.decode(messageName))
-                return;
-            if (!decoder.decode(messageBodyDecoder))
-                return;
-            
-            didReceiveMessageFromInjectedBundle(messageName, messageBody.get());
+    if (decoder.messageReceiverName() == WebContextLegacyMessage::messageReceiverName()
+        && decoder.messageName() == WebContextLegacyMessage::postMessageMessageName()) {
+        String messageName;
+        RefPtr<APIObject> messageBody;
+        WebContextUserMessageDecoder messageBodyDecoder(messageBody, WebProcessProxy::fromConnection(connection));
+        if (!decoder.decode(messageName))
             return;
-        }
-        case WebContextLegacyMessage::PostSynchronousMessage:
-            ASSERT_NOT_REACHED();
+        if (!decoder.decode(messageBodyDecoder))
+            return;
+
+        didReceiveMessageFromInjectedBundle(messageName, messageBody.get());
+        return;
     }
 
     ASSERT_NOT_REACHED();
@@ -925,26 +922,25 @@
         return;
     }
 
-    switch (messageID.get<WebContextLegacyMessage::Kind>()) {
-        case WebContextLegacyMessage::PostSynchronousMessage: {
-            // FIXME: We should probably encode something in the case that the arguments do not decode correctly.
+    if (decoder.messageReceiverName() == WebContextLegacyMessage::messageReceiverName()
+        && decoder.messageName() == WebContextLegacyMessage::postSynchronousMessageMessageName()) {
+        // FIXME: We should probably encode something in the case that the arguments do not decode correctly.
 
-            String messageName;
-            RefPtr<APIObject> messageBody;
-            WebContextUserMessageDecoder messageBodyDecoder(messageBody, WebProcessProxy::fromConnection(connection));
-            if (!decoder.decode(messageName))
-                return;
-            if (!decoder.decode(messageBodyDecoder))
-                return;
-
-            RefPtr<APIObject> returnData;
-            didReceiveSynchronousMessageFromInjectedBundle(messageName, messageBody.get(), returnData);
-            replyEncoder->encode(WebContextUserMessageEncoder(returnData.get()));
+        String messageName;
+        RefPtr<APIObject> messageBody;
+        WebContextUserMessageDecoder messageBodyDecoder(messageBody, WebProcessProxy::fromConnection(connection));
+        if (!decoder.decode(messageName))
             return;
-        }
-        case WebContextLegacyMessage::PostMessage:
-            ASSERT_NOT_REACHED();
+        if (!decoder.decode(messageBodyDecoder))
+            return;
+
+        RefPtr<APIObject> returnData;
+        didReceiveSynchronousMessageFromInjectedBundle(messageName, messageBody.get(), returnData);
+        replyEncoder->encode(WebContextUserMessageEncoder(returnData.get()));
+        return;
     }
+
+    ASSERT_NOT_REACHED();
 }
 
 void WebContext::setEnhancedAccessibility(bool flag)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to