From e4510e633c9bcf26f6c82606f852927728cf8386 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 19 May 2007 07:56:24 +0000 Subject: Avoid permission errors when trying to lock repo_path. Note that the lock file should be mapped into /var somewhere. svn path=/main/trunk/; revision=6555 --- pym/portage/news.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'pym/portage/news.py') diff --git a/pym/portage/news.py b/pym/portage/news.py index 0bb12c5ed..327fe15f4 100644 --- a/pym/portage/news.py +++ b/pym/portage/news.py @@ -66,7 +66,12 @@ class NewsManager(object): path = os.path.join(self.portdb.getRepositoryPath(repoid), self.NEWS_PATH) newsdir_lock = None try: - newsdir_lock = lockdir(self.portdb.getRepositoryPath(repoid)) + repo_path = self.portdb.getRepositoryPath(repoid) + if os.access(os.path.dirname(repo_path), os.W_OK): + # This lock file should really be mapped into /var somewhere + # since the repo_path or it's parent directory may not even be + # writable. + newsdir_lock = lockdir(repo_path) # Skip reading news for repoid if the news dir does not exist. Requested by # NightMorph :) if not os.path.exists(path): -- cgit v1.2.3-1-g7c22