Merge "Fix NPE checkjni" into nyc-dev

This commit is contained in:
John Reck
2016-04-18 17:47:59 +00:00
committed by Android (Google) Code Review
2 changed files with 6 additions and 3 deletions

View File

@@ -17,6 +17,7 @@
package android.view;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.CanvasProperty;
@@ -184,7 +185,7 @@ public class DisplayListCanvas extends Canvas {
* any references to the functor, just that the reference from this specific
* canvas's display list has been released.
*/
public void drawGLFunctor2(long drawGLFunctor, Runnable releasedCallback) {
public void drawGLFunctor2(long drawGLFunctor, @Nullable Runnable releasedCallback) {
nCallDrawGLFunction(mNativeCanvasWrapper, drawGLFunctor, releasedCallback);
}

View File

@@ -105,8 +105,10 @@ static void android_view_DisplayListCanvas_callDrawGLFunction(JNIEnv* env, jobje
jlong canvasPtr, jlong functorPtr, jobject releasedCallback) {
Canvas* canvas = reinterpret_cast<Canvas*>(canvasPtr);
Functor* functor = reinterpret_cast<Functor*>(functorPtr);
sp<GlFunctorReleasedCallbackBridge> bridge(new GlFunctorReleasedCallbackBridge(
env, releasedCallback));
sp<GlFunctorReleasedCallbackBridge> bridge;
if (releasedCallback) {
bridge = new GlFunctorReleasedCallbackBridge(env, releasedCallback);
}
canvas->callDrawGLFunction(functor, bridge.get());
}