diff --git a/Android.mk b/Android.mk index 336f75f..c660ae0 100644 --- a/Android.mk +++ b/Android.mk @@ -38,7 +38,7 @@ LOCAL_CFLAGS += -DRECOVERY_VERSION="$(RECOVERY_VERSION)" RECOVERY_API_VERSION := 2 LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION) -BOARD_RECOVERY_DEFINES := BOARD_HAS_NO_SELECT_BUTTON BOARD_HAS_SMALL_RECOVERY BOARD_LDPI_RECOVERY BOARD_UMS_LUNFILE BOARD_RECOVERY_ALWAYS_WIPES +BOARD_RECOVERY_DEFINES := BOARD_HAS_NO_SELECT_BUTTON BOARD_HAS_SMALL_RECOVERY BOARD_LDPI_RECOVERY BOARD_UMS_LUNFILE BOARD_RECOVERY_ALWAYS_WIPES BOARD_RECOVERY_HANDLES_MOUNT $(foreach board_define,$(BOARD_RECOVERY_DEFINES), \ $(if $($(board_define)), \ diff --git a/recovery.c b/recovery.c index 89fb214..d0dee32 100644 --- a/recovery.c +++ b/recovery.c @@ -787,6 +787,13 @@ main(int argc, char **argv) { return nandroid_main(argc, argv); if (strstr(argv[0], "reboot")) return reboot_main(argc, argv); +#ifdef BOARD_RECOVERY_HANDLES_MOUNT + if (strstr(argv[0], "mount") && argc == 2 && !strstr(argv[0], "umount")) + { + load_volume_table(); + return ensure_path_mounted(argv[1]); + } +#endif if (strstr(argv[0], "poweroff")){ return reboot_main(argc, argv); }