kongzue / kongzue/Dialog

弹出弹窗前切换其他APP,然后切回,必然会出一个错误

Open
#22 11 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
730
Forks
109
PR merge metrics
No merged PRs in 30d

Description

E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.IllegalArgumentException: width and height must be > 0
at android.graphics.Bitmap.createBitmap(Bitmap.java:1033)
at android.graphics.Bitmap.createBitmap(Bitmap.java:1000)
at android.graphics.Bitmap.createBitmap(Bitmap.java:950)
at android.graphics.Bitmap.createBitmap(Bitmap.java:911)
at com.kongzue.dialog.util.BlurView.drawBlurredBitmap(BlurView.java:354)
at com.kongzue.dialog.util.BlurView.onDraw(BlurView.java:330)
at android.view.View.draw(View.java:20261)
at com.kongzue.dialog.util.BlurView.draw(BlurView.java:323)
at android.view.View.updateDisplayListIfDirty(View.java:19136)
at android.view.View.draw(View.java:19989)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20264)
at android.view.View.updateDisplayListIfDirty(View.java:19136)
at android.view.View.draw(View.java:19989)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20264)
at android.view.View.updateDisplayListIfDirty(View.java:19136)
at android.view.View.draw(View.java:19989)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20264)
at android.view.View.updateDisplayListIfDirty(View.java:19136)
at android.view.View.draw(View.java:19989)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20264)
at android.view.View.updateDisplayListIfDirty(View.java:19136)
at android.view.View.draw(View.java:19989)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20264)
at com.android.internal.policy.DecorView.draw(DecorView.java:801)
at android.view.View.updateDisplayListIfDirty(View.java:19136)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:801)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:3406)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3179)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2548)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1523)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7388)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1062)
at android.view.Choreographer.doCallbacks(Choreographer.java:874)
at android.view.Choreographer.doFrame(Choreographer.java:805)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1048)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6806)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in BlurView.java at drawBlurredBitmap() and onDraw(), then reproduce the reported sequence: switch to another app before showing the dialog and return. Trace the dimensions passed to Bitmap.createBitmap(); done means returning to the app and opening the dialog no longer causes the width-and-height crash.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, java
Domain
mobile
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.