diff options
Diffstat (limited to 'core/jni/com_google_android_gles_jni_EGLImpl.cpp')
-rw-r--r-- | core/jni/com_google_android_gles_jni_EGLImpl.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/core/jni/com_google_android_gles_jni_EGLImpl.cpp b/core/jni/com_google_android_gles_jni_EGLImpl.cpp index 7080e2a..baeb7dd 100644 --- a/core/jni/com_google_android_gles_jni_EGLImpl.cpp +++ b/core/jni/com_google_android_gles_jni_EGLImpl.cpp @@ -277,8 +277,9 @@ static void jni_eglCreatePixmapSurface(JNIEnv *_env, jobject _this, jobject out_ EGLConfig cnf = getConfig(_env, config); jint* base = 0; - SkBitmap const * nativeBitmap = GraphicsJNI::getSkBitmap(_env, native_pixmap); - SkPixelRef* ref = nativeBitmap ? nativeBitmap->pixelRef() : 0; + SkBitmap nativeBitmap; + GraphicsJNI::getSkBitmap(_env, native_pixmap, &nativeBitmap); + SkPixelRef* ref = nativeBitmap.pixelRef(); if (ref == NULL) { jniThrowException(_env, "java/lang/IllegalArgumentException", "Bitmap has no PixelRef"); return; @@ -289,10 +290,10 @@ static void jni_eglCreatePixmapSurface(JNIEnv *_env, jobject _this, jobject out_ egl_native_pixmap_t pixmap; pixmap.version = sizeof(pixmap); - pixmap.width = nativeBitmap->width(); - pixmap.height = nativeBitmap->height(); - pixmap.stride = nativeBitmap->rowBytes() / nativeBitmap->bytesPerPixel(); - pixmap.format = convertPixelFormat(nativeBitmap->colorType()); + pixmap.width = nativeBitmap.width(); + pixmap.height = nativeBitmap.height(); + pixmap.stride = nativeBitmap.rowBytes() / nativeBitmap.bytesPerPixel(); + pixmap.format = convertPixelFormat(nativeBitmap.colorType()); pixmap.data = (uint8_t*)ref->pixels(); base = beginNativeAttribList(_env, attrib_list); |