diff options
-rw-r--r-- | pym/portage/dispatch_conf.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/pym/portage/dispatch_conf.py b/pym/portage/dispatch_conf.py index df3134c75..49e53c2ee 100644 --- a/pym/portage/dispatch_conf.py +++ b/pym/portage/dispatch_conf.py @@ -21,15 +21,19 @@ RCS_MERGE = "rcsmerge -p -r" + RCS_BRANCH + " '%s' > '%s'" DIFF3_MERGE = "diff3 -mE '%s' '%s' '%s' > '%s'" def read_config(mandatory_opts): - try: - opts = portage.getconfig('/etc/dispatch-conf.conf') - except: - opts = None - + loader = portage.env.loaders.KeyValuePairFileLoader( + '/etc/dispatch-conf.conf', None) + opts, errors = loader.load() if not opts: print >> sys.stderr, _('dispatch-conf: Error reading /etc/dispatch-conf.conf; fatal') sys.exit(1) + # Handle quote removal here, since KeyValuePairFileLoader doesn't do that. + quotes = "\"'" + for k, v in opts.iteritems(): + if v[:1] in quotes and v[:1] == v[-1:]: + opts[k] = v[1:-1] + for key in mandatory_opts: if key not in opts: if key == "merge": |