SimonVT / android-menudrawer

*DEPRECATED* A slide-out menu implementation, which allows users to navigate between views in your app.
http://simonvt.github.com/android-menudrawer/
Apache License 2.0
2.59k stars 1.11k forks source link

java.lang.RuntimeException: Canvas: trying to use a recycled bitmap #240

Closed sethgho closed 10 years ago

sethgho commented 10 years ago

I'm logging a fair number of crashes with this stack trace. This is only on 4.4+. I also see some crashes on 4.3 with a similar stack, but the last call is throwIfRecycled. I saw #113 reported a similar exception, but he had HoloEverywhere in the stack. Do you happen to have any insight here?

java.lang.RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.Bitmap@426e84b0
    at android.graphics.Canvas.throwIfCannotDraw(Canvas.java:1084)
    at android.graphics.Canvas.setBitmap(Canvas.java:228)
    at android.view.View.buildDrawingCache(View.java:13679)
    at android.view.View.getDisplayList(View.java:13378)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at net.simonvt.menudrawer.BuildLayerFrameLayout.dispatchDraw(BuildLayerFrameLayout.java:79)
    at android.view.View.draw(View.java:14508)
    at android.widget.FrameLayout.draw(FrameLayout.java:472)
    at android.view.View.getDisplayList(View.java:13402)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at net.simonvt.menudrawer.MenuDrawer.dispatchDraw(MenuDrawer.java:672)
    at android.view.View.draw(View.java:14508)
    at android.view.View.getDisplayList(View.java:13402)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.getDisplayList(View.java:13397)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.draw(View.java:14508)
    at com.android.internal.widget.ActionBarOverlayLayout.draw(ActionBarOverlayLayout.java:381)
    at android.view.View.getDisplayList(View.java:13402)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.View.draw(View.java:14222)
    at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
    at android.view.View.draw(View.java:14508)
    at android.widget.FrameLayout.draw(FrameLayout.java:472)
    at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2326)
    at android.view.View.getDisplayList(View.java:13402)
    at android.view.View.getDisplayList(View.java:13444)
    at android.view.HardwareRenderer$GlRenderer.buildDisplayList(HardwareRenderer.java:1577)
    at android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:1449)
    at android.view.ViewRootImpl.draw(ViewRootImpl.java:2412)
    at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2284)
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1914)
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1024)
    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5796)
    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:761)
    at android.view.Choreographer.doCallbacks(Choreographer.java:574)
    at android.view.Choreographer.doFrame(Choreographer.java:544)
    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747)
    at android.os.Handler.handleCallback(Handler.java:733)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:136)
    at android.app.ActivityThread.main(ActivityThread.java:5102)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
    at dalvik.system.NativeStart.main(Native Method)
SimonVT commented 10 years ago

Not an issue with this library.