Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Issue 7768001: Add support for exporting IPC messages from component DLLs. (Closed)

Created:
9 years, 4 months ago by darin (slow to review)
Modified:
9 years, 4 months ago
Reviewers:
jam
CC:
chromium-reviews, joi+watch-content_chromium.org, jam, brettw-cc_chromium.org, darin-cc_chromium.org, Paweł Hajdan Jr.
Visibility:
Public.

Description

Add support for exporting IPC messages from component DLLs. This removes MessageWithTuple and MessageWithReply since it is not easy to export a class that inherits from a template specialization. The functionality of those classes are split now between new classes, MessageSchema and SyncMessageSchema, and being declared inline via macros. The key point is that we want to avoid inlining the constructor and Read functions for messages. That avoids code bloat since those functions contain all of the parameter serialization and deserialization code. Those are the functions that we really want to have contained with component DLLs. To export IPC messages from a DLL, it is necessary to #define IPC_MESSAGE_EXPORT above message declarations. You can see this in action here: http://codereview.chromium.org/7687005/diff/41012/ppapi/proxy/ppapi_messages.h Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=98491

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+348 lines, -328 lines) Patch
M chrome/common/chrome_content_client.cc View 4 chunks +8 lines, -2 lines 0 comments Download
M chrome/common/render_messages.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/renderer/blocked_plugin.cc View 4 chunks +9 lines, -13 lines 0 comments Download
M content/browser/renderer_host/p2p/socket_host_test_utils.h View 2 chunks +2 lines, -2 lines 0 comments Download
M content/common/file_system_messages.h View 1 chunk +1 line, -0 lines 0 comments Download
M content/common/quota_messages.h View 1 chunk +1 line, -0 lines 0 comments Download
M content/common/view_messages.h View 1 chunk +2 lines, -0 lines 0 comments Download
M content/content_common.gypi View 1 chunk +1 line, -0 lines 0 comments Download
M ipc/ipc_fuzzing_tests.cc View 4 chunks +23 lines, -44 lines 0 comments Download
M ipc/ipc_message_macros.h View 11 chunks +255 lines, -40 lines 0 comments Download
M ipc/ipc_message_utils.h View 2 chunks +17 lines, -145 lines 0 comments Download
M ipc/ipc_message_utils_impl.h View 2 chunks +9 lines, -18 lines 0 comments Download
M ipc/sync_socket_unittest.cc View 2 chunks +18 lines, -63 lines 0 comments Download
M webkit/glue/webkit_glue.gypi View 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 2 (0 generated)
darin (slow to review)
9 years, 4 months ago (2011-08-26 19:40:40 UTC) #1
jam
9 years, 4 months ago (2011-08-26 20:16:29 UTC) #2
lgtm

Powered by Google App Engine
This is Rietveld 408576698