wallabag / wallabag/android-app

IllegalArgumentException in Dialog.dismiss()

Open
#382 1 comment 1 reaction 0 assignees View on GitHub
Bug
Dominant language
Java
Stars
587
Forks
276
PR merge metrics
No merged PRs in 30d

Description

reported on gdev console

```
java.lang.IllegalArgumentException: View=com.android.internal.policy.PhoneWindow$DecorView{19d48a3 V.E...... R......D 0,0-1026,348} not attached to window manager
at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:424)
at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:350)
at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:118)
at android.app.Dialog.dismissDialog(Dialog.java:362)
at android.app.Dialog.dismiss(Dialog.java:345)
at fr.gaulupeau.apps.Poche.ui.preferences.ConfigurationTestHelper.onTestConnectionResult(ConfigurationTestHelper.java:142)
at fr.gaulupeau.apps.Poche.network.tasks.TestConnectionTask.onPostExecute(TestConnectionTask.java:139)
at fr.gaulupeau.apps.Poche.network.tasks.TestConnectionTask.onPostExecute(TestConnectionTask.java:22)
at android.os.AsyncTask.finish(AsyncTask.java:651)
at android.os.AsyncTask.-wrap1(AsyncTask.java)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:668)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5461)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
```

reported two times.
### one time on:

App-Version
29

Android-Version
Android 6.01

Gerät
OnePlus One (A0001)

### second time on:

App-Version
29

Android-Version
Android 6.01

Gerät
Galaxy A5(2016) (a5xelte)

and with a slightly different exception trace:

```
java.lang.IllegalArgumentException: View=com.android.internal.policy.PhoneWindow$DecorView{ff44205 V.E...... R......D 0,0-1002,348} not attached to window manager
at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:451)
at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:377)
at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:140)
at android.app.Dialog.dismissDialog(Dialog.java:701)
at android.app.Dialog.dismiss(Dialog.java:684)
at fr.gaulupeau.apps.Poche.ui.preferences.ConfigurationTestHelper.handleGetCredentialsResult(ConfigurationTestHelper.java:307)
at fr.gaulupeau.apps.Poche.network.tasks.GetCredentialsTask.onPostExecute(GetCredentialsTask.java:61)
at fr.gaulupeau.apps.Poche.network.tasks.GetCredentialsTask.onPostExecute(GetCredentialsTask.java:12)
at android.os.AsyncTask.finish(AsyncTask.java:651)
at android.os.AsyncTask.access$500(AsyncTask.java:180)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:668)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in ui/preferences/ConfigurationTestHelper.java at onTestConnectionResult and handleGetCredentialsResult, then follow TestConnectionTask and GetCredentialsTask onPostExecute. Reproduce the connection and credential flows on Android, focusing on Dialog.dismiss() after the result callbacks. Done means neither flow throws the reported not-attached-to-window-manager exception.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.