summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-11-26 00:42:05 +0000
committerZac Medico <zmedico@gentoo.org>2008-11-26 00:42:05 +0000
commitfa1447c99e949f4068d4bfc1ab898a3b23ff7cac (patch)
tree6c9e0cd325b06fdf783d4abe58adef0fabac27f0
parentNote that file names in /etc/portage/package.* directories are sorted ascending (diff)
downloadportage-fa1447c99e949f4068d4bfc1ab898a3b23ff7cac.tar.gz
portage-fa1447c99e949f4068d4bfc1ab898a3b23ff7cac.tar.bz2
portage-fa1447c99e949f4068d4bfc1ab898a3b23ff7cac.zip
Bug #248782 - Handle permission error in EbuildFetchonly.execute() if PORTAGE_TMPDIR
is not writable. (trunk r12092) svn path=/main/branches/2.1.6/; revision=12093
-rw-r--r--pym/_emerge/__init__.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index f7c5ad032..9a0f86483 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -1586,7 +1586,12 @@ class EbuildFetchonly(SlotObject):
settings = self.settings
global_tmpdir = settings["PORTAGE_TMPDIR"]
from tempfile import mkdtemp
- private_tmpdir = mkdtemp("", "._portage_fetch_.", global_tmpdir)
+ try:
+ private_tmpdir = mkdtemp("", "._portage_fetch_.", global_tmpdir)
+ except OSError, e:
+ if e.errno != portage.exception.PermissionDenied.errno:
+ raise
+ raise portage.exception.PermissionDenied(global_tmpdir)
settings["PORTAGE_TMPDIR"] = private_tmpdir
settings.backup_changes("PORTAGE_TMPDIR")
try: