On Wed, Feb 18, 2009 at 10:19 AM, Xavier Chantry <[email protected]> wrote:
> REPO_DB_FILE does not need to be an absolute path anymore so no need to
> call realpath.
>
> Signed-off-by: Xavier Chantry <[email protected]>
> ---
>  scripts/repo-add.sh.in |   31 +++++++++++++++----------------
>  1 files changed, 15 insertions(+), 16 deletions(-)
>
> diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in
> index 6b10527..7a271c4 100644
> --- a/scripts/repo-add.sh.in
> +++ b/scripts/repo-add.sh.in
> @@ -317,7 +317,7 @@ for arg in "$@"; do
>                QUIET=1
>        elif [ -z "$REPO_DB_FILE" ]; then
>                # store absolute path to repo DB
> -               REPO_DB_FILE=$($realpath "$arg")
> +               REPO_DB_FILE="$arg"
>                if [ -f "$REPO_DB_FILE" ]; then
>                        if ! (bsdtar -tf "$REPO_DB_FILE" | grep -q "/desc"); 
> then
>                                error "$(gettext "Repository file '%s' is not 
> a proper pacman database.")" "$REPO_DB_FILE"
> @@ -359,27 +359,26 @@ done
>  # if all operations were a success, re-zip database
>  if [ $success -eq 1 ]; then
>        msg "$(gettext "Creating updated database file '%s'")" "$REPO_DB_FILE"
> -       pushd "$gstmpdir" 2>&1 >/dev/null
>
> -       if [ -n "$(ls)" ]; then
> -               [ -f "${REPO_DB_FILE}.old" ] && rm "${REPO_DB_FILE}.old"
> -               [ -f "$REPO_DB_FILE" ] && mv "$REPO_DB_FILE" 
> "${REPO_DB_FILE}.old"
> -
> -               case "$REPO_DB_FILE" in
> -                       *tar.gz)  TAR_OPT="z" ;;
> -                       *tar.bz2) TAR_OPT="j" ;;
> -                       *) warning "$(gettext "'%s' does not have a valid 
> archive extension.")" \
> -                                  "$REPO_DB_FILE" ;;
> -               esac
> +       case "$REPO_DB_FILE" in
> +               *tar.gz)  TAR_OPT="z" ;;
> +               *tar.bz2) TAR_OPT="j" ;;
> +               *) warning "$(gettext "'%s' does not have a valid archive 
> extension.")" \
> +               "$REPO_DB_FILE" ;;
> +       esac
> +
> +       filename=$(basename "$REPO_DB_FILE")
>
> -               bsdtar -c${TAR_OPT}f "$REPO_DB_FILE" *
> +       pushd "$gstmpdir" 2>&1 >/dev/null
> +       if [ -n "$(ls)" ]; then
> +               bsdtar -c${TAR_OPT}f "$filename" *
>        else
> -               # we should only end up with an empty db after a remove of 
> the last package in the database
>                error "$(gettext "All packages have been removed from the 
> database. Deleting '%s'.")" "$REPO_DB_FILE"
> -               rm "$REPO_DB_FILE"
Huh? Why'd this get killed, or am I missing something?

>        fi
> -
>        popd 2>&1 >/dev/null
> +
> +       [ -f "$REPO_DB_FILE" ] && mv -f "$REPO_DB_FILE" "${REPO_DB_FILE}.old"
> +       [ -f "$gstmpdir/$filename" ] && mv "$gstmpdir/$filename" 
> "$REPO_DB_FILE"
>  else
>        msg "$(gettext "No packages modified, nothing to do.")"
>  fi
> --
> 1.6.1.3
>
> _______________________________________________
> pacman-dev mailing list
> [email protected]
> http://www.archlinux.org/mailman/listinfo/pacman-dev
>
_______________________________________________
pacman-dev mailing list
[email protected]
http://www.archlinux.org/mailman/listinfo/pacman-dev

Reply via email to