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

Unified Diff: handler/crashpad_handler.ad

Issue 1428803006: win: Implement CrashpadClient::StartHandler() (Closed) Base URL: https://chromium.googlesource.com/crashpad/crashpad@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: handler/crashpad_handler.ad
diff --git a/handler/crashpad_handler.ad b/handler/crashpad_handler.ad
index f00ca054aae26c6267a6ca796b97138dbba3215c..30e1ee46bfe410709a7371cc37e33cb89e7fd7a5 100644
--- a/handler/crashpad_handler.ad
+++ b/handler/crashpad_handler.ad
@@ -33,14 +33,22 @@ collection server. Uploads are disabled by default, and can only be enabled by a
Crashpad client using the Crashpad client library, typically in response to a
user requesting this behavior.
-This server is normally started by its initial client, and it performs a
-handshake with this client via a pipe established by the client that is
+On OS X, this server is normally started by its initial client, and it performs
+a handshake with this client via a pipe established by the client that is
inherited by the server, referenced by the *--handshake-fd* argument. During the
handshake, the server furnishes the client with a send right that the client may
use as an exception port. The server retains the corresponding receive right,
which it monitors for exception messages. When the receive right loses all
senders, the server exits after allowing any upload in progress to complete.
+On Windows, clients register with this server by communicating with it via the
+named pipe identified by the *--pipe-name* argument. During registration, a
+client provides the server with an OS event object that it will signal should it
+crash. The server obtains the client’s process handle and waits on the crash
+event object for a crash, as well as the client’s process handle for the client
+to exit cleanly without crashing. When the server loses all clients, it exits
scottmg 2015/10/30 23:16:31 , and --persistent isn't specified
+after allowing any upload in progress to complete.
+
It is not normally appropriate to invoke this program directly. Usually, it will
be invoked by a Crashpad client using the Crashpad client library. Arbitrary
programs may be run with a Crashpad handler by using
@@ -77,6 +85,12 @@ of 'PATH' exists.
Perform the handshake with the initial client on the file descriptor at 'FD'.
This option is required. This option is only valid on Mac OS X.
+*--persistent*::
+Continue running after the last client exits. If this option is not specified,
+this server will exit as soon as it has no clients, although on startup, it
+always waits for at least one client to connect. This option is only valid on
+Windows.
+
*--pipe-name*='PIPE'::
Listen on the given pipe name for connections from clients. 'PIPE' must be of
the form +\\.\pipe\<somename>+. This option is required. This option is only

Powered by Google App Engine
This is Rietveld 408576698