aboutsummaryrefslogtreecommitdiff
path: root/editors
diff options
context:
space:
mode:
Diffstat (limited to 'editors')
-rw-r--r--editors/cmp.c14
-rw-r--r--editors/sed.c11
2 files changed, 7 insertions, 18 deletions
diff --git a/editors/cmp.c b/editors/cmp.c
index 9189b3150..b211adf9f 100644
--- a/editors/cmp.c
+++ b/editors/cmp.c
@@ -23,16 +23,6 @@
23 23
24#include "libbb.h" 24#include "libbb.h"
25 25
26static FILE *cmp_xfopen_input(const char *filename)
27{
28 FILE *fp;
29
30 fp = fopen_or_warn_stdin(filename);
31 if (fp)
32 return fp;
33 xfunc_die(); /* We already output an error message. */
34}
35
36static const char fmt_eof[] ALIGN1 = "cmp: EOF on %s\n"; 26static const char fmt_eof[] ALIGN1 = "cmp: EOF on %s\n";
37static const char fmt_differ[] ALIGN1 = "%s %s differ: char %"OFF_FMT"d, line %d\n"; 27static const char fmt_differ[] ALIGN1 = "%s %s differ: char %"OFF_FMT"d, line %d\n";
38// This fmt_l_opt uses gnu-isms. SUSv3 would be "%.0s%.0s%"OFF_FMT"d %o %o\n" 28// This fmt_l_opt uses gnu-isms. SUSv3 would be "%.0s%.0s%"OFF_FMT"d %o %o\n"
@@ -65,7 +55,7 @@ int cmp_main(int argc ATTRIBUTE_UNUSED, char **argv)
65 argv += optind; 55 argv += optind;
66 56
67 filename1 = *argv; 57 filename1 = *argv;
68 fp1 = cmp_xfopen_input(filename1); 58 fp1 = xfopen_stdin(filename1);
69 59
70 if (*++argv) { 60 if (*++argv) {
71 filename2 = *argv; 61 filename2 = *argv;
@@ -79,7 +69,7 @@ int cmp_main(int argc ATTRIBUTE_UNUSED, char **argv)
79#endif 69#endif
80 } 70 }
81 71
82 fp2 = cmp_xfopen_input(filename2); 72 fp2 = xfopen_stdin(filename2);
83 if (fp1 == fp2) { /* Paranoia check... stdin == stdin? */ 73 if (fp1 == fp2) { /* Paranoia check... stdin == stdin? */
84 /* Note that we don't bother reading stdin. Neither does gnu wc. 74 /* Note that we don't bother reading stdin. Neither does gnu wc.
85 * But perhaps we should, so that other apps down the chain don't 75 * But perhaps we should, so that other apps down the chain don't
diff --git a/editors/sed.c b/editors/sed.c
index a0994aec0..32911f8f9 100644
--- a/editors/sed.c
+++ b/editors/sed.c
@@ -1231,7 +1231,7 @@ static void add_cmd_block(char *cmdstr)
1231} 1231}
1232 1232
1233int sed_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; 1233int sed_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
1234int sed_main(int argc, char **argv) 1234int sed_main(int argc ATTRIBUTE_UNUSED, char **argv)
1235{ 1235{
1236 enum { 1236 enum {
1237 OPT_in_place = 1 << 0, 1237 OPT_in_place = 1 << 0,
@@ -1246,7 +1246,7 @@ int sed_main(int argc, char **argv)
1246 if (ENABLE_FEATURE_CLEAN_UP) atexit(sed_free_and_close_stuff); 1246 if (ENABLE_FEATURE_CLEAN_UP) atexit(sed_free_and_close_stuff);
1247 1247
1248 /* Lie to autoconf when it starts asking stupid questions. */ 1248 /* Lie to autoconf when it starts asking stupid questions. */
1249 if (argc == 2 && !strcmp(argv[1], "--version")) { 1249 if (argv[1] && !strcmp(argv[1], "--version")) {
1250 puts("This is not GNU sed version 4.0"); 1250 puts("This is not GNU sed version 4.0");
1251 return 0; 1251 return 0;
1252 } 1252 }
@@ -1257,7 +1257,7 @@ int sed_main(int argc, char **argv)
1257 "nn"; /* count -n */ 1257 "nn"; /* count -n */
1258 opt = getopt32(argv, "irne:f:", &opt_e, &opt_f, 1258 opt = getopt32(argv, "irne:f:", &opt_e, &opt_f,
1259 &G.be_quiet); /* counter for -n */ 1259 &G.be_quiet); /* counter for -n */
1260 argc -= optind; 1260 //argc -= optind;
1261 argv += optind; 1261 argv += optind;
1262 if (opt & OPT_in_place) { // -i 1262 if (opt & OPT_in_place) { // -i
1263 atexit(cleanup_outname); 1263 atexit(cleanup_outname);
@@ -1283,10 +1283,9 @@ int sed_main(int argc, char **argv)
1283 } 1283 }
1284 /* if we didn't get a pattern from -e or -f, use argv[0] */ 1284 /* if we didn't get a pattern from -e or -f, use argv[0] */
1285 if (!(opt & 0x18)) { 1285 if (!(opt & 0x18)) {
1286 if (!argc) 1286 if (!*argv)
1287 bb_show_usage(); 1287 bb_show_usage();
1288 add_cmd_block(*argv++); 1288 add_cmd_block(*argv++);
1289 argc--;
1290 } 1289 }
1291 /* Flush any unfinished commands. */ 1290 /* Flush any unfinished commands. */
1292 add_cmd(""); 1291 add_cmd("");
@@ -1306,7 +1305,7 @@ int sed_main(int argc, char **argv)
1306 int i; 1305 int i;
1307 FILE *file; 1306 FILE *file;
1308 1307
1309 for (i = 0; i < argc; i++) { 1308 for (i = 0; argv[i]; i++) {
1310 struct stat statbuf; 1309 struct stat statbuf;
1311 int nonstdoutfd; 1310 int nonstdoutfd;
1312 1311