[RenderScript] Use ANativeWindow_fromSurface to get ANativeWindow from Java Surface. am: 33287e8a89

am: 483a424903

Change-Id: I7eeba2f46021d24f570bca60c260eb926f5ed027
This commit is contained in:
Miao Wang
2017-03-09 20:56:16 +00:00
committed by android-build-merger
2 changed files with 6 additions and 4 deletions

View File

@@ -5,6 +5,7 @@ LOCAL_SRC_FILES:= \
android_renderscript_RenderScript.cpp
LOCAL_SHARED_LIBRARIES := \
libandroid \
libandroid_runtime \
libandroidfw \
libnativehelper \

View File

@@ -34,6 +34,8 @@
#include "android_runtime/android_view_Surface.h"
#include "android_runtime/android_util_AssetManager.h"
#include "android/graphics/GraphicsJNI.h"
#include "android/native_window.h"
#include "android/native_window_jni.h"
#include <rsEnv.h>
#include <rsApiStubs.h>
@@ -1281,13 +1283,12 @@ nAllocationSetSurface(JNIEnv *_env, jobject _this, jlong con, jlong alloc, jobje
(RsAllocation)alloc, (Surface *)sur);
}
sp<Surface> s;
ANativeWindow *anw = nullptr;
if (sur != 0) {
s = android_view_Surface_getSurface(_env, sur);
anw = ANativeWindow_fromSurface(_env, sur);
}
rsAllocationSetSurface((RsContext)con, (RsAllocation)alloc,
static_cast<ANativeWindow *>(s.get()));
rsAllocationSetSurface((RsContext)con, (RsAllocation)alloc, anw);
}
static void