From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3197 invoked by alias); 24 Sep 2011 21:12:36 -0000 Received: (qmail 3177 invoked by uid 9737); 24 Sep 2011 21:12:36 -0000 Date: Sat, 24 Sep 2011 21:12:00 -0000 Message-ID: <20110924211236.3175.qmail@sourceware.org> From: zkabelac@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2/test/lib harness.c Mailing-List: contact lvm2-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: lvm2-cvs-owner@sourceware.org X-SW-Source: 2011-09/txt/msg00125.txt.bz2 CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: zkabelac@sourceware.org 2011-09-24 21:12:35 Modified files: test/lib : harness.c Log message: Avoid sending garbage to terminal in verbose mode. When read in drain returned <0 value, terminal content has been trashed. Remove unneeded memset() and use whole buffer. Free readbuf before exit (valgrind). Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/lib/harness.c.diff?cvsroot=lvm2&r1=1.7&r2=1.8 --- LVM2/test/lib/harness.c 2011/03/10 14:47:22 1.7 +++ LVM2/test/lib/harness.c 2011/09/24 21:12:35 1.8 @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010 Red Hat, Inc. All rights reserved. + * Copyright (C) 2010-2011 Red Hat, Inc. All rights reserved. * * This file is part of LVM2. * @@ -126,14 +126,13 @@ static void drain(void) { int sz; char buf[2048]; - memset(buf, 0, 2048); while (1) { - sz = read(fds[1], buf, 2047); - if (verbose) - write(1, buf, sz); + sz = read(fds[1], buf, sizeof(buf)); if (sz <= 0) return; + if (verbose) + write(1, buf, sz); if (readbuf_used + sz >= readbuf_sz) { readbuf_sz = readbuf_sz ? 2 * readbuf_sz : 4096; readbuf = realloc(readbuf, readbuf_sz); @@ -291,5 +290,7 @@ return s.nfailed > 0 || die; } + free(readbuf); + return die; }