| Index: content/public/android/java/src/org/chromium/content/app/ChildProcessService.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/app/ChildProcessService.java b/content/public/android/java/src/org/chromium/content/app/ChildProcessService.java
|
| index 849f9c753402e4a393219a229bacde645bc97429..ce9eccc2e1b797461fe62373d20ac6c89eb1aece 100644
|
| --- a/content/public/android/java/src/org/chromium/content/app/ChildProcessService.java
|
| +++ b/content/public/android/java/src/org/chromium/content/app/ChildProcessService.java
|
| @@ -27,8 +27,8 @@ import org.chromium.base.library_loader.LibraryProcessType;
|
| import org.chromium.base.library_loader.Linker;
|
| import org.chromium.base.library_loader.ProcessInitException;
|
| import org.chromium.content.browser.ChildProcessConstants;
|
| -import org.chromium.content.browser.ChildProcessLauncher;
|
| import org.chromium.content.browser.FileDescriptorInfo;
|
| +import org.chromium.content.common.ContentSwitches;
|
| import org.chromium.content.common.IChildProcessCallback;
|
| import org.chromium.content.common.IChildProcessService;
|
| import org.chromium.content.common.SurfaceWrapper;
|
| @@ -51,6 +51,7 @@ import java.util.concurrent.atomic.AtomicReference;
|
| public class ChildProcessService extends Service {
|
| private static final String MAIN_THREAD_NAME = "ChildProcessMain";
|
| private static final String TAG = "ChildProcessService";
|
| + protected static final FileDescriptorInfo[] EMPTY_FILE_DESCRIPTOR_INFO = {};
|
| private IChildProcessCallback mCallback;
|
|
|
| // This is the native "Main" thread for the renderer / utility process.
|
| @@ -289,10 +290,10 @@ public class ChildProcessService extends Service {
|
| mFdInfos = new FileDescriptorInfo[fdInfosAsParcelable.length];
|
| System.arraycopy(fdInfosAsParcelable, 0, mFdInfos, 0, fdInfosAsParcelable.length);
|
| } else {
|
| - // TODO(qinmin): On earlier androird versions, a started service running in another
|
| - // process can get killed after Chrome is killed. To work around this issue, client
|
| - // will never bind to the service. As a result, the file descriptors needs to be
|
| - // passed through an intent when starting the service.
|
| + String processType = ContentSwitches.getSwitchValue(
|
| + mCommandLineParams, ContentSwitches.SWITCH_PROCESS_TYPE);
|
| + assert ContentSwitches.SWITCH_DOWNLOAD_PROCESS.equals(processType);
|
| + mFdInfos = EMPTY_FILE_DESCRIPTOR_INFO;
|
| }
|
| Bundle sharedRelros = bundle.getBundle(Linker.EXTRA_LINKER_SHARED_RELROS);
|
| if (sharedRelros != null) {
|
|
|