diff options
author | Denis Vlasenko | 2008-07-21 23:05:26 +0000 |
---|---|---|
committer | Denis Vlasenko | 2008-07-21 23:05:26 +0000 |
commit | 5415c856eaccd1bc5d064022770a288f43b2e94f (patch) | |
tree | 5973db4e6f81b5e311e8944700ded5db1083d440 /editors | |
parent | b74a2dba571d1c5a6127c683fb50923336d9c59f (diff) | |
download | busybox-5415c856eaccd1bc5d064022770a288f43b2e94f.zip busybox-5415c856eaccd1bc5d064022770a288f43b2e94f.tar.gz |
libbb: [x]fopen_for_{read,write} introduced and used.
(by Valdimir)
function old new delta
config_open2 - 41 +41
config_read 507 542 +35
find_pair 169 187 +18
fopen_for_write - 14 +14
fopen_for_read - 14 +14
find_main 406 418 +12
xfopen_for_write - 10 +10
xfopen_for_read - 10 +10
popstring 134 140 +6
parse_inittab 396 401 +5
next_token 923 928 +5
pack_gzip 1659 1661 +2
bb__parsespent 117 119 +2
fallbackSort 1719 1717 -2
evalvar 1376 1374 -2
qrealloc 36 33 -3
...
...
...
...
singlemount 4579 4569 -10
process_stdin 443 433 -10
patch_main 1111 1101 -10
ifupdown_main 2175 2165 -10
file_action_grep 90 80 -10
uuidcache_init 649 637 -12
hush_main 797 785 -12
read_config 230 217 -13
dpkg_main 3835 3820 -15
read_line_input 3134 3110 -24
sysctl_main 232 203 -29
config_open 40 10 -30
WARN_BAD_LINE 44 - -44
login_main 1714 1575 -139
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
Diffstat (limited to 'editors')
-rw-r--r-- | editors/awk.c | 2 | ||||
-rw-r--r-- | editors/patch.c | 4 | ||||
-rw-r--r-- | editors/sed.c | 6 |
3 files changed, 6 insertions, 6 deletions
diff --git a/editors/awk.c b/editors/awk.c index 7af9e1e..571d681 100644 --- a/editors/awk.c +++ b/editors/awk.c @@ -2400,7 +2400,7 @@ static var *evaluate(node *op, var *res) X.rsm->F = popen(L.s, "r"); X.rsm->is_pipe = TRUE; } else { - X.rsm->F = fopen(L.s, "r"); /* not xfopen! */ + X.rsm->F = fopen_for_read(L.s); /* not xfopen! */ } } } else { diff --git a/editors/patch.c b/editors/patch.c index d5f6df2..e8482a7 100644 --- a/editors/patch.c +++ b/editors/patch.c @@ -131,9 +131,9 @@ int patch_main(int argc UNUSED_PARAM, char **argv) } else { backup_filename = xasprintf("%s.orig", new_filename); xrename(new_filename, backup_filename); - src_stream = xfopen(backup_filename, "r"); + src_stream = xfopen_for_read(backup_filename); } - dst_stream = xfopen(new_filename, "w"); + dst_stream = xfopen_for_write(new_filename); fchmod(fileno(dst_stream), saved_stat.st_mode); printf("patching file %s\n", new_filename); diff --git a/editors/sed.c b/editors/sed.c index 67e8841..496d3d2 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -438,7 +438,7 @@ static const char *parse_cmd_args(sed_cmd_t *sed_cmd, const char *cmdstr) bb_error_msg_and_die("command only uses one address"); cmdstr += parse_file_cmd(/*sed_cmd,*/ cmdstr, &sed_cmd->string); if (sed_cmd->cmd == 'w') { - sed_cmd->sw_file = xfopen(sed_cmd->string, "w"); + sed_cmd->sw_file = xfopen_for_write(sed_cmd->string); sed_cmd->sw_last_char = '\n'; } /* handle branch commands */ @@ -1025,7 +1025,7 @@ static void process_files(void) { FILE *rfile; - rfile = fopen(sed_cmd->string, "r"); + rfile = fopen_for_read(sed_cmd->string); if (rfile) { char *line; @@ -1271,7 +1271,7 @@ int sed_main(int argc UNUSED_PARAM, char **argv) while (opt_f) { // -f char *line; FILE *cmdfile; - cmdfile = xfopen(llist_pop(&opt_f), "r"); + cmdfile = xfopen_for_read(llist_pop(&opt_f)); while ((line = xmalloc_fgetline(cmdfile)) != NULL) { add_cmd(line); free(line); |