Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 664f6466 authored by Nandana Dutt's avatar Nandana Dutt
Browse files

Stop bugreportd if binder call fails

Fixes: 128949427
Test: Tested by supplying a valid fd that dumpstate does not have access
to, but system server has access to. So the startBugreport call fails.
Verified that subsequent calls with proper arguments go through and not
encounter BUGREPORT_ERROR_ANOTHER_REPORT_IN_PROGRESS.

Change-Id: I393e09a4e35ae5191406112d76f27fe89418c069
parent 1a80ff94
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -174,7 +174,11 @@ class BugreportManagerServiceImpl extends IDumpstate.Stub {
            ds.startBugreport(callingUid, callingPackage,
                    bugreportFd, screenshotFd, bugreportMode, myListener);
        } catch (RemoteException e) {
            reportError(listener, IDumpstateListener.BUGREPORT_ERROR_RUNTIME_ERROR);
            // bugreportd service is already started now. We need to kill it to manage the
            // lifecycle correctly. If we don't subsequent callers will get
            // BUGREPORT_ERROR_ANOTHER_REPORT_IN_PROGRESS error.
            // Note that listener will be notified by the death recipient below.
            cancelBugreport();
        }
    }