support backup and restore on internal sdcard
Change-Id: I6295b5bb7ada967ca223758be58d555c1a2ff462
diff --git a/nandroid.c b/nandroid.c
index ffc5ac0..315660c 100644
--- a/nandroid.c
+++ b/nandroid.c
@@ -228,13 +228,17 @@
{
ui_set_background(BACKGROUND_ICON_INSTALLING);
- if (ensure_path_mounted("/sdcard") != 0)
- return print_and_error("Can't mount /sdcard\n");
+ if (ensure_path_mounted(backup_path) != 0) {
+ return print_and_error("Can't mount backup path.\n");
+ }
+ Volume* volume = volume_for_path(backup_path);
+ if (NULL == volume)
+ return print_and_error("Unable to find volume for backup path.\n");
int ret;
struct statfs s;
- if (0 != (ret = statfs("/sdcard", &s)))
- return print_and_error("Unable to stat /sdcard\n");
+ if (0 != (ret = statfs(volume->mount_point, &s)))
+ return print_and_error("Unable to stat backup path.\n");
uint64_t bavail = s.f_bavail;
uint64_t bsize = s.f_bsize;
uint64_t sdcard_free = bavail * bsize;
@@ -513,8 +517,8 @@
ui_show_indeterminate_progress();
yaffs_files_total = 0;
- if (ensure_path_mounted("/sdcard") != 0)
- return print_and_error("Can't mount /sdcard\n");
+ if (ensure_path_mounted(backup_path) != 0)
+ return print_and_error("Can't mount backup path\n");
char tmp[PATH_MAX];