diff options
author | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-05 21:40:11 +0000 |
---|---|---|
committer | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-05 21:40:11 +0000 |
commit | 2749885f65019b0216f5c0401d0f5a28585eb83f (patch) | |
tree | 166a5090004f63ae435e434d711e2ce335909851 /chrome/common/render_messages_internal.h | |
parent | 06533c0b11ce14b45eb0205fdc28a217eeba763c (diff) | |
download | chromium_src-2749885f65019b0216f5c0401d0f5a28585eb83f.zip chromium_src-2749885f65019b0216f5c0401d0f5a28585eb83f.tar.gz chromium_src-2749885f65019b0216f5c0401d0f5a28585eb83f.tar.bz2 |
POSIX: Rewrite IPC's interaction with FileDescriptor
The FileDescriptor API is clearly too hard to use. It's the only IPC
data type which is non-POD and serialising an invalid file descriptor
is fatal to Chrome on POSIX. The use of Maybe is possibly non-obvious
to non-functional programmers.
This patch merges Maybe and FileDescriptor so that serialising invalid
file descriptors is permitted and results in -1 at the other end.
(Serialising /closed/ a file descriptor is still fatal.) Also, it adds
a pointer in base/file_descriptor.h to instructions for its use with
IPC. Although it's generally bad practice to mention IPC in base, in
this case I cannot find another suitable location.
Review URL: http://codereview.chromium.org/39208
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11041 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/render_messages_internal.h')
-rw-r--r-- | chrome/common/render_messages_internal.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/chrome/common/render_messages_internal.h b/chrome/common/render_messages_internal.h index db71aa2..d8418e8 100644 --- a/chrome/common/render_messages_internal.h +++ b/chrome/common/render_messages_internal.h @@ -16,7 +16,6 @@ #include "base/gfx/native_widget_types.h" #include "base/shared_memory.h" #include "chrome/common/ipc_message_macros.h" -#include "chrome/common/ipc_maybe.h" #include "chrome/common/transport_dib.h" #include "skia/include/SkBitmap.h" #include "webkit/glue/console_message_level.h" @@ -1189,7 +1188,7 @@ IPC_BEGIN_MESSAGES(ViewHost) // on its behalf. We return a file descriptor to the POSIX shared memory. IPC_SYNC_MESSAGE_CONTROL1_1(ViewHostMsg_AllocTransportDIB, size_t, /* bytes requested */ - IPC::Maybe<TransportDIB::Handle> /* DIB */) + TransportDIB::Handle /* DIB */) // Since the browser keeps handles to the allocated transport DIBs, this // message is sent to tell the browser that it may release them when the |