summaryrefslogtreecommitdiff
path: root/Source/WebKit2/Scripts/webkit2/messages.py
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2012-10-16 14:56:46 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2012-10-16 14:57:30 +0200
commitb297e0fa5c217c9467033b7c8b46891a52870120 (patch)
tree43fc14689295e9e64f2719d05aad94e3049f6cd7 /Source/WebKit2/Scripts/webkit2/messages.py
parent69d517dbfa69903d8593cc1737f0474b21e3251e (diff)
downloadqtwebkit-b297e0fa5c217c9467033b7c8b46891a52870120.tar.gz
Revert "Imported WebKit commit 0dc6cd75e1d4836eaffbb520be96fac4847cc9d2 (http://svn.webkit.org/repository/webkit/trunk@131300)"
This reverts commit 5466563f4b5b6b86523e3f89bb7f77e5b5270c78. Caused OOM issues on some CI machines :(
Diffstat (limited to 'Source/WebKit2/Scripts/webkit2/messages.py')
-rw-r--r--Source/WebKit2/Scripts/webkit2/messages.py17
1 files changed, 12 insertions, 5 deletions
diff --git a/Source/WebKit2/Scripts/webkit2/messages.py b/Source/WebKit2/Scripts/webkit2/messages.py
index e15dc1b15..bd9dc9a28 100644
--- a/Source/WebKit2/Scripts/webkit2/messages.py
+++ b/Source/WebKit2/Scripts/webkit2/messages.py
@@ -26,7 +26,6 @@ from webkit2 import parser
DELAYED_ATTRIBUTE = 'Delayed'
DISPATCH_ON_CONNECTION_QUEUE_ATTRIBUTE = 'DispatchOnConnectionQueue'
-VARIADIC_ATTRIBUTE = 'Variadic'
_license_header = """/*
* Copyright (C) 2010 Apple Inc. All rights reserved.
@@ -72,6 +71,15 @@ def messages_to_kind_enum(messages):
result.append('};\n')
return ''.join(result)
+
+def message_is_variadic(message):
+ variadic_types = frozenset([
+ 'WebKit::InjectedBundleUserMessageEncoder',
+ 'WebKit::WebContextUserMessageEncoder',
+ ])
+
+ return len(message.parameters) and message.parameters[-1].type in variadic_types
+
def function_parameter_type(type):
# Don't use references for built-in types.
builtin_types = frozenset([
@@ -114,7 +122,7 @@ def reply_type(message):
def decode_type(message):
- if message.has_attribute(VARIADIC_ATTRIBUTE):
+ if message_is_variadic(message):
return arguments_type(message.parameters[:-1], reply_parameter_type)
return base_class(message)
@@ -189,7 +197,6 @@ def struct_or_class(namespace, type):
'WebKit::DictionaryPopupInfo',
'WebKit::DrawingAreaInfo',
'WebKit::EditorState',
- 'WebKit::NetworkProcessCreationParameters',
'WebKit::PlatformPopupMenuData',
'WebKit::PluginCreationParameters',
'WebKit::PluginProcessCreationParameters',
@@ -306,7 +313,7 @@ def handler_function(receiver, message):
def async_case_statement(receiver, message):
dispatch_function_args = ['arguments', 'this', '&%s' % handler_function(receiver, message)]
dispatch_function = 'handleMessage'
- if message.has_attribute(VARIADIC_ATTRIBUTE):
+ if message_is_variadic(message):
dispatch_function += 'Variadic'
if message.has_attribute(DISPATCH_ON_CONNECTION_QUEUE_ATTRIBUTE):
dispatch_function += 'OnConnectionQueue'
@@ -326,7 +333,7 @@ def sync_case_statement(receiver, message):
dispatch_function = 'handleMessage'
if message.has_attribute(DELAYED_ATTRIBUTE):
dispatch_function += 'Delayed'
- if message.has_attribute(VARIADIC_ATTRIBUTE):
+ if message_is_variadic(message):
dispatch_function += 'Variadic'
result = []