aboutsummaryrefslogtreecommitdiff
path: root/libbb/xfuncs.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-08-14 16:55:01 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-08-14 16:55:01 +0000
commit384b1d12f957a3a4c80fb32bc29cb79c282ac361 (patch)
tree8011c52fb98f2613626edfcd879508bc5c45d66a /libbb/xfuncs.c
parent0372f0f1999ace825a2265ad03b80be627b039fb (diff)
downloadbusybox-384b1d12f957a3a4c80fb32bc29cb79c282ac361.tar.gz
httpd: add -v[v]: prints client addresses, HTTP codes returned [and URLs]
get_line - 70 +70 packed_usage 22811 22863 +52 handle_incoming_and_exit 2246 2277 +31 httpd_main 1141 1155 +14 sendHeaders 489 482 -7 getLine 77 - -77 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 3/1 up/down: 167/-84) Total: 83 bytes text data bss dec hex filename 774335 1058 11092 786485 c0035 busybox_old 774447 1058 11092 786597 c00a5 busybox_unstripped
Diffstat (limited to 'libbb/xfuncs.c')
-rw-r--r--libbb/xfuncs.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index 67c986640..4e17c28bd 100644
--- a/libbb/xfuncs.c
+++ b/libbb/xfuncs.c
@@ -484,12 +484,14 @@ int fdprintf(int fd, const char *format, ...)
#else
// Bloat for systems that haven't got the GNU extension.
va_start(p, format);
- r = vsnprintf(NULL, 0, format, p);
- va_end(p);
- string_ptr = xmalloc(r+1);
- va_start(p, format);
- r = vsnprintf(string_ptr, r+1, format, p);
+ r = vsnprintf(NULL, 0, format, p) + 1;
va_end(p);
+ string_ptr = malloc(r);
+ if (string_ptr) {
+ va_start(p, format);
+ r = vsnprintf(string_ptr, r, format, p);
+ va_end(p);
+ }
#endif
if (r >= 0) {