From: Zac Medico Date: Mon, 12 Jun 2006 00:13:46 +0000 (-0000) Subject: Wrap more exceptions in ensure_dirs(). X-Git-Tag: v2.1.1~500 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=bacb3f60e57b7fec3e3143b1e9312debceaf3471;p=portage.git Wrap more exceptions in ensure_dirs(). svn path=/main/trunk/; revision=3494 --- 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)