Loading core/java/android/os/IRecoverySystem.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -25,5 +25,5 @@ interface IRecoverySystem { boolean uncrypt(in String packageFile, IRecoverySystemProgressListener listener); boolean setupBcb(in String command); boolean clearBcb(); void rebootRecoveryWithCommand(in String command, in boolean update); void rebootRecoveryWithCommand(in String command); } core/java/android/os/RecoverySystem.java +10 −5 Original line number Diff line number Diff line Loading @@ -491,10 +491,15 @@ public class RecoverySystem { command += securityArg; } // RECOVERY_SERVICE writes to BCB (bootloader control block) and triggers the reboot. RecoverySystem rs = (RecoverySystem) context.getSystemService( Context.RECOVERY_SERVICE); rs.rebootRecoveryWithCommand(command, true /* update */); if (!rs.setupBcb(command)) { throw new IOException("Setup BCB failed"); } // Having set up the BCB (bootloader control block), go ahead and reboot PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE); pm.reboot(PowerManager.REBOOT_RECOVERY_UPDATE); throw new IOException("Reboot failed (no permissions?)"); } Loading Loading @@ -708,7 +713,7 @@ public class RecoverySystem { // Write the command into BCB (bootloader control block) and boot from // there. Will not return unless failed. RecoverySystem rs = (RecoverySystem) context.getSystemService(Context.RECOVERY_SERVICE); rs.rebootRecoveryWithCommand(command.toString(), false); rs.rebootRecoveryWithCommand(command.toString()); throw new IOException("Reboot failed (no permissions?)"); } Loading Loading @@ -908,9 +913,9 @@ public class RecoverySystem { * Talks to RecoverySystemService via Binder to set up the BCB command and * reboot into recovery accordingly. */ private void rebootRecoveryWithCommand(String command, boolean update) { private void rebootRecoveryWithCommand(String command) { try { mService.rebootRecoveryWithCommand(command, update); mService.rebootRecoveryWithCommand(command); } catch (RemoteException ignored) { } } Loading services/core/java/com/android/server/RecoverySystemService.java +2 −5 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ public final class RecoverySystemService extends SystemService { } @Override // Binder call public void rebootRecoveryWithCommand(String command, boolean update) { public void rebootRecoveryWithCommand(String command) { if (DEBUG) Slog.d(TAG, "rebootRecoveryWithCommand: [" + command + "]"); synchronized (sRequestLock) { if (!setupOrClearBcb(true, command)) { Loading @@ -190,10 +190,7 @@ public final class RecoverySystemService extends SystemService { // Having set up the BCB, go ahead and reboot. PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); // PowerManagerService may additionally request uncrypting the package when it's // to install an update (REBOOT_RECOVERY_UPDATE). pm.reboot(update ? PowerManager.REBOOT_RECOVERY_UPDATE : PowerManager.REBOOT_RECOVERY); pm.reboot(PowerManager.REBOOT_RECOVERY); } } Loading Loading
core/java/android/os/IRecoverySystem.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -25,5 +25,5 @@ interface IRecoverySystem { boolean uncrypt(in String packageFile, IRecoverySystemProgressListener listener); boolean setupBcb(in String command); boolean clearBcb(); void rebootRecoveryWithCommand(in String command, in boolean update); void rebootRecoveryWithCommand(in String command); }
core/java/android/os/RecoverySystem.java +10 −5 Original line number Diff line number Diff line Loading @@ -491,10 +491,15 @@ public class RecoverySystem { command += securityArg; } // RECOVERY_SERVICE writes to BCB (bootloader control block) and triggers the reboot. RecoverySystem rs = (RecoverySystem) context.getSystemService( Context.RECOVERY_SERVICE); rs.rebootRecoveryWithCommand(command, true /* update */); if (!rs.setupBcb(command)) { throw new IOException("Setup BCB failed"); } // Having set up the BCB (bootloader control block), go ahead and reboot PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE); pm.reboot(PowerManager.REBOOT_RECOVERY_UPDATE); throw new IOException("Reboot failed (no permissions?)"); } Loading Loading @@ -708,7 +713,7 @@ public class RecoverySystem { // Write the command into BCB (bootloader control block) and boot from // there. Will not return unless failed. RecoverySystem rs = (RecoverySystem) context.getSystemService(Context.RECOVERY_SERVICE); rs.rebootRecoveryWithCommand(command.toString(), false); rs.rebootRecoveryWithCommand(command.toString()); throw new IOException("Reboot failed (no permissions?)"); } Loading Loading @@ -908,9 +913,9 @@ public class RecoverySystem { * Talks to RecoverySystemService via Binder to set up the BCB command and * reboot into recovery accordingly. */ private void rebootRecoveryWithCommand(String command, boolean update) { private void rebootRecoveryWithCommand(String command) { try { mService.rebootRecoveryWithCommand(command, update); mService.rebootRecoveryWithCommand(command); } catch (RemoteException ignored) { } } Loading
services/core/java/com/android/server/RecoverySystemService.java +2 −5 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ public final class RecoverySystemService extends SystemService { } @Override // Binder call public void rebootRecoveryWithCommand(String command, boolean update) { public void rebootRecoveryWithCommand(String command) { if (DEBUG) Slog.d(TAG, "rebootRecoveryWithCommand: [" + command + "]"); synchronized (sRequestLock) { if (!setupOrClearBcb(true, command)) { Loading @@ -190,10 +190,7 @@ public final class RecoverySystemService extends SystemService { // Having set up the BCB, go ahead and reboot. PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); // PowerManagerService may additionally request uncrypting the package when it's // to install an update (REBOOT_RECOVERY_UPDATE). pm.reboot(update ? PowerManager.REBOOT_RECOVERY_UPDATE : PowerManager.REBOOT_RECOVERY); pm.reboot(PowerManager.REBOOT_RECOVERY); } } Loading