GNU bug report logs - #35762
When `test-driver` script + `check` testing framework are writing to same logfile = corrupted output

Previous Next

Package: automake;

Reported by: howaboutsynergy <at> protonmail.com

Date: Thu, 16 May 2019 14:32:01 UTC

Severity: normal

Done: Karl Berry <karl <at> freefriends.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eric Blake <eblake <at> redhat.com>
To: howaboutsynergy <at> protonmail.com, "35762 <at> debbugs.gnu.org" <35762 <at> debbugs.gnu.org>
Subject: bug#35762: (No Subject)
Date: Thu, 16 May 2019 13:12:50 -0500
[Message part 1 (text/plain, inline)]
On 5/16/19 12:40 PM, howaboutsynergy <at> protonmail.com wrote:
> A possible fix, or mitigation, based on the answer by John Bollinger[1] follows. I have tested this to work[2] even though it requires changes[2] in the program that created the test(s) executables and that program is 'check' - A unit testing framework for C [3].
> 
> [1] https://stackoverflow.com/a/56168216/11509478
> [2] https://github.com/libcheck/check/issues/188#issuecomment-493161758
> [3] https://github.com/libcheck/check
> 
> --- /tmp/test-driver	2018-09-18 15:06:54.000000000 +0200
> +++ /usr/share/automake-1.16/test-driver	2019-05-16 17:58:09.690988983 +0200
> @@ -104,7 +104,8 @@ trap "st=141; $do_exit" 13
>  trap "st=143; $do_exit" 15
> 
>  # Test script is run here.
> -"$@" >$log_file 2>&1
> +echo -n "" >"$log_file"

'echo -n' is non-portable, but since all you are doing is using it to
create an empty file, it's simpler to just:

: >"$log_file"

> +"$@" >>"$log_file" 2>&1
>  estatus=$?
> 
>  if test $enable_hard_errors = no && test $estatus -eq 99; then
> 
> 
> (the above patch is also attached)
> 
> Cheers.
> 

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

[signature.asc (application/pgp-signature, attachment)]

This bug report was last modified 4 years and 259 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.