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

Unified Diff: content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java

Issue 2285593002: Add ScopedSurfaceRequestManager (Closed)
Patch Set: Added RunUntilIdle() to 2 UTs Created 4 years, 3 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: 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 e32af9ffd4e72b948c8ec398cb7f372a20a4f2e3..c9c3eb2bda475b4c3cf40aeec1883be22cecb715 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
@@ -913,6 +913,19 @@ public class ChildProcessLauncher {
}
@Override
+ public void forwardSurfaceForSurfaceRequest(
+ long requestTokenHigh, long requestTokenLow, 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(requestTokenHigh, requestTokenLow, 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) {
@@ -1060,5 +1073,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 requestTokenHigh, long requestTokenLow, Surface surface);
private static native boolean nativeIsSingleProcess();
}

Powered by Google App Engine
This is Rietveld 408576698