Searched on Google with the first line of a JAVA stack trace?

We can recommend more relevant solutions and speed up debugging when you paste your entire stack trace with the exception message. Try a sample exception.

Recommended solutions based on your search

Solutions on the web

via GitHub by keisserdur
, 11 months ago
Underflow in restore - more restores than saves
via GitHub by wutaoTinno
, 1 year ago
Underflow in restore - more restores than saves
via GitHub by wulijie
, 2 years ago
Underflow in restore - more restores than saves
via GitHub by devdigitalappteam
, 2 years ago
Underflow in restore - more restores than saves
via GitHub by arsalancode
, 1 year ago
Underflow in restore - more restores than saves
via GitHub by arpit999
, 1 year ago
Underflow in restore - more restores than saves
java.lang.IllegalStateException: Underflow in restore - more restores than saves at android.graphics.Canvas.native_restore(Native Method) at android.graphics.Canvas.restore(Canvas.java:540) at com.andexert.library.RippleView.draw(RippleView.java:164) at android.view.View.updateDisplayListIfDirty(View.java:15388) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3719) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3699) at android.view.View.updateDisplayListIfDirty(View.java:15339) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:286) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:292) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:327) at android.view.ViewRootImpl.draw(ViewRootImpl.java:3015) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2819) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2431) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1321) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6703) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:894) at android.view.Choreographer.doCallbacks(Choreographer.java:696) at android.view.Choreographer.doFrame(Choreographer.java:631) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:880) at android.os.Handler.handleCallback(Handler.java:815) at android.os.Handler.dispatchMessage(Handler.java:104) at android.os.Looper.loop(Looper.java:207) at android.app.ActivityThread.main(ActivityThread.java:5683) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:679)