summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Reisner <d@falconindy.com>2011-06-20 11:05:08 -0400
committerDan McGee <dan@archlinux.org>2011-06-20 11:22:39 -0500
commitb8990993271b34d309ada49197090895b0fbdfb6 (patch)
tree9aec576561a7b6c2a0fbae08aaf294484e299ed6
parentee638415e305a390cbf3fa68fb2a1fb5523f18e9 (diff)
downloadpacman-b8990993271b34d309ada49197090895b0fbdfb6.tar.xz
repo-add: show better error when path to repo does not exist
Previously, the error message when trying to add to a repo where a parent directory didn't exist was: ==> ERROR: Failed to acquire lockfile: /path/to/noexist/repo.tar.gz.lck This sucks. Make an explicit check to ensure that the path to the repo really does exist, and throw a meaningful error message when it can't be found. Dan: reuse an existing (translated) error message. Signed-off-by: Dave Reisner <d@falconindy.com> Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r--scripts/repo-add.sh.in6
1 files changed, 6 insertions, 0 deletions
diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in
index 0ea8e5bd..14506dcf 100644
--- a/scripts/repo-add.sh.in
+++ b/scripts/repo-add.sh.in
@@ -382,6 +382,12 @@ db_remove_entry() {
check_repo_db()
{
+ # ensure the path to the DB exists
+ if [[ ! -d "${LOCKFILE%/*}" ]]; then
+ error "$(gettext "%s does not exist or is not a directory.")" "${LOCKFILE%/*}"
+ exit 1
+ fi
+
# check lock file
if ( set -o noclobber; echo "$$" > "$LOCKFILE") 2> /dev/null; then
CLEAN_LOCK=1