Bug ID 1127700
Summary bash patch bash50-001/bash50-002 seems to break env expansion
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Basesystem
Assignee bnc-team-screening@forge.provo.novell.com
Reporter dmueller@suse.com
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

Tony Jones made me aware that using build(1) on tumbleweed is no longer
possible for his userid. It is not really clear whats special about his user
but we digged this far:

build(1) at some point runs this function:

recipe_setup_spec() {
    TOPDIR=`chroot $BUILD_ROOT su -c "rpm --eval '%_topdir'" - $BUILD_USER`
    if test -z "$TOPDIR"; then
        cleanup_and_exit 1 "Error: TOPDIR empty"
    fi
    test "$DO_INIT_TOPDIR" = false || rm -rf "$BUILD_ROOT$TOPDIR"
    for i in BUILD RPMS/`uname -m` RPMS/i386 RPMS/noarch SOURCES SPECS SRPMS
BUILDROOT OTHER ; do
        mkdir -p $BUILD_ROOT$TOPDIR/$i
    done
    chown -R "$ABUILD_UID:$ABUILD_GID" "$BUILD_ROOT$TOPDIR"
    mkdir -p $BUILD_ROOT$TOPDIR/SOURCES
    echo ":: MYSRCDIR: $MYSRCDIR"
    ls -ld "$MYSRCDIR"/*
    cp -p "$MYSRCDIR"/* $BUILD_ROOT$TOPDIR/SOURCES/
}


what we observed is that 

  cp -p "$MYSRCDIR"/* $BUILD_ROOT/ ..

expands to

  cp -p <empty> $BUILD_ROOT

leading to an error message. we have validated that $MYSRCDIR is actually
properly set (as can be seen by the echo before". with other words

  ls -ld "$MYSRCDIR"/*

expands to *empty*, while

  ls -ld $MYSRCDIR/*

properly expands. MYSRCDIR is without spaces or other weird characters (the
only non-normal thing in there is a literal '.'). 

We have validated that building bash without bash50-001/bash50-002 patches
fixes this problem.


You are receiving this mail because: