summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ubi-utils/ubicrc32.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/ubi-utils/ubicrc32.c b/ubi-utils/ubicrc32.c
index 0ea255d..885f348 100644
--- a/ubi-utils/ubicrc32.c
+++ b/ubi-utils/ubicrc32.c
@@ -89,19 +89,18 @@ int main(int argc, char * const argv[])
int err = 0;
uint32_t crc = UBI_CRC32_INIT;
char buf[BUFSIZE];
- FILE *fp;
-
- if (argc > 1) {
- fp = fopen(argv[1], "r");
- if (!fp)
- return sys_errmsg("cannot open \"%s\"", argv[1]);
- } else
- fp = stdin;
+ FILE *fp = stdin;
err = parse_opt(argc, argv);
if (err)
return err;
+ if (optind < argc) {
+ fp = fopen(argv[optind], "r");
+ if (!fp)
+ return sys_errmsg("cannot open \"%s\"", argv[1]);
+ }
+
while (!feof(fp)) {
size_t read;