[pacman-dev] [PATCH] Make log redirection saner

Dan McGee dpmcgee at gmail.com
Thu Mar 24 15:07:23 EDT 2011


On Thu, Mar 24, 2011 at 7:30 AM, Jan Steffens <jan.steffens at gmail.com> wrote:
> My main motivation was to remove the "sync", which can stall for
> minutes on a busy machine (FS#23378). I also cleaned up the redirection.
>
> Signed-off-by: Jan Steffens <jan.steffens at gmail.com>
Fine with the patch, but can I ask how rigorous the testing is this
has gone through? I'd want to be relatively certain we don't regress
here since this will land on maint.

-Dan

> ---
>  scripts/makepkg.sh.in |   11 +++++------
>  1 files changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index 5742c49..0b3891e 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -794,15 +794,14 @@ run_function() {
>                # ensure overridden package variables survive tee with split packages
>                logpipe=$(mktemp -u "$startdir/logpipe.XXXXXXXX")
>                mkfifo "$logpipe"
> -               exec 3>&1
> -               tee "$BUILDLOG" < "$logpipe" &
> -               exec 1>"$logpipe" 2>"$logpipe"
> +               tee "$BUILDLOG" < "$logpipe" & teepid=$!
> +
>                restoretrap=$(trap -p ERR)
>                trap 'error_function $pkgfunc' ERR
> -               $pkgfunc 2>&1
> +               $pkgfunc &>"$logpipe"
>                eval $restoretrap
> -               sync
> -               exec 1>&3 2>&3 3>&-
> +
> +               wait $teepid
>                rm "$logpipe"
>        else
>                restoretrap=$(trap -p ERR)
> --
> 1.7.4.1
>
>
>


More information about the pacman-dev mailing list