diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-04-19 23:32:08 +0400 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-04-19 23:32:08 +0400 |
commit | f3745ea489c5ef454e2ce68926c5f39f5b30f240 (patch) | |
tree | c21d461878d61bdb01bca9c8cbb01e095cd48734 /include | |
parent | d9c51e9fa78f7ee6adb37543f77b4f85e57cccc4 (diff) |
libbb: introduce xmalloc_xopen_read_close and use where appropriate
instead of xmalloc_open_read_close.
function old new delta
xmalloc_xopen_read_close - 34 +34
xmalloc_open_read_close 163 171 +8
passwd_main 1070 1074 +4
rexecve 254 257 +3
handle_incoming_and_exit 2657 2659 +2
parse_command 1509 1510 +1
buffer_fill_and_print 76 73 -3
evaltreenr 599 589 -10
evaltree 599 589 -10
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/3 up/down: 52/-23) Total: 29 bytes
Diffstat (limited to 'include')
-rw-r--r-- | include/libbb.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/include/libbb.h b/include/libbb.h index 1c54a32d5..f9f28f983 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -556,7 +556,10 @@ extern char *reads(int fd, char *buf, size_t count); extern char *xmalloc_reads(int fd, char *pfx, size_t *maxsz_p); extern ssize_t read_close(int fd, void *buf, size_t maxsz); extern ssize_t open_read_close(const char *filename, void *buf, size_t maxsz); +/* Returns NULL if file can't be opened */ extern void *xmalloc_open_read_close(const char *filename, size_t *maxsz_p); +/* Never returns NULL */ +extern void *xmalloc_xopen_read_close(const char *filename, size_t *maxsz_p); extern ssize_t safe_write(int fd, const void *buf, size_t count); // NB: will return short write on error, not -1, @@ -568,9 +571,9 @@ extern void xwrite(int fd, const void *buf, size_t count); extern void xprint_and_close_file(FILE *file); /* Reads up to (and including) TERMINATING_STRING: */ extern char *xmalloc_fgets_str(FILE *file, const char *terminating_string); -/* Chops off TERMINATING_STRING: from the end: */ +/* Chops off TERMINATING_STRING from the end: */ extern char *xmalloc_fgetline_str(FILE *file, const char *terminating_string); -/* Reads up to (and including) "\n" or NUL byte */ +/* Reads up to (and including) "\n" or NUL byte: */ extern char *xmalloc_fgets(FILE *file); /* Chops off '\n' from the end, unlike fgets: */ extern char *xmalloc_fgetline(FILE *file); |