commit b55abdce7a changed every instance of lstat to alpm_stat to remove an eventual trailing /, but in remove.c, this is not wanted. Ref: http://www.archlinux.org/pipermail/pacman-dev/2007-December/010451.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com> --- lib/libalpm/remove.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/lib/libalpm/remove.c b/lib/libalpm/remove.c index 0e8b57a..4f6d647 100644 --- a/lib/libalpm/remove.c +++ b/lib/libalpm/remove.c @@ -203,7 +203,11 @@ static void unlink_file(pmpkg_t *info, alpm_list_t *lp, pmtrans_t *trans) } } - if(_alpm_lstat(file, &buf)) { + /* we want to do a lstat here, and not a _alpm_lstat. + * if a directory in the package is actually a directory symlink on the + * filesystem, we want to work with the linked directory instead of the + * actual symlink */ + if(lstat(file, &buf)) { _alpm_log(PM_LOG_DEBUG, "file %s does not exist\n", file); return; } -- 1.5.3.7