diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-10-21 08:28:24 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-10-21 09:09:33 -0700 |
commit | 71234e0a63ddf73dfd2a1d66da28a64969932cc0 (patch) | |
tree | 41fc555a92bf841b5032f29cc299a26fb86508ed | |
parent | b7d366bc4c393c197100f35b1121ada95606f370 (diff) | |
download | portage-71234e0a63ddf73dfd2a1d66da28a64969932cc0.tar.gz portage-71234e0a63ddf73dfd2a1d66da28a64969932cc0.tar.bz2 portage-71234e0a63ddf73dfd2a1d66da28a64969932cc0.zip |
dispatch-conf: suppress 'No such file' errors.
This will fix bug #341463.
-rw-r--r-- | pym/portage/dispatch_conf.py | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/pym/portage/dispatch_conf.py b/pym/portage/dispatch_conf.py index e51e5cd13..5724d9169 100644 --- a/pym/portage/dispatch_conf.py +++ b/pym/portage/dispatch_conf.py @@ -83,11 +83,13 @@ def rcs_archive(archive, curconf, newconf, mrgconf): except OSError: pass - try: - shutil.copy2(curconf, archive) - except(IOError, os.error) as why: - print(_('dispatch-conf: Error copying %(curconf)s to %(archive)s: %(reason)s; fatal') % \ - {"curconf": curconf, "archive": archive, "reason": str(why)}, file=sys.stderr) + if os.path.isfile(curconf): + try: + shutil.copy2(curconf, archive) + except(IOError, os.error) as why: + print(_('dispatch-conf: Error copying %(curconf)s to %(archive)s: %(reason)s; fatal') % \ + {"curconf": curconf, "archive": archive, "reason": str(why)}, file=sys.stderr) + if os.path.exists(archive + ',v'): os.system(RCS_LOCK + ' ' + archive) os.system(RCS_PUT + ' ' + archive) @@ -142,11 +144,12 @@ def file_archive(archive, curconf, newconf, mrgconf): os.rename(archive, archive + '.1') - try: - shutil.copy2(curconf, archive) - except(IOError, os.error) as why: - print(_('dispatch-conf: Error copying %(curconf)s to %(archive)s: %(reason)s; fatal') % \ - {"curconf": curconf, "archive": archive, "reason": str(why)}, file=sys.stderr) + if os.path.isfile(curconf): + try: + shutil.copy2(curconf, archive) + except(IOError, os.error) as why: + print(_('dispatch-conf: Error copying %(curconf)s to %(archive)s: %(reason)s; fatal') % \ + {"curconf": curconf, "archive": archive, "reason": str(why)}, file=sys.stderr) if newconf != '': # Save off new config file in the archive dir with .dist.new suffix |