Skip to content
  • A. Wilcox's avatar
    abuild: ensure a package has deps before printing them · f1faef78
    A. Wilcox authored and Natanael Copa's avatar Natanael Copa committed
    After the first dep is printed, `shift` is called to avoid the special
    case where the first dep cannot have a comma prepended.  However,
    if there are no deps for a package (seen early on in the aports main
    repo in acf-jquery), $# is 0.  POSIX specifies that `shift` has two
    options when the shift operand (1) is greater than $#:
    
    - if non-interactive, it can exit the shell
    - if it does not exit the shell, it must return a non-zero exit code
    
    Since we run the shell with -e, the second case folds in to the first.
    
    BusyBox ash does not implement this behaviour, but bash does when called
    as /bin/sh or when the `posix` shopt is set.
    f1faef78