From b009c5bafa63581a0c590a8c1a1d8dafd5e7654a Mon Sep 17 00:00:00 2001 From: Aurelien Foret Date: Tue, 29 Mar 2005 22:19:11 +0000 Subject: checked for db_update() archive existence --- lib/libalpm/alpm.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'lib/libalpm') diff --git a/lib/libalpm/alpm.c b/lib/libalpm/alpm.c index 9789f467..c8c8f3e1 100644 --- a/lib/libalpm/alpm.c +++ b/lib/libalpm/alpm.c @@ -222,6 +222,8 @@ int alpm_db_getlastupdate(PM_DB *db, char *ts) int alpm_db_update(PM_DB *db, char *archive, char *ts) { + struct stat buf; + /* Sanity checks */ ASSERT(handle != NULL, RET_ERR(PM_ERR_HANDLE_NULL, -1)); ASSERT(db != NULL && db != handle->db_local, RET_ERR(PM_ERR_WRONG_ARGS, -1)); @@ -239,8 +241,10 @@ int alpm_db_update(PM_DB *db, char *archive, char *ts) } } - /* ORE - stat() the archive to check it exists */ + if(stat(archive, &buf)) { + /* not found */ + RET_ERR(PM_ERR_NOT_A_FILE, -1); + } /* Cache needs to be rebuild */ db_free_pkgcache(db); -- cgit v1.2.3-24-g4f1b