Attempt to fix bug #111752, due to mount_safety_check calling a lock object that...
authorEric Edgar <rocket@gentoo.org>
Thu, 17 Nov 2005 20:56:16 +0000 (20:56 +0000)
committerEric Edgar <rocket@gentoo.org>
Thu, 17 Nov 2005 20:56:16 +0000 (20:56 +0000)
git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/catalyst/trunk@893 d1e1f19c-881f-0410-ab34-b69fee027534

ChangeLog
modules/generic_stage_target.py

index 2d4e17190599d7a07e2eee2a05ba5b5838238762..90c92ab1751c160c1377283c28a89e257b62ec2c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/ChangeLog,v 1.381 2005/11/17 20:39:53 rocket Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/ChangeLog,v 1.382 2005/11/17 20:56:15 rocket Exp $
+
+  17 Nov 2005; Eric Edgar <rocket@gentoo.org>
+  modules/generic_stage_target.py:
+  Attempt to fix bug #111752, due to mount_safety_check calling a lock object
+  that doesnt exist yet
 
   17 Nov 2005; Eric Edgar <rocket@gentoo.org> targets/support/kmerge.sh:
   Keep unnecessary programs from installing into kerncache
index 9770d4bc2297190780fae40d5e8d43013d955522..a02d4e7cc1d2f5d6d0571ecdfa1edcefc3b98dfa 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/modules/generic_stage_target.py,v 1.75 2005/11/17 20:27:57 rocket Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/modules/generic_stage_target.py,v 1.76 2005/11/17 20:56:16 rocket Exp $
 
 """
 This class does all of the chroot setup, copying of files, etc. It is
@@ -700,7 +700,12 @@ class generic_stage_target(generic_target):
                                    # keep trying to umount the others, to minimize damage if developer makes a mistake
                
                        if self.settings.has_key("SNAPCACHE") and x == "/usr/portage":
-                               self.snapshot_lock_object.unlock()
+                               try:
+                                   # Its possible the snapshot lock object isnt created yet
+                                   # this is because mount safety check calls unbind before the target is fully initialized            
+                                   self.snapshot_lock_object.unlock()
+                               except:
+                                   pass
                if ouch:
                        """
                        if any bind mounts really failed, then we need to raise