| Index: content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
|
| index 3088b167aa357309421fb6efa99c398c2927aa46..91c6bfa6b5d4311a7b0a13de5379e32ec199715b 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java
|
| @@ -912,6 +912,18 @@ public class ChildProcessLauncher {
|
| }
|
|
|
| @Override
|
| + public void forwardSurfaceForSurfaceRequest(long requestToken, Surface surface) {
|
| + // Do not allow a malicious renderer to connect to a producer. This is only used
|
| + // from stream textures managed by the GPU process.
|
| + if (callbackType != CALLBACK_FOR_GPU_PROCESS) {
|
| + Log.e(TAG, "Illegal callback for non-GPU process.");
|
| + return;
|
| + }
|
| +
|
| + nativeCompleteScopedSurfaceRequest(requestToken, surface);
|
| + }
|
| +
|
| + @Override
|
| public SurfaceWrapper getViewSurface(int surfaceId) {
|
| // Do not allow a malicious renderer to get to our view surface.
|
| if (callbackType != CALLBACK_FOR_GPU_PROCESS) {
|
| @@ -1059,5 +1071,7 @@ public class ChildProcessLauncher {
|
| private static native void nativeOnChildProcessStarted(long clientContext, int pid);
|
| private static native void nativeEstablishSurfacePeer(
|
| int pid, Surface surface, int primaryID, int secondaryID);
|
| + private static native void nativeCompleteScopedSurfaceRequest(
|
| + long requestToken, Surface surface);
|
| private static native boolean nativeIsSingleProcess();
|
| }
|
|
|