diff options
author | Andrew Gregory <andrew.gregory.8@gmail.com> | 2013-04-13 02:45:00 +0200 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2013-06-03 05:33:47 +0200 |
commit | aa7e42db11ea545572a9519e88e2a6cdeeffb3bf (patch) | |
tree | a1fdf2b0e1f9e72326573a3d03b68c969523b1b0 | |
parent | 5cfa4ec47ed6240fecb1c2a9fd95de5bdc58a8b8 (diff) | |
download | pacman-aa7e42db11ea545572a9519e88e2a6cdeeffb3bf.tar.gz pacman-aa7e42db11ea545572a9519e88e2a6cdeeffb3bf.tar.xz |
conflict.c: do not ignore symlink<->dir conflicts
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | lib/libalpm/conflict.c | 7 | ||||
-rw-r--r-- | test/pacman/tests/fileconflict001.py | 2 | ||||
-rw-r--r-- | test/pacman/tests/fileconflict007.py | 2 | ||||
-rw-r--r-- | test/pacman/tests/fileconflict016.py | 2 | ||||
-rw-r--r-- | test/pacman/tests/fileconflict017.py | 2 | ||||
-rw-r--r-- | test/pacman/tests/fileconflict022.py | 2 | ||||
-rw-r--r-- | test/pacman/tests/symlink001.py | 2 | ||||
-rw-r--r-- | test/pacman/tests/sync701.py | 2 |
8 files changed, 4 insertions, 17 deletions
diff --git a/lib/libalpm/conflict.c b/lib/libalpm/conflict.c index 896f48de..3121cc79 100644 --- a/lib/libalpm/conflict.c +++ b/lib/libalpm/conflict.c @@ -514,17 +514,10 @@ alpm_list_t *_alpm_db_find_fileconflicts(alpm_handle_t *handle, _alpm_log(handle, ALPM_LOG_DEBUG, "checking possible conflict: %s\n", path); if(filestr[strlen(filestr) - 1] == '/') { - struct stat sbuf; if(S_ISDIR(lsbuf.st_mode)) { _alpm_log(handle, ALPM_LOG_DEBUG, "file is a directory, not a conflict\n"); continue; } - stat(path, &sbuf); - if(S_ISLNK(lsbuf.st_mode) && S_ISDIR(sbuf.st_mode)) { - _alpm_log(handle, ALPM_LOG_DEBUG, - "file is a symlink to a dir, hopefully not a conflict\n"); - continue; - } /* if we made it to here, we want all subsequent path comparisons to * not include the trailing slash. This allows things like file -> * directory replacements. */ diff --git a/test/pacman/tests/fileconflict001.py b/test/pacman/tests/fileconflict001.py index e1371f88..b1ad5e18 100644 --- a/test/pacman/tests/fileconflict001.py +++ b/test/pacman/tests/fileconflict001.py @@ -25,5 +25,3 @@ self.addrule("!PKG_EXIST=pkg1") self.addrule("!PKG_EXIST=pkg2") self.addrule("FILE_EXIST=dir/realdir/realfile") self.addrule("!FILE_EXIST=dir/realdir/file") - -self.expectfailure = True diff --git a/test/pacman/tests/fileconflict007.py b/test/pacman/tests/fileconflict007.py index 7fe65ed4..b61ddb42 100644 --- a/test/pacman/tests/fileconflict007.py +++ b/test/pacman/tests/fileconflict007.py @@ -16,3 +16,5 @@ self.addrule("PACMAN_RETCODE=0") self.addrule("PKG_EXIST=pkg") self.addrule("PKG_VERSION=pkg|1.0-2") self.addrule("FILE_TYPE=dir/symdir/|dir") + +self.expectfailure = True diff --git a/test/pacman/tests/fileconflict016.py b/test/pacman/tests/fileconflict016.py index dbcf7085..86ddd720 100644 --- a/test/pacman/tests/fileconflict016.py +++ b/test/pacman/tests/fileconflict016.py @@ -22,5 +22,3 @@ self.args = "-S pkg1 pkg2" self.addrule("PACMAN_RETCODE=1") self.addrule("!PKG_EXIST=pkg1") self.addrule("!PKG_EXIST=pkg2") - -self.expectfailure = True diff --git a/test/pacman/tests/fileconflict017.py b/test/pacman/tests/fileconflict017.py index 4b91dc65..3855a938 100644 --- a/test/pacman/tests/fileconflict017.py +++ b/test/pacman/tests/fileconflict017.py @@ -24,5 +24,3 @@ self.args = "-S pkg1 pkg2" self.addrule("PACMAN_RETCODE=1") self.addrule("!PKG_EXIST=pkg1") self.addrule("!PKG_EXIST=pkg2") - -self.expectfailure = True diff --git a/test/pacman/tests/fileconflict022.py b/test/pacman/tests/fileconflict022.py index b3920dfd..5ff0b537 100644 --- a/test/pacman/tests/fileconflict022.py +++ b/test/pacman/tests/fileconflict022.py @@ -16,5 +16,3 @@ self.args = "-S %s %s" % (sp1.name, sp2.name) self.addrule("PACMAN_RETCODE=1") self.addrule("!PKG_EXIST=foo") self.addrule("!PKG_EXIST=bar") - -self.expectfailure = True diff --git a/test/pacman/tests/symlink001.py b/test/pacman/tests/symlink001.py index f88d0ae7..91365512 100644 --- a/test/pacman/tests/symlink001.py +++ b/test/pacman/tests/symlink001.py @@ -17,5 +17,3 @@ self.addrule("!FILE_EXIST=dir/symdir/tmp") self.addrule("!FILE_EXIST=dir/realdir/tmp") self.addrule("FILE_TYPE=dir/symdir|link") self.addrule("FILE_TYPE=dir/realdir|dir") - -self.expectfailure = True diff --git a/test/pacman/tests/sync701.py b/test/pacman/tests/sync701.py index 590845ff..912c794c 100644 --- a/test/pacman/tests/sync701.py +++ b/test/pacman/tests/sync701.py @@ -19,3 +19,5 @@ self.addrule("PACMAN_RETCODE=0") self.addrule("PKG_VERSION=pkg1|1.0-2") self.addrule("PKG_EXIST=pkg2") self.addrule("FILE_TYPE=lib|dir") + +self.expectfailure = True |