Repository navigation
Commit 0bf0f4c
committed
fix(android): Run the telephony callback on its own thread
The provider submitted the display info update to the SDK executor it
got at construction. That reference goes stale twice over. The options
hold a no-op executor until `SentryOptions.activate` replaces it, and
`AndroidOptionsInitializer` builds this provider from the options
configuration callback, which `Sentry.init` runs before `activate`. A
second `SentryAndroid.init` then shuts the previous executor down while
the provider keeps the dead one. Either way the submitted work never
runs, and from API 31 on the listener is the only source of the value.
Pass `Runnable::run` instead. The callback maps the display info to a
generation and stores it, so the binder thread the framework calls it
on is the right place for it. The executor, its field and the
`RejectedExecutionException` guard all go away.1 parent bc2bd59 commit 0bf0f4c
3 files changed
Lines changed: 11 additions & 33 deletions
File tree
- sentry-android-core/src
- main/java/io/sentry/android/core/internal/util
- test/java/io/sentry/android/core/internal/util
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
99 | | - | |
100 | | - | |
| 99 | + | |
101 | 100 | | |
102 | 101 | | |
103 | 102 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
14 | 13 | | |
15 | 14 | | |
16 | 15 | | |
17 | | - | |
18 | | - | |
19 | 16 | | |
20 | 17 | | |
21 | 18 | | |
| |||
45 | 42 | | |
46 | 43 | | |
47 | 44 | | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | 45 | | |
56 | 46 | | |
57 | 47 | | |
| |||
64 | 54 | | |
65 | 55 | | |
66 | 56 | | |
67 | | - | |
68 | | - | |
| 57 | + | |
69 | 58 | | |
70 | 59 | | |
71 | 60 | | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | 61 | | |
84 | 62 | | |
85 | 63 | | |
| |||
114 | 92 | | |
115 | 93 | | |
116 | 94 | | |
117 | | - | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
118 | 101 | | |
119 | 102 | | |
120 | 103 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
15 | 14 | | |
16 | 15 | | |
17 | 16 | | |
| |||
36 | 35 | | |
37 | 36 | | |
38 | 37 | | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | 38 | | |
43 | 39 | | |
44 | 40 | | |
| |||
49 | 45 | | |
50 | 46 | | |
51 | 47 | | |
52 | | - | |
| 48 | + | |
53 | 49 | | |
54 | 50 | | |
55 | 51 | | |
| |||
65 | 61 | | |
66 | 62 | | |
67 | 63 | | |
68 | | - | |
69 | | - | |
| 64 | + | |
| 65 | + | |
70 | 66 | | |
71 | 67 | | |
72 | 68 | | |
| |||
0 commit comments