View | Details | Raw Unified
Collapse All | Expand All

(-) pym/_emerge/__init__.py (-2 / +18 lines)
 Lines 1590-1596    Link Here 
	def execute(self):
	def execute(self):
		# To spawn pkg_nofetch requires PORTAGE_BUILDDIR for
		# To spawn pkg_nofetch requires PORTAGE_BUILDDIR for
		# ensuring sane $PWD (bug #239560) and storing elog
		# ensuring sane $PWD (bug #239560) and storing elog
		# messages.
		# messages. Use a private temp directory, in order
		# to avoid locking the main one.
		settings = self.settings
		global_tmpdir = settings["PORTAGE_TMPDIR"]
		from tempfile import mkdtemp
		private_tmpdir = mkdtemp("", "._portage_fetch_.", global_tmpdir)
		settings["PORTAGE_TMPDIR"] = private_tmpdir
		settings.backup_changes("PORTAGE_TMPDIR")
		try:
			retval = self._execute()
		finally:
			settings["PORTAGE_TMPDIR"] = global_tmpdir
			settings.backup_changes("PORTAGE_TMPDIR")
			shutil.rmtree(private_tmpdir)
		return retval
	def _execute(self):
		build_dir = EbuildBuildDir(pkg=self.pkg, settings=self.settings)
		build_dir = EbuildBuildDir(pkg=self.pkg, settings=self.settings)
		build_dir.lock()
		build_dir.lock()
		build_dir.clean()
		build_dir.clean()
 Lines 2367-2373    Link Here 
		self._catdir = catdir
		self._catdir = catdir
		portage.util.ensure_dirs(os.path.dirname(catdir),
		portage.util.ensure_dirs(os.path.dirname(catdir),
			uid=portage.portage_uid, gid=portage.portage_gid,
			gid=portage.portage_gid,
			mode=070, mask=0)
			mode=070, mask=0)
		catdir_lock = None
		catdir_lock = None
		try:
		try: