diff options
| -rw-r--r-- | libcutils/Android.mk | 5 | ||||
| -rw-r--r-- | libcutils/android_reboot.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/libcutils/Android.mk b/libcutils/Android.mk index 5c227b6d..e98c6a8a 100644 --- a/libcutils/Android.mk +++ b/libcutils/Android.mk @@ -141,7 +141,12 @@ endif # !x86-atom endif # !sh endif # !arm +ifneq ($(TARGET_RECOVERY_PRE_COMMAND),) + LOCAL_CFLAGS += -DRECOVERY_PRE_COMMAND='$(TARGET_RECOVERY_PRE_COMMAND)' +endif + LOCAL_C_INCLUDES := $(libcutils_c_includes) $(KERNEL_HEADERS) + LOCAL_STATIC_LIBRARIES := liblog LOCAL_CFLAGS += $(targetSmpFlag) include $(BUILD_STATIC_LIBRARY) diff --git a/libcutils/android_reboot.c b/libcutils/android_reboot.c index 33a7358e..c6d30522 100644 --- a/libcutils/android_reboot.c +++ b/libcutils/android_reboot.c @@ -121,6 +121,10 @@ int android_reboot(int cmd, int flags, char *arg) break; case ANDROID_RB_RESTART2: +#ifdef RECOVERY_PRE_COMMAND + if (!strncmp((char *)arg,"recovery",8)) + system( RECOVERY_PRE_COMMAND ); +#endif ret = __reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, LINUX_REBOOT_CMD_RESTART2, arg); break; |
