Revert "Avoid throwing ISE in Canvas#restore underflow"
Additionally, rewrite the exception message for clarity.
bug:19951475
bug:19829784
This reverts commit 14cfb6db33264f1c3b127ccf4e45e3ac86527804.
Change-Id: Ie70a49a8d3957025c4b2e47d4ef9f4abd4ded133
diff --git a/core/jni/android_graphics_Canvas.cpp b/core/jni/android_graphics_Canvas.cpp
index 49ee6c5..4c08b4b 100644
--- a/core/jni/android_graphics_Canvas.cpp
+++ b/core/jni/android_graphics_Canvas.cpp
@@ -89,7 +89,7 @@
static void restore(JNIEnv* env, jobject, jlong canvasHandle) {
Canvas* canvas = get_canvas(canvasHandle);
if (canvas->getSaveCount() <= 1) { // cannot restore anymore
- // fail silently on underflow, so as not to break existing apps that miscount
+ doThrowISE(env, "Underflow in restore - more restores than saves");
return;
}
canvas->restore();
@@ -98,7 +98,7 @@
static void restoreToCount(JNIEnv* env, jobject, jlong canvasHandle, jint restoreCount) {
Canvas* canvas = get_canvas(canvasHandle);
if (restoreCount < 1 || restoreCount > canvas->getSaveCount()) {
- // fail silently on underflow, so as not to break existing apps that miscount
+ doThrowIAE(env, "Underflow in restoreToCount - more restores than saves");
return;
}
canvas->restoreToCount(restoreCount);