Open Bug 2002898 Opened 17 days ago Updated 17 days ago

Crash in [@ java.lang.RuntimeException: at android.app.ActivityThread.deliverResults(ActivityThread.java)] when revoking a permission that I just granted

Categories

(Firefox for Android :: Browser Engine, defect)

Unspecified
Android
defect

Tracking

()

People

(Reporter: dholbert, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: crash)

Crash Data

Attachments

(1 file)

I've got a kind-of-odd set of steps that trigger a crash in Firefox but not Chrome, under the signature from bug 1795924. Filing this bug for my crash; I'll post STR and a screencast in the next bug comment.

Crash report: https://crash-stats.mozilla.org/report/index/864b6e42-c6c9-4a08-b786-1a8ea0251128

Top 10 frames:

0  mozilla.components.feature.prompts.file.FilePicker  onPermissionsResult  FilePicker.kt:22
1  mozilla.components.feature.prompts.PromptFeature  onPermissionsResult  PromptFeature.kt:8
2  org.mozilla.fenix.browser.BaseBrowserFragment  onRequestPermissionsResult  BaseBrowserFragment.kt:45
3  androidx.fragment.app.FragmentManager$10  onActivityResult  FragmentManager.java:120
4  androidx.activity.result.ActivityResultRegistry  dispatchResult  ActivityResultRegistry.kt:49
5  androidx.activity.ComponentActivity  onRequestPermissionsResult  ComponentActivity.kt:32
6  androidx.fragment.app.FragmentActivity  onRequestPermissionsResult  FragmentActivity.java:6
7  org.mozilla.fenix.HomeActivity  onRequestPermissionsResult  HomeActivity.kt:52
8  android.app.Activity  onRequestPermissionsResult  Activity.java:5920
9  android.app.Activity  dispatchRequestPermissionsResult  Activity.java:9788

STR:

  1. Open the Android system app-info page for Firefox Nightly (e.g. long-press its icon and choose the "i" icon), and tap its Permissions setting, and be sure the Camera & Microphone permissions are disallowed. (For good measure, you might need to allow and then disallow; this lets Firefox prompt you for the permission, later on in the STR).
  2. Open Firefox Nightly for Android, and visit https://bugzilla.mozilla.org/attachment.cgi?id=9517903
  3. Tap the "Browse" button on the testcase.
  4. Hopefully Android will prompt you to allow camera permissions ("Allow Firefox Nightly to take pictures and record video").
  5. Choose "While using the app" in that prompt.
  6. Hopefully Android will prompt you to allow microphone permissions; do not complete this permission prompt yet.
  7. Switch apps to the system app-info page for Firefox Nightly - the Camera permission has now been granted (in step 4). **Manually revoke that permission here in the app-info page.
  8. Switch apps back to Firefox (which is still showing the prompt from step 6). Tap through to allow that permission.

ACTUAL RESULTS:
Crash.

EXPECTED RESULTS:
No crash.

If I perform the STR in Chrome, it doesn't crash; instead, the file-picker operation just seems to be canceled (which is reasonable, given that a permission that was granted was then revoked while the browser was sorting out other needed permissions).

I'm using Firefox Nightly 147.0a1 on a Pixel 6a with Android 16.

I think you need at least Firefox v146 in order to test this (with these STR), because this seems to require two permission prompts, and I think we need the patch from bug 1975933 in order to get into that situation.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: