From bacb3f60e57b7fec3e3143b1e9312debceaf3471 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 12 Jun 2006 00:13:46 +0000 Subject: Wrap more exceptions in ensure_dirs(). svn path=/main/trunk/; revision=3494 --- pym/portage_util.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'pym/portage_util.py') diff --git a/pym/portage_util.py b/pym/portage_util.py index e9e84e72d..b08187ad4 100644 --- a/pym/portage_util.py +++ b/pym/portage_util.py @@ -3,6 +3,7 @@ # $Id$ from portage_exception import PortageException, FileNotFound, OperationNotPermitted, ReadOnlyFileSystem +import portage_exception import sys,string,shlex,os,errno try: @@ -722,10 +723,15 @@ def ensure_dirs(dir_path, *args, **kwargs): os.makedirs(dir_path) created_dir = True except OSError, oe: + func_call = "makedirs('%s')" % dir_path if errno.EEXIST == oe.errno: pass - elif oe.errno in (errno.EPERM, errno.EROFS): - raise portage_exception.OperationNotPermitted(str(oe)) + elif oe.errno == errno.EPERM: + raise OperationNotPermitted(func_call) + elif oe.errno == errno.EACCES: + raise PermissionDenied(func_call) + elif oe.errno == errno.EROFS: + raise ReadOnlyFileSystem(func_call) else: raise perms_modified = apply_permissions(dir_path, *args, **kwargs) -- cgit v1.2.3-1-g7c22