From d5d3f7423f0f14c75b207d8416b45a2d5c2c3912 Mon Sep 17 00:00:00 2001 From: Ilja Honkonen Date: Tue, 23 Mar 2021 16:04:55 +0200 Subject: [PATCH] Handle missing keyword in python2 configparser. --- src/bmconfigparser.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/bmconfigparser.py b/src/bmconfigparser.py index 3a8d49f8..57640c74 100644 --- a/src/bmconfigparser.py +++ b/src/bmconfigparser.py @@ -74,11 +74,19 @@ class BMConfigParser(ConfigParser.SafeConfigParser): return self._temp[section][option] except KeyError: pass - return ConfigParser.ConfigParser.get( - self, section, option, raw=True, vars=vars, fallback=fallback) + try: + return ConfigParser.ConfigParser.get( + self, section, option, raw=True, vars=vars, fallback=fallback) + except TypeError: + return ConfigParser.ConfigParser.get( + self, section, option, raw=True, vars=vars) except ConfigParser.InterpolationError: - return ConfigParser.ConfigParser.get( - self, section, option, raw=True, vars=vars, fallback=fallback) + try: + return ConfigParser.ConfigParser.get( + self, section, option, raw=True, vars=vars, fallback=fallback) + except TypeError: + return ConfigParser.ConfigParser.get( + self, section, option, raw=True, vars=vars) except (ConfigParser.NoSectionError, ConfigParser.NoOptionError) as e: try: return BMConfigDefaults[section][option]