Repository navigation
Commit 14ad433
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 f295ed1 commit 14ad433
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