diff options
| author | Jeff Brown <jeffbrown@google.com> | 2013-05-03 02:11:02 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-05-03 02:11:03 +0000 |
| commit | 17cf4e4d4a576009efbfce93bd64b687601b71c7 (patch) | |
| tree | c4dd4332068a6ffdc3524059afb3e5e4562b24b9 /core/java/android/view/SurfaceControl.java | |
| parent | 856a5a860e11a85f8fbb1ad07f6ef444abeafbaf (diff) | |
| parent | fc0ebd7d379ff63c00ebf78ca252fab5070213da (diff) | |
Merge "Really make Surface thread-safe." into jb-mr2-dev
Diffstat (limited to 'core/java/android/view/SurfaceControl.java')
| -rw-r--r-- | core/java/android/view/SurfaceControl.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/core/java/android/view/SurfaceControl.java b/core/java/android/view/SurfaceControl.java index e869d09adaa7..6b530ef343a5 100644 --- a/core/java/android/view/SurfaceControl.java +++ b/core/java/android/view/SurfaceControl.java @@ -496,8 +496,14 @@ public class SurfaceControl { if (displayToken == null) { throw new IllegalArgumentException("displayToken must not be null"); } - int nativeSurface = surface != null ? surface.mNativeObject : 0; - nativeSetDisplaySurface(displayToken, nativeSurface); + + if (surface != null) { + synchronized (surface.mLock) { + nativeSetDisplaySurface(displayToken, surface.mNativeObject); + } + } else { + nativeSetDisplaySurface(displayToken, 0); + } } public static IBinder createDisplay(String name, boolean secure) { |
