|
@@ -383,65 +383,66 @@ NXTARG: ;
|
|
|
exit (EXIT_FAILURE);
|
|
|
}
|
|
|
|
|
|
- if (!params.skipcpy &&
|
|
|
- (params.type == IH_TYPE_MULTI ||
|
|
|
- params.type == IH_TYPE_SCRIPT)) {
|
|
|
- char *file = params.datafile;
|
|
|
- uint32_t size;
|
|
|
-
|
|
|
- for (;;) {
|
|
|
- char *sep = NULL;
|
|
|
-
|
|
|
- if (file) {
|
|
|
- if ((sep = strchr(file, ':')) != NULL) {
|
|
|
- *sep = '\0';
|
|
|
+ if (!params.skipcpy) {
|
|
|
+ if (params.type == IH_TYPE_MULTI ||
|
|
|
+ params.type == IH_TYPE_SCRIPT) {
|
|
|
+ char *file = params.datafile;
|
|
|
+ uint32_t size;
|
|
|
+
|
|
|
+ for (;;) {
|
|
|
+ char *sep = NULL;
|
|
|
+
|
|
|
+ if (file) {
|
|
|
+ if ((sep = strchr(file, ':')) != NULL) {
|
|
|
+ *sep = '\0';
|
|
|
+ }
|
|
|
+
|
|
|
+ if (stat (file, &sbuf) < 0) {
|
|
|
+ fprintf (stderr, "%s: Can't stat %s: %s\n",
|
|
|
+ params.cmdname, file, strerror(errno));
|
|
|
+ exit (EXIT_FAILURE);
|
|
|
+ }
|
|
|
+ size = cpu_to_uimage (sbuf.st_size);
|
|
|
+ } else {
|
|
|
+ size = 0;
|
|
|
}
|
|
|
|
|
|
- if (stat (file, &sbuf) < 0) {
|
|
|
- fprintf (stderr, "%s: Can't stat %s: %s\n",
|
|
|
- params.cmdname, file, strerror(errno));
|
|
|
+ if (write(ifd, (char *)&size, sizeof(size)) != sizeof(size)) {
|
|
|
+ fprintf (stderr, "%s: Write error on %s: %s\n",
|
|
|
+ params.cmdname, params.imagefile,
|
|
|
+ strerror(errno));
|
|
|
exit (EXIT_FAILURE);
|
|
|
}
|
|
|
- size = cpu_to_uimage (sbuf.st_size);
|
|
|
- } else {
|
|
|
- size = 0;
|
|
|
- }
|
|
|
|
|
|
- if (write(ifd, (char *)&size, sizeof(size)) != sizeof(size)) {
|
|
|
- fprintf (stderr, "%s: Write error on %s: %s\n",
|
|
|
- params.cmdname, params.imagefile,
|
|
|
- strerror(errno));
|
|
|
- exit (EXIT_FAILURE);
|
|
|
- }
|
|
|
+ if (!file) {
|
|
|
+ break;
|
|
|
+ }
|
|
|
|
|
|
- if (!file) {
|
|
|
- break;
|
|
|
+ if (sep) {
|
|
|
+ *sep = ':';
|
|
|
+ file = sep + 1;
|
|
|
+ } else {
|
|
|
+ file = NULL;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- if (sep) {
|
|
|
- *sep = ':';
|
|
|
- file = sep + 1;
|
|
|
- } else {
|
|
|
- file = NULL;
|
|
|
- }
|
|
|
- }
|
|
|
+ file = params.datafile;
|
|
|
|
|
|
- file = params.datafile;
|
|
|
-
|
|
|
- for (;;) {
|
|
|
- char *sep = strchr(file, ':');
|
|
|
- if (sep) {
|
|
|
- *sep = '\0';
|
|
|
- copy_file (ifd, file, 1);
|
|
|
- *sep++ = ':';
|
|
|
- file = sep;
|
|
|
- } else {
|
|
|
- copy_file (ifd, file, 0);
|
|
|
- break;
|
|
|
+ for (;;) {
|
|
|
+ char *sep = strchr(file, ':');
|
|
|
+ if (sep) {
|
|
|
+ *sep = '\0';
|
|
|
+ copy_file (ifd, file, 1);
|
|
|
+ *sep++ = ':';
|
|
|
+ file = sep;
|
|
|
+ } else {
|
|
|
+ copy_file (ifd, file, 0);
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
+ } else {
|
|
|
+ copy_file (ifd, params.datafile, 0);
|
|
|
}
|
|
|
- } else {
|
|
|
- copy_file (ifd, params.datafile, 0);
|
|
|
}
|
|
|
|
|
|
/* We're a bit of paranoid */
|