Loading core/jni/android/graphics/MaskFilter.cpp +17 −5 Original line number Diff line number Diff line Loading @@ -4,15 +4,23 @@ #include <jni.h> static void ThrowIAE_IfNull(JNIEnv* env, void* ptr) { if (NULL == ptr) { doThrowIAE(env); } } class SkMaskFilterGlue { public: static void destructor(JNIEnv* env, jobject, SkMaskFilter* filter) { SkASSERT(filter); filter->unref(); SkSafeUnref(filter); } static SkMaskFilter* createBlur(JNIEnv* env, jobject, float radius, int blurStyle) { return SkBlurMaskFilter::Create(SkFloatToScalar(radius), (SkBlurMaskFilter::BlurStyle)blurStyle); SkMaskFilter* filter = SkBlurMaskFilter::Create(SkFloatToScalar(radius), (SkBlurMaskFilter::BlurStyle)blurStyle); ThrowIAE_IfNull(env, filter); return filter; } static SkMaskFilter* createEmboss(JNIEnv* env, jobject, jfloatArray dirArray, float ambient, float specular, float radius) { Loading @@ -24,8 +32,12 @@ public: direction[i] = SkFloatToScalar(values[i]); } return SkBlurMaskFilter::CreateEmboss(direction, SkFloatToScalar(ambient), SkFloatToScalar(specular), SkFloatToScalar(radius)); SkMaskFilter* filter = SkBlurMaskFilter::CreateEmboss(direction, SkFloatToScalar(ambient), SkFloatToScalar(specular), SkFloatToScalar(radius)); ThrowIAE_IfNull(env, filter); return filter; } }; Loading core/jni/android/graphics/Shader.cpp +9 −11 Original line number Diff line number Diff line Loading @@ -43,20 +43,17 @@ static int Color_HSVToColor(JNIEnv* env, jobject, int alpha, jfloatArray hsvArra static void Shader_destructor(JNIEnv* env, jobject, SkShader* shader) { SkASSERT(shader != NULL); shader->unref(); SkSafeUnref(shader); } static bool Shader_getLocalMatrix(JNIEnv* env, jobject, const SkShader* shader, SkMatrix* matrix) { SkASSERT(shader != NULL); return shader->getLocalMatrix(matrix); return shader ? shader->getLocalMatrix(matrix) : false; } static void Shader_setLocalMatrix(JNIEnv* env, jobject, SkShader* shader, const SkMatrix* matrix) { SkASSERT(shader != NULL); if (shader) { if (NULL == matrix) { shader->resetLocalMatrix(); } Loading @@ -64,6 +61,7 @@ static void Shader_setLocalMatrix(JNIEnv* env, jobject, SkShader* shader, const shader->setLocalMatrix(*matrix); } } } /////////////////////////////////////////////////////////////////////////////////////////////// Loading Loading
core/jni/android/graphics/MaskFilter.cpp +17 −5 Original line number Diff line number Diff line Loading @@ -4,15 +4,23 @@ #include <jni.h> static void ThrowIAE_IfNull(JNIEnv* env, void* ptr) { if (NULL == ptr) { doThrowIAE(env); } } class SkMaskFilterGlue { public: static void destructor(JNIEnv* env, jobject, SkMaskFilter* filter) { SkASSERT(filter); filter->unref(); SkSafeUnref(filter); } static SkMaskFilter* createBlur(JNIEnv* env, jobject, float radius, int blurStyle) { return SkBlurMaskFilter::Create(SkFloatToScalar(radius), (SkBlurMaskFilter::BlurStyle)blurStyle); SkMaskFilter* filter = SkBlurMaskFilter::Create(SkFloatToScalar(radius), (SkBlurMaskFilter::BlurStyle)blurStyle); ThrowIAE_IfNull(env, filter); return filter; } static SkMaskFilter* createEmboss(JNIEnv* env, jobject, jfloatArray dirArray, float ambient, float specular, float radius) { Loading @@ -24,8 +32,12 @@ public: direction[i] = SkFloatToScalar(values[i]); } return SkBlurMaskFilter::CreateEmboss(direction, SkFloatToScalar(ambient), SkFloatToScalar(specular), SkFloatToScalar(radius)); SkMaskFilter* filter = SkBlurMaskFilter::CreateEmboss(direction, SkFloatToScalar(ambient), SkFloatToScalar(specular), SkFloatToScalar(radius)); ThrowIAE_IfNull(env, filter); return filter; } }; Loading
core/jni/android/graphics/Shader.cpp +9 −11 Original line number Diff line number Diff line Loading @@ -43,20 +43,17 @@ static int Color_HSVToColor(JNIEnv* env, jobject, int alpha, jfloatArray hsvArra static void Shader_destructor(JNIEnv* env, jobject, SkShader* shader) { SkASSERT(shader != NULL); shader->unref(); SkSafeUnref(shader); } static bool Shader_getLocalMatrix(JNIEnv* env, jobject, const SkShader* shader, SkMatrix* matrix) { SkASSERT(shader != NULL); return shader->getLocalMatrix(matrix); return shader ? shader->getLocalMatrix(matrix) : false; } static void Shader_setLocalMatrix(JNIEnv* env, jobject, SkShader* shader, const SkMatrix* matrix) { SkASSERT(shader != NULL); if (shader) { if (NULL == matrix) { shader->resetLocalMatrix(); } Loading @@ -64,6 +61,7 @@ static void Shader_setLocalMatrix(JNIEnv* env, jobject, SkShader* shader, const shader->setLocalMatrix(*matrix); } } } /////////////////////////////////////////////////////////////////////////////////////////////// Loading