summaryrefslogtreecommitdiffstats
path: root/pym/elog_modules/mod_save.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-09-26 04:19:04 +0000
committerZac Medico <zmedico@gentoo.org>2007-09-26 04:19:04 +0000
commit100fdc5db0d85916bebe1313916931f00cb3fc77 (patch)
tree655a3cfb1c452d886457d56458ec09a9a4fc14e8 /pym/elog_modules/mod_save.py
parent5112d07e4896ccc80c2b3a77276dad4a3a3c65da (diff)
downloadportage-100fdc5db0d85916bebe1313916931f00cb3fc77.tar.gz
portage-100fdc5db0d85916bebe1313916931f00cb3fc77.tar.bz2
portage-100fdc5db0d85916bebe1313916931f00cb3fc77.zip
Use ensure_dirs() and apply_permissions() to avoid redundant
chown/chmod calls. This helps avoid 'Permission denied' errors during elog_process() when the ebuild command is run by normal user (issue reported by graaff). (trunk r7789) svn path=/main/branches/2.1.2/; revision=7820
Diffstat (limited to 'pym/elog_modules/mod_save.py')
-rw-r--r--pym/elog_modules/mod_save.py6
1 files changed, 2 insertions, 4 deletions
diff --git a/pym/elog_modules/mod_save.py b/pym/elog_modules/mod_save.py
index 4e1cd2cf8..97213e040 100644
--- a/pym/elog_modules/mod_save.py
+++ b/pym/elog_modules/mod_save.py
@@ -1,5 +1,6 @@
import os, time
from portage_data import portage_uid, portage_gid
+from portage_util import ensure_dirs
def process(mysettings, cpv, logentries, fulltext):
cpv_path = cpv.replace("/", ":")
@@ -8,10 +9,7 @@ def process(mysettings, cpv, logentries, fulltext):
elogdir = os.path.join(mysettings["PORT_LOGDIR"], "elog")
else:
elogdir = os.path.join(os.sep, "var", "log", "portage", "elog")
- if not os.path.exists(elogdir):
- os.makedirs(elogdir)
- os.chown(elogdir, portage_uid, portage_gid)
- os.chmod(elogdir, 02770)
+ ensure_dirs(elogdir, uid=portage_uid, gid=portage_gid, mode=02770)
elogfilename = elogdir+"/"+cpv_path+":"+time.strftime("%Y%m%d-%H%M%S", time.gmtime(time.time()))+".log"
elogfile = open(elogfilename, "w")