do error checking of nandroid operations
diff --git a/extendedcommands.c b/extendedcommands.c
index c491d84..a59b9b0 100644
--- a/extendedcommands.c
+++ b/extendedcommands.c
@@ -192,7 +192,11 @@
void do_nandroid_backup()
{
ui_print("Performing backup...\n");
- system("/sbin/nandroid-mobile.sh backup");
+ if (system("/sbin/nandroid-mobile.sh backup") != 0)
+ {
+ ui_print("Error while backing up!\n");
+ return;
+ }
ui_print("Backup complete.\n");
}
@@ -208,10 +212,10 @@
NULL
};
- system("cat /proc/cmdline | sed 's/.*serialno=//' | cut -d' ' -f1 > /.deviceid");
+ int ret = system("cat /proc/cmdline | sed 's/.*serialno=//' | cut -d' ' -f1 > /.deviceid");
FILE *deviceIdFile = fopen(".deviceid", "r");
char deviceId[256];
- if (deviceIdFile == NULL)
+ if (deviceIdFile == NULL || ret == 0)
{
ui_print("Unable to retrieve device id.\n");
return;
@@ -233,6 +237,11 @@
char* command[PATH_MAX];
sprintf(command, "nandroid-mobile.sh restore %s", file);
ui_print("Performing restore...\n");
- system(command);
+ ret = system(command);
+ if (ret != 0)
+ {
+ ui_print("Error while restoring!\n");
+ return;
+ }
ui_print("Restore complete.\n");
}
\ No newline at end of file