From: Zac Medico Date: Fri, 15 Jun 2007 20:25:18 +0000 (-0000) Subject: For bug #182157, don't let unmerge-orphans unlink symlinks to directories since that... X-Git-Tag: v2.2_pre1~1236 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=5ee8eaa1c917ea709ee1eb19efd8528908e245ae;p=portage.git For bug #182157, don't let unmerge-orphans unlink symlinks to directories since that can remove /lib and /usr/lib symlinks. svn path=/main/trunk/; revision=6850 --- diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index 182c129c4..a773f8a50 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -1193,8 +1193,11 @@ class dblink(object): writemsg_stdout("--- cfgpro %s %s\n" % (pkgfiles[objkey][0], obj)) continue + # Don't unlink symlinks to directories here since that can + # remove /lib and /usr/lib symlinks. if unmerge_orphans and \ lstatobj and not stat.S_ISDIR(lstatobj.st_mode) and \ + not (islink and statobj and stat.S_ISDIR(statobj.st_mode)) and \ not self.isprotected(obj): try: # Remove permissions to ensure that any hardlinks to