summaryrefslogtreecommitdiffstats
path: root/ipc/ipc_message_macros.h
Commit message (Collapse)AuthorAgeFilesLines
* Adding tracking to verify the theory that jankiness of ↵vadimt2014-09-251-4/+4
| | | | | | | | | | ExtensionMessageFilter::OnExtensionAddListener is because of the observer invocation. BUG=401560, 417106 Review URL: https://codereview.chromium.org/600213002 Cr-Commit-Position: refs/heads/master@{#296804}
* Make IPC macros work with -Wunused-local-typedefs.thakis@chromium.org2014-07-291-6/+6
| | | | | | | | | | | | | | | The typedef can be used by the IPC_MESSAGE_HANDLER macro, but that macro isn't always used when IPC_BEGIN_MESSAGE_MAP is used. The alternatives are to either pass ClassName::HanderFunction to IPC_MESSAGE_HANDLER (like what one has to do to use IPC_MESSAGE_FORWARD), or to mark the typedef in IPC_BEGIN_MESSAGE_MAP as ALLOW_UNUSED so that it isn't warned on. BUG=321833 TBR=brettw Review URL: https://codereview.chromium.org/422083002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@286115 0039d316-1c4b-4281-b951-d872f2087c98
* Fix "inlcude" typo in comments.tsepez@chromium.org2014-06-181-2/+2
| | | | | | | | NOTRY=true Review URL: https://codereview.chromium.org/343473006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278113 0039d316-1c4b-4281-b951-d872f2087c98
* Remove IPC_BEGIN_MESSAGE_MAP_EX macro since r270839 made all bad IPCs kill ↵jam@chromium.org2014-05-161-31/+8
| | | | | | | | | | their child processes. R=avi@chromium.org Review URL: https://codereview.chromium.org/292443004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271096 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure that any IPC sent from a child process that couldn't be deserialized ↵jam@chromium.org2014-05-151-0/+4
| | | | | | | | | | | | causes that process to be killed. Today we do this only for a subset of IPCs and not all process types. R=jar@chromium.org, tsepez@chromium.org Review URL: https://codereview.chromium.org/283313002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270839 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify IPC_BEGIN_MESSAGE_MAP_WITH_PARAM macro by using decltype keyword.jam@chromium.org2014-05-141-9/+19
| | | | | | | | | BUG=304341 R=avi@chromium.org Review URL: https://codereview.chromium.org/286863002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270479 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for passing an arbitrary parameter to an IPC message handler. ↵jam@chromium.org2014-05-131-76/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The motivation is for WebContentsObserver to pass RenderFrameHost* to message handlers easily. As an example, an observer would look like this: bool FooWebContentsObserver::OnMessageReceived( const IPC::Message& message, RenderFrameHost* render_frame_host) { IPC_BEGIN_MESSAGE_MAP_WITH_PARAM(FooWebContentsObserver, message, RenderFrameHost, render_frame_host) IPC_MESSAGE_HANDLER(FooHostMsg_Bar, OnBar) . . . void FooWebContentsObserver::OnBar(RenderFrameHost* render_frame_host, ... You can of course still have dispatchers without the extra parameter as before. This is generalizing the existing code that allows an IPC message handler to have a "const IPC::Message& message) first parameter to get access to the IPC. Sync IPCs don't support this yet. It's a lot more work because for them we conveniently reuse tuple's DispatchToMethod. This isn't urgent yet, since sync IPCs aren't dispatched on the UI thread for the most part because of NPAPI and Windows, so punting on this for now. BUG=304341 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/283623002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270237 0039d316-1c4b-4281-b951-d872f2087c98
* more spell checkingthakis@chromium.org2013-11-051-1/+1
| | | | | | | | | BUG=none NOTRY=true Review URL: https://codereview.chromium.org/57463003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232902 0039d316-1c4b-4281-b951-d872f2087c98
* Revert https://src.chromium.org/viewvc/chrome?view=rev&revision=231330bbudge@chromium.org2013-11-041-6/+6
| | | | | | | | | | This is a speculative revert to see if it's the cause of hanging renderers. BUG=313112 Review URL: https://codereview.chromium.org/57783006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232819 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused IPC::Message priority.bbudge@chromium.org2013-10-281-6/+6
| | | | | | | | | | | | | | | | | Removes the PriorityValue enum and field from IPC::Message. This doesn't appear to be used anywhere. Changes the data message ctor to take a size_t data_len parameter. This works around an ambiguity problem with the main ctor, which has a similar signature and would require lots of futzing with our test code to fix. To make this work, the matching Pickle constructor is also changed to take a size_t data_len parameter. BUG=194304 Review URL: https://codereview.chromium.org/35643005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231330 0039d316-1c4b-4281-b951-d872f2087c98
* IPC_END_MESSAGE_MAP: Made unreachable DCHECK reachable.mgiuca@chromium.org2013-10-231-1/+1
| | | | | | | | BUG=309505 Review URL: https://codereview.chromium.org/31623002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230555 0039d316-1c4b-4281-b951-d872f2087c98
* Add newline at end of file.thakis@chromium.org2013-10-121-1/+1
| | | | | | | | | BUG=290204 TBR=hans@chromium.org Review URL: https://codereview.chromium.org/27094002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228321 0039d316-1c4b-4281-b951-d872f2087c98
* Workaround for VS2013 compiler bug in ipc_message_macros.hzturner@chromium.org2013-10-121-0/+7
| | | | | | | | BUG=288948 Review URL: https://codereview.chromium.org/23455048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228298 0039d316-1c4b-4281-b951-d872f2087c98
* Implement off-the-wire validation scheme for emum types.tsepez@chromium.org2013-06-041-4/+17
| | | | | | | | | | | | | This CL adds explicit IPC macros that can be used to ensure that the values being read off the wire are legitimate for the enum type. BUG=176110 R=jam@chromium.org Review URL: https://chromiumcodereview.appspot.com/15841011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203892 0039d316-1c4b-4281-b951-d872f2087c98
* Split IPC logging between content and chrome.jochen@chromium.org2012-10-301-14/+4
| | | | | | | | | | | | | I add a new content API to register IPC message loggers, and modify the IPC message macros to not directly create the g_log_function_mapping. That allows for multiple files generating IPC loggers. Also, it gets rid of the ctor/dtor for the g_log_function_mapping. BUG=101600,111316,155765 Review URL: https://codereview.chromium.org/11347012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164861 0039d316-1c4b-4281-b951-d872f2087c98
* Move IPCMessageStart enum into it own file with security team OWNERS, so ↵tsepez@chromium.org2012-10-231-1/+1
| | | | | | | | that new message files can't be added to chromium without triggering a security review. Review URL: https://chromiumcodereview.appspot.com/11048038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163713 0039d316-1c4b-4281-b951-d872f2087c98
* Make Sync Messages with lots of parameters and no return workfsamuel@chromium.org2012-08-011-2/+2
| | | | | | | | | | | There are a couple of broken macros that will be used by the browser plugin. BUG=none TEST=compiles (+ local testing with browser plugin) Review URL: https://chromiumcodereview.appspot.com/10829084 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149466 0039d316-1c4b-4281-b951-d872f2087c98
* Remove IPC macros for "5_4" messages.brettw@chromium.org2012-07-131-6/+0
| | | | | | | | | | | Nobody uses these. Since we don't have tuples for 9 elements, attempts to use them will fail. TEST=it compiles BUG=none Review URL: https://chromiumcodereview.appspot.com/10735092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146609 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the rest of #pragma once in one big CL.ajwong@chromium.org2012-07-111-1/+1
| | | | | | | | | For context see this thread: https://groups.google.com/a/chromium.org/forum/?fromgroups#!topic/chromium-dev/RMcVNGjB4II TBR=thakis,pkasting,jam git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146163 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for default values of IPC_STRUCT_MEMBER.jbates@chromium.org2012-04-161-1/+3
| | | | | | Review URL: http://codereview.chromium.org/10067023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132435 0039d316-1c4b-4281-b951-d872f2087c98
* Make IPC_MESSAGE_EXPORT more robust.thakis@chromium.org2012-02-211-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, files that want to export ipc messages currently do #undef IPC_MESSAGE_EXPORT #define IPC_MESSAGE_EXPORT CONTENT_EXPORT at the top, and files that don't want to export ipc messages just do nothing. This is problematic if a cc file does #include "exported_messages.h" #include "not_exported_messages.h" because the second header file picks up the #define from the first file and declares all its messages as exported. In other translation units, where not_exported_messages.h is #included without another header above it, the messages will get default visibility – so the same class ends up with different visibilities in different translation units. Instead, let ipc_message_macros.h #undef IPC_MESSAGE_EXPORT outside of the include guard, so that all files that don't set the define see it as defined to nothing. (Idea from jam@) Also disable about:ipc in the component build, since ipc logging adds a dependency from chrome on all ipc message classes, so they would all have to be exported. BUG=90078 TEST=No linker errors about IPC messages when doing components build on mac. (Other linker errors remain for now.) TBR=brettw Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=122689 Review URL: http://codereview.chromium.org/9425006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122828 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting in an attempt to fix Win Builder 2010 (dbg).jhawkins@chromium.org2012-02-181-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert 122689 - Make IPC_MESSAGE_EXPORT more robust. Currently, files that want to export ipc messages currently do #undef IPC_MESSAGE_EXPORT #define IPC_MESSAGE_EXPORT CONTENT_EXPORT at the top, and files that don't want to export ipc messages just do nothing. This is problematic if a cc file does #include "exported_messages.h" #include "not_exported_messages.h" because the second header file picks up the #define from the first file and declares all its messages as exported. In other translation units, where not_exported_messages.h is #included without another header above it, the messages will get default visibility – so the same class ends up with different visibilities in different translation units. Instead, let ipc_message_macros.h #undef IPC_MESSAGE_EXPORT outside of the include guard, so that all files that don't set the define see it as defined to nothing. (Idea from jam@) BUG=90078 TEST=No linker errors about IPC messages when doing components build on mac. (Other linker errors remain for now.) TBR=brettw Review URL: http://codereview.chromium.org/9425006 TBR=thakis@chromium.org Review URL: https://chromiumcodereview.appspot.com/9355029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122698 0039d316-1c4b-4281-b951-d872f2087c98
* Make IPC_MESSAGE_EXPORT more robust.thakis@chromium.org2012-02-181-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | Currently, files that want to export ipc messages currently do #undef IPC_MESSAGE_EXPORT #define IPC_MESSAGE_EXPORT CONTENT_EXPORT at the top, and files that don't want to export ipc messages just do nothing. This is problematic if a cc file does #include "exported_messages.h" #include "not_exported_messages.h" because the second header file picks up the #define from the first file and declares all its messages as exported. In other translation units, where not_exported_messages.h is #included without another header above it, the messages will get default visibility – so the same class ends up with different visibilities in different translation units. Instead, let ipc_message_macros.h #undef IPC_MESSAGE_EXPORT outside of the include guard, so that all files that don't set the define see it as defined to nothing. (Idea from jam@) BUG=90078 TEST=No linker errors about IPC messages when doing components build on mac. (Other linker errors remain for now.) TBR=brettw Review URL: http://codereview.chromium.org/9425006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122689 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of a bunch of view_messages.h includes from chrome by making the ↵jam@chromium.org2011-11-211-1/+3
| | | | | | | | | TabContentsObserver interface not use a struct from it. Instead, the interface uses a new struct, content::FrameNavigateParams, that's in the public directory. The IPC message's struct derives from it. BUG=98716 Review URL: http://codereview.chromium.org/8603015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110963 0039d316-1c4b-4281-b951-d872f2087c98
* Uncomment a different third IPC hook for about:profilerjar@chromium.org2011-11-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | If this causes ASAN problems with browser tests, then I'll revert it. Tests to watch out for (on ASAN bot) are: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito So far, I've uncommented two hooks, with no problems ;-). One of these hooks will illuminate the problems. r=rtenneti BUG=103830 Review URL: http://codereview.chromium.org/8463033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110114 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 109760 - Uncomment third IPC hook for about:profilerjar@chromium.org2011-11-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If this causes ASAN problems with browser tests, then I'll revert it. Tests to watch out for (on ASAN bot) are: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito So far, I've uncommented two hooks, with no problems ;-). One of these hooks will illuminate the problems. r=rtenneti BUG=103830 Review URL: http://codereview.chromium.org/8491065 TBR=jar@chromium.org Review URL: http://codereview.chromium.org/8538035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109762 0039d316-1c4b-4281-b951-d872f2087c98
* Uncomment third IPC hook for about:profilerjar@chromium.org2011-11-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | If this causes ASAN problems with browser tests, then I'll revert it. Tests to watch out for (on ASAN bot) are: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito So far, I've uncommented two hooks, with no problems ;-). One of these hooks will illuminate the problems. r=rtenneti BUG=103830 Review URL: http://codereview.chromium.org/8491065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109760 0039d316-1c4b-4281-b951-d872f2087c98
* Uncomment second IPC hook for about:profilerjar@chromium.org2011-11-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | If this causes ASAN problems with browser tests, then I'll revert it. Tests to watch out for (on ASAN bot) are: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito r=rtenneti BUG=103830 Review URL: http://codereview.chromium.org/8540015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109721 0039d316-1c4b-4281-b951-d872f2087c98
* Uncomment first (major) IPC hook for about:profilerjar@chromium.org2011-11-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | If this causes ASAN problems with browser tests, then I'll revert it. Tests to watch out for (on ASAN bot) are: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito r=rtenneti BUG=103830 Review URL: http://codereview.chromium.org/8515022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109553 0039d316-1c4b-4281-b951-d872f2087c98
* Land commented out IPC hooks for profilingjar@chromium.org2011-11-111-31/+42
| | | | | | | | | | | | | When I uncomment them all, then browser tests timeout under ASAN for no apparent reason. This landing will make it easier for me to uncomment them one at a time. (without going back to square one). r=rtenneti BUG/103830 Review URL: http://codereview.chromium.org/8526016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109542 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 109357 - Support tracking of IPC messages as tasks in profilerjar@chromium.org2011-11-101-36/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was previously landed as 108752, but reverted in 109004 by Joi to try to stop flaky failures in ASAN bot when running browser_tests.. The failures included: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito I'm now landing 1 hook at a time back into the build, to see which one(s) tickle flakiness. The other hooks are commented out, so that I can try several alternatives and figure out what is tickling the problem. The restructuring of the code was already landed, and did not *appear* to induce the failures. Hence it is likely that one of the IPC hooks is the problem. If I need to, I'll TBR various owners, since I've already gotten permission for this landing. r=rtenneti Review URL: http://codereview.chromium.org/8499039 TBR=jar@chromium.org Review URL: http://codereview.chromium.org/8506037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109371 0039d316-1c4b-4281-b951-d872f2087c98
* Support tracking of IPC messages as tasks in profilerjar@chromium.org2011-11-101-26/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was previously landed as 108752, but reverted in 109004 by Joi to try to stop flaky failures in ASAN bot when running browser_tests.. The failures included: IncognitoSplitMode TwoExtensionsCrashBothAtOnce TwoExtensionsOneByOne AutoUpdate CognitoNoFile IncognitoNoFile OnChangedNotificationsBetweenBackgroundPages SplitModeIncognito I'm now landing 1 hook at a time back into the build, to see which one(s) tickle flakiness. The other hooks are commented out, so that I can try several alternatives and figure out what is tickling the problem. The restructuring of the code was already landed, and did not *appear* to induce the failures. Hence it is likely that one of the IPC hooks is the problem. If I need to, I'll TBR various owners, since I've already gotten permission for this landing. r=rtenneti Review URL: http://codereview.chromium.org/8499039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109357 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 108752 - Support tracking of IPC messages as tasks in profilerjoi@chromium.org2011-11-081-21/+14
| | | | | | | | | | | | | | Also started to do more cleanup, including creating a base/profiler directory, and moving parts of the over-sized tracked_objects.* into that directory. r=rtenneti Review URL: http://codereview.chromium.org/8480014 TBR=jar@chromium.org Review URL: http://codereview.chromium.org/8496008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109004 0039d316-1c4b-4281-b951-d872f2087c98
* Support tracking of IPC messages as tasks in profilerjar@chromium.org2011-11-051-14/+21
| | | | | | | | | | | Also started to do more cleanup, including creating a base/profiler directory, and moving parts of the over-sized tracked_objects.* into that directory. r=rtenneti Review URL: http://codereview.chromium.org/8480014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108752 0039d316-1c4b-4281-b951-d872f2087c98
* Android IPC changes.jrg@chromium.org2011-11-041-1/+2
| | | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/8437033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108589 0039d316-1c4b-4281-b951-d872f2087c98
* more content exports.dpranke@chromium.org2011-10-271-2/+2
| | | | | | | | | | R=jam@chromium.org BUG=90442 TEST=none Review URL: http://codereview.chromium.org/8381024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107510 0039d316-1c4b-4281-b951-d872f2087c98
* Update automation messages to use the new way of declaring message structs, ↵jam@chromium.org2011-10-211-3/+1
| | | | | | | | to cut back on unnecessary code. Review URL: http://codereview.chromium.org/8356020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106734 0039d316-1c4b-4281-b951-d872f2087c98
* Fix IPC logging on Windows.jam@chromium.org2011-10-171-1/+9
| | | | | | Review URL: http://codereview.chromium.org/8322013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105937 0039d316-1c4b-4281-b951-d872f2087c98
* add IPC_MESSAGE_EXPORT to IPC_STRUCT_BEGIN.dpranke@chromium.org2011-09-061-6/+6
| | | | | | | | | | | This is needed for complex message structures that need to marshall a lot of params (like ViewHostMsg_FrameNavigate_Params). R=darin@chromium.org BUG=90442 Review URL: http://codereview.chromium.org/7828067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99853 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for exporting IPC messages from component DLLs.darin@chromium.org2011-08-261-40/+255
| | | | | | | | | | | | | | | | | | | | | | 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 Review URL: http://codereview.chromium.org/7768001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98491 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up a comment in ipc_message_macros.hsteveblock@chromium.org2011-08-231-4/+4
| | | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/7709004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97844 0039d316-1c4b-4281-b951-d872f2087c98
* Virtual destructors should have virtual keyword.hans@chromium.org2011-05-251-5/+4
| | | | | | | | | | | | | | | | | Make sure user-declared virtual destructors always have the virtual keyword. The Clang style-check plugin will check for this soon. No functionality change: virtual is only added to destructors that are already implicitly virtual. Also fix a couple of in-line destructor definitions. BUG=83408 TEST=none Review URL: http://codereview.chromium.org/7064033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86587 0039d316-1c4b-4281-b951-d872f2087c98
* GTTF: Make automation provider recognize more IPC error conditionsphajdan.jr@chromium.org2011-03-311-1/+1
| | | | | | | | | | 1) Report IPC message deserialization errors in "delay reply" handlers. 2) Handle those errors in automation provider. BUG=77875 Review URL: http://codereview.chromium.org/6675047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79980 0039d316-1c4b-4281-b951-d872f2087c98
* Creates the ipclist utility that chrome security team has wanted to dumptsepez@chromium.org2011-03-171-1/+6
| | | | | | | | | | | | the known IPC messages. Going forward, this should help identify new messages between versions of chrome so that they may be given extra scrutiny for potential badness. under the common_message_generator.h umbrella. Review URL: http://codereview.chromium.org/6646005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78564 0039d316-1c4b-4281-b951-d872f2087c98
* Change common_message_generator code block.tsepez@chromium.org2011-03-121-17/+27
| | | | | | | | | | | | | | | Makes namespace IPC {} more tightly wrapped around the inclusion of the genertor header file. Updates comments in ipc_message_macros to indicate this new style of block. Makes message ID generation into a macro so can be re-used in forthcoming ipclist CL. Simplfies the NULL macros. Adds #pragma once to param traits, because we can. Review URL: http://codereview.chromium.org/6683014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77943 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed a bug in the serialization of history::URLRow.danno@chromium.org2011-03-101-2/+2
| | | | | | | | | | | | | This caused profile import to fail and crash Chromium on startup. BUG=75526 TEST=Remove all the profile data, then start Chromium. It crashes immediately during profile import. (only tested on mac). Review URL: http://codereview.chromium.org/6650026 Patch from Joao da Silva <joaodasilva@chromium.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77642 0039d316-1c4b-4281-b951-d872f2087c98
* Move resource related IPCs to their own file in content. I added a ↵jam@chromium.org2011-03-051-3/+5
| | | | | | | | | IPC_STRUCT_TRAITS_PARENT macro to allow the automatic serializing macros to add a parent struct. TBR=tsepez Review URL: http://codereview.chromium.org/6628035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77048 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt to reduce the amount of cut n paste needed to maintain these.tsepez@chromium.org2011-03-011-994/+368
| | | | | | Review URL: http://codereview.chromium.org/6581046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76417 0039d316-1c4b-4281-b951-d872f2087c98
* Make the implementation .cc files go away, instead have the authors give us ↵tsepez@chromium.org2011-02-111-17/+161
| | | | | | | | a header only. Review URL: http://codereview.chromium.org/6410007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74637 0039d316-1c4b-4281-b951-d872f2087c98
* Make IPC::Channel::Listener:OnMessageReceived have a return value indicating ↵jam@chromium.org2010-12-241-5/+4
| | | | | | | | | whether a message was processed or not. TBR=brettw Review URL: http://codereview.chromium.org/5978003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70139 0039d316-1c4b-4281-b951-d872f2087c98