Unverified Commit bfcb29f0 authored by Nikolay Igotti's avatar Nikolay Igotti Committed by GitHub

Fix image pixels getter (#266)

parent 1239ae22
......@@ -904,7 +904,7 @@ class Bitmap internal constructor(ptr: NativePointer) : Managed(ptr, _FinalizerH
srcY: Int = 0
): ByteArray? {
return try {
val size = min(dstInfo.height, height - srcY) * rowBytes
val size = min(dstInfo.height, height - srcY) * dstRowBytes
Stats.onNativeCall()
withNullableResult(ByteArray(size)) {
......
......@@ -237,12 +237,9 @@ extern "C" JNIEXPORT jboolean JNICALL Java_org_jetbrains_skia_BitmapKt__1nReadPi
static_cast<SkColorType>(colorType),
static_cast<SkAlphaType>(alphaType),
sk_ref_sp<SkColorSpace>(colorSpace));
if (instance->readPixels(imageInfo, result_bytes, rowBytes, srcX, srcY)) {
jboolean result = instance->readPixels(imageInfo, result_bytes, rowBytes, srcX, srcY);
env->ReleaseByteArrayElements(readBytes, result_bytes, 0);
return true;
} else {
return false;
}
return result;
}
extern "C" JNIEXPORT jboolean JNICALL Java_org_jetbrains_skia_BitmapKt__1nExtractAlpha
......@@ -253,14 +250,14 @@ extern "C" JNIEXPORT jboolean JNICALL Java_org_jetbrains_skia_BitmapKt__1nExtrac
SkIPoint offset;
jint *result_int = env->GetIntArrayElements(resultPoint, NULL);
if (instance->extractAlpha(dst, paint, &offset)) {
jboolean result = instance->extractAlpha(dst, paint, &offset);
if (result) {
result_int[0] = offset.fX;
result_int[1] = offset.fY;
env->ReleaseIntArrayElements(resultPoint, result_int, 0);
return true;
} else {
return false;
}
env->ReleaseIntArrayElements(resultPoint, result_int, 0);
return result;
}
extern "C" JNIEXPORT jobject JNICALL Java_org_jetbrains_skia_BitmapKt__1nPeekPixels
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment