DescriptionBind Android ChildProcessServices to a specific client PID.
A ChildProcessService may only be setup once, but nothing enforced this limit,
and a second client of the service would receive no indication of failure. This
situation could occur with Android WebView in multi-process mode, if two
android:processes in the same package tried to use WebView.
To solve this issue, introduce an initial handshake message in
IChildProcessService that must be issued before setupConnection. This method
binds the service to the calling PID. If that binding fails, the
ChildProcessLauncher can then re-try creating a service process using the
next available slot.
BUG=558377, 683133
Review-Url: https://codereview.chromium.org/2626413004
Cr-Commit-Position: refs/heads/master@{#445779}
(cherry picked from commit abd3ee77b9cfd7b3d8cf5f95c511e328645f8fde)
Review-Url: https://codereview.chromium.org/2650013003 .
Cr-Commit-Position: refs/branch-heads/2987@{#68}
Cr-Branched-From: ad51088c0e8776e8dcd963dbe752c4035ba6dab6-refs/heads/master@{#444943}
Committed: https://chromium.googlesource.com/chromium/src/+/fe176c89799b405c9093d628ad4cf6347d6d5d6a
Patch Set 1 #Messages
Total messages: 2 (1 generated)
|