mtd: fix r24132
[openwrt/openwrt.git] / package / mtd / src / mtd.c
index e4b6c79f02f14bcc52ea285447a210b6cf841346..5ec79dce0f53ce1ab45ce36c0d432f7039bd336c 100644 (file)
@@ -519,35 +519,35 @@ resume:
                }
 
                /* need to erase the next block before writing data to it */
-    if(no_erase)
-    {
-               while (w + buflen > e) {
-                       if (!quiet)
-                               fprintf(stderr, "\b\b\b[e]");
-
-
-                       if (mtd_erase_block(fd, e) < 0) {
-                               if (next) {
-                                       if (w < e) {
-                                               write(fd, buf + offset, e - w);
-                                               offset = e - w;
+               if(!no_erase)
+               {
+                       while (w + buflen > e) {
+                               if (!quiet)
+                                       fprintf(stderr, "\b\b\b[e]");
+
+
+                               if (mtd_erase_block(fd, e) < 0) {
+                                       if (next) {
+                                               if (w < e) {
+                                                       write(fd, buf + offset, e - w);
+                                                       offset = e - w;
+                                               }
+                                               w = 0;
+                                               e = 0;
+                                               close(fd);
+                                               mtd = next;
+                                               fprintf(stderr, "\b\b\b   \n");
+                                               goto resume;
+                                       } else {
+                                               fprintf(stderr, "Failed to erase block\n");
+                                               exit(1);
                                        }
-                                       w = 0;
-                                       e = 0;
-                                       close(fd);
-                                       mtd = next;
-                                       fprintf(stderr, "\b\b\b   \n");
-                                       goto resume;
-                               } else {
-                                       fprintf(stderr, "Failed to erase block\n");
-                                       exit(1);
                                }
-                       }
 
-                       /* erase the chunk */
-                       e += erasesize;
-               }
-    }
+                               /* erase the chunk */
+                               e += erasesize;
+                       }
+           }
 
                if (!quiet)
                        fprintf(stderr, "\b\b\b[w]");
@@ -665,9 +665,9 @@ int main (int argc, char **argv)
                        case 'r':
                                boot = 1;
                                break;
-      case 'n':
-        no_erase = 1;
-        break;
+                       case 'n':
+                               no_erase = 1;
+                               break;
                        case 'j':
                                jffs2file = optarg;
                                break;