← Commit list

cf40d8175

"Vladimir N. Oleynik"
"Vladimir N. Oleynik"
2005-09-23
SOURCE BUG Duration: 6s

Subject

grep must have exit code >1 if input file not found. Small indent correcion also.

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

findutils/grep.c+6 -2
@@ -260,6 +260,7 @@ extern int grep_main(int argc, char **argv)
int matched;
unsigned long opt;
llist_t *fopt = NULL;
+ int error_open_count = 0;
/* do normal option parsing */
#ifdef CONFIG_FEATURE_GREP_CONTEXT
@@ -375,6 +376,7 @@ extern int grep_main(int argc, char **argv)
if (file == NULL) {
if (!suppress_err_msgs)
bb_perror_msg("%s", cur_file);
+ error_open_count++;
} else {
matched += grep_file(file);
if(matched < 0) {
@@ -382,9 +384,9 @@ extern int grep_main(int argc, char **argv)
* return success */
break;
}
- fclose(file);
- }
+ fclose(file);
}
+ }
#ifdef CONFIG_FEATURE_CLEAN_UP
/* destroy all the elments in the pattern list */
@@ -396,5 +398,7 @@ extern int grep_main(int argc, char **argv)
}
#endif
+ if(error_open_count)
+ return 2;
return !matched; /* invert return value 0 = success, 1 = failed */
}