=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ssh/Attic/buffer.c,v retrieving revision 1.16.2.1 retrieving revision 1.16.2.2 diff -u -r1.16.2.1 -r1.16.2.2 --- src/usr.bin/ssh/Attic/buffer.c 2003/09/16 21:20:24 1.16.2.1 +++ src/usr.bin/ssh/Attic/buffer.c 2003/09/16 21:25:56 1.16.2.2 @@ -12,7 +12,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: buffer.c,v 1.16.2.1 2003/09/16 21:20:24 brad Exp $"); +RCSID("$OpenBSD: buffer.c,v 1.16.2.2 2003/09/16 21:25:56 brad Exp $"); #include "xmalloc.h" #include "buffer.h" @@ -23,8 +23,11 @@ void buffer_init(Buffer *buffer) { - buffer->alloc = 4096; - buffer->buf = xmalloc(buffer->alloc); + const u_int len = 4096; + + buffer->alloc = 0; + buffer->buf = xmalloc(len); + buffer->alloc = len; buffer->offset = 0; buffer->end = 0; } @@ -34,8 +37,10 @@ void buffer_free(Buffer *buffer) { - memset(buffer->buf, 0, buffer->alloc); - xfree(buffer->buf); + if (buffer->alloc > 0) { + memset(buffer->buf, 0, buffer->alloc); + xfree(buffer->buf); + } } /*