Added a fatalPerror function to simplify error handling.
This commit is contained in:
parent
b60208dd8f
commit
324a778f31
@ -345,6 +345,7 @@ extern const char *applet_name;
|
||||
extern void usage(const char *usage) __attribute__ ((noreturn));
|
||||
extern void errorMsg(const char *s, ...) __attribute__ ((format (printf, 1, 2)));
|
||||
extern void fatalError(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2)));
|
||||
extern void fatalPerror(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2)));
|
||||
|
||||
const char *modeString(int mode);
|
||||
const char *timeString(time_t timeVal);
|
||||
|
@ -116,8 +116,7 @@ extern int dd_main(int argc, char **argv)
|
||||
* here anyways... */
|
||||
|
||||
/* free(buf); */
|
||||
perror(inFile);
|
||||
exit(FALSE);
|
||||
fatalPerror("%s", inFile);
|
||||
}
|
||||
|
||||
if (outFile == NULL)
|
||||
@ -132,8 +131,7 @@ extern int dd_main(int argc, char **argv)
|
||||
|
||||
/* close(inFd);
|
||||
free(buf); */
|
||||
perror(outFile);
|
||||
exit(FALSE);
|
||||
fatalPerror("%s", outFile);
|
||||
}
|
||||
|
||||
lseek(inFd, (off_t) (skipBlocks * blockSize), SEEK_SET);
|
||||
|
6
dd.c
6
dd.c
@ -116,8 +116,7 @@ extern int dd_main(int argc, char **argv)
|
||||
* here anyways... */
|
||||
|
||||
/* free(buf); */
|
||||
perror(inFile);
|
||||
exit(FALSE);
|
||||
fatalPerror("%s", inFile);
|
||||
}
|
||||
|
||||
if (outFile == NULL)
|
||||
@ -132,8 +131,7 @@ extern int dd_main(int argc, char **argv)
|
||||
|
||||
/* close(inFd);
|
||||
free(buf); */
|
||||
perror(outFile);
|
||||
exit(FALSE);
|
||||
fatalPerror("%s", outFile);
|
||||
}
|
||||
|
||||
lseek(inFd, (off_t) (skipBlocks * blockSize), SEEK_SET);
|
||||
|
@ -345,6 +345,7 @@ extern const char *applet_name;
|
||||
extern void usage(const char *usage) __attribute__ ((noreturn));
|
||||
extern void errorMsg(const char *s, ...) __attribute__ ((format (printf, 1, 2)));
|
||||
extern void fatalError(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2)));
|
||||
extern void fatalPerror(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2)));
|
||||
|
||||
const char *modeString(int mode);
|
||||
const char *timeString(time_t timeVal);
|
||||
|
17
utility.c
17
utility.c
@ -109,6 +109,23 @@ extern void fatalError(const char *s, ...)
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
extern void fatalPerror(const char *s, ...)
|
||||
{
|
||||
va_list p;
|
||||
|
||||
va_start(p, s);
|
||||
fflush(stdout);
|
||||
fprintf(stderr, "%s: ", applet_name);
|
||||
if (s && *s) {
|
||||
vfprintf(stderr, s, p);
|
||||
fputs(": ", stderr);
|
||||
}
|
||||
fprintf(stderr, "%s\n", strerror(errno));
|
||||
va_end(p);
|
||||
fflush(stderr);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
#if defined BB_INIT
|
||||
/* Returns kernel version encoded as major*65536 + minor*256 + patch,
|
||||
* so, for example, to check if the kernel is greater than 2.2.11:
|
||||
|
Loading…
Reference in New Issue
Block a user