=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/buf.c,v retrieving revision 1.47 retrieving revision 1.48 diff -c -r1.47 -r1.48 *** src/usr.bin/cvs/buf.c 2006/04/12 07:56:58 1.47 --- src/usr.bin/cvs/buf.c 2006/04/13 19:11:30 1.48 *************** *** 1,4 **** ! /* $OpenBSD: buf.c,v 1.47 2006/04/12 07:56:58 ray Exp $ */ /* * Copyright (c) 2003 Jean-Francois Brousseau * All rights reserved. --- 1,4 ---- ! /* $OpenBSD: buf.c,v 1.48 2006/04/13 19:11:30 joris Exp $ */ /* * Copyright (c) 2003 Jean-Francois Brousseau * All rights reserved. *************** *** 176,188 **** size_t rlen = 0; if (b->cb_size < (len + off)) { ! if ((b->cb_flags & BUF_AUTOEXT)) cvs_buf_grow(b, len + off - b->cb_size); ! else rlen = b->cb_size - off; ! } else rlen = len; memcpy((b->cb_buf + off), src, rlen); if (b->cb_len == 0) { --- 176,192 ---- size_t rlen = 0; if (b->cb_size < (len + off)) { ! if ((b->cb_flags & BUF_AUTOEXT)) { cvs_buf_grow(b, len + off - b->cb_size); ! rlen = len + off; ! } else { rlen = b->cb_size - off; ! } ! } else { rlen = len; + } + b->cb_len = rlen; memcpy((b->cb_buf + off), src, rlen); if (b->cb_len == 0) {