Fix mount USB storage bug. Fix bug where boot image was not being restored by Nandroid.
diff --git a/extendedcommands.c b/extendedcommands.c
index 23c15ef..4ea3787 100644
--- a/extendedcommands.c
+++ b/extendedcommands.c
@@ -352,7 +352,7 @@
 
 void show_mount_usb_storage_menu()
 {
-    system("echo /dev/block/mmcblk0 > /sys/devices/platform/usb_mass_storage/lun0/file");
+    __system("echo /dev/block/mmcblk0 > /sys/devices/platform/usb_mass_storage/lun0/file");
     static char* headers[] = {  "USB Mass Storage device",
                                 "Leaving this menu unmount",
                                 "your SD card from your PC.",
@@ -369,8 +369,8 @@
             break;
     }
     
-    system("echo '' > /sys/devices/platform/usb_mass_storage/lun0/file");
-    system("echo 0 > /sys/devices/platform/usb_mass_storage/lun0/enable");
+    __system("echo '' > /sys/devices/platform/usb_mass_storage/lun0/file");
+    __system("echo 0 > /sys/devices/platform/usb_mass_storage/lun0/enable");
 }
 
 
@@ -382,7 +382,7 @@
     };
 
     typedef char* string;
-    string mounts[3][3] = { 
+    string mounts[4][3] = { 
         { "mount /system", "unmount /system", "SYSTEM:" },
         { "mount /data", "unmount /data", "DATA:" },
         { "mount /cache", "unmount /cache", "CACHE:" },
@@ -391,17 +391,17 @@
         
     for (;;)
     {
-        int ismounted[3];
+        int ismounted[4];
         int i;
-        static string options[5];
-        for (i = 0; i < 3; i++)
+        static string options[6];
+        for (i = 0; i < 4; i++)
         {
             ismounted[i] = is_root_path_mounted(mounts[i][2]);
             options[i] = ismounted[i] ? mounts[i][1] : mounts[i][0];
         }
     
-        options[3] = "mount USB storage";
-        options[4] = NULL;
+        options[4] = "mount USB storage";
+        options[5] = NULL;
         
         int chosen_item = get_menu_selection(headers, options, 0);
         if (chosen_item == GO_BACK)