FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > ArchLinux > ArchLinux Pacman Development

 
 
LinkBack Thread Tools
 
Old 07-17-2012, 03:25 AM
Allan McRae
 
Default Do not remove symlink to directory if local package uses that path

If we have a symlink to a directory (e.g. /lib -> usr/lib), then
we can not remove it if a local package thinks it has files in the
symlink directory (e.g. /lib/foo), because this will invalidate the
local file database.

Signed-off-by: Allan McRae <allan@archlinux.org>
---
test/pacman/tests/sync700.py | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
create mode 100644 test/pacman/tests/sync700.py

diff --git a/test/pacman/tests/sync700.py b/test/pacman/tests/sync700.py
new file mode 100644
index 0000000..0002b64
--- /dev/null
+++ b/test/pacman/tests/sync700.py
@@ -0,0 +1,22 @@
+self.description = "do not remove directory symlink if another package has file in its path"
+
+lp1 = pmpkg("pkg1")
+lp1.files = ["usr/lib/foo",
+ "lib -> usr/lib"]
+self.addpkg2db("local", lp1)
+
+lp2 = pmpkg("pkg2")
+lp2.files = ["lib/bar"]
+self.addpkg2db("local", lp2)
+
+p = pmpkg("pkg1", "1.0-2")
+p.files = ["usr/lib/foo"]
+self.addpkg2db("sync", p)
+
+self.args = "-S pkg1"
+
+self.addrule("PACMAN_RETCODE=1")
+self.addrule("PKG_VERSION=pkg1|1.0-1")
+self.addrule("FILE_EXIST=/lib/bar")
+
+self.expectfailure = True
--
1.7.11.2
 

Thread Tools




All times are GMT. The time now is 05:35 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org