Remove the wide try/expect clause

This doesn't catch anything precise, and none of the methods should
throw a expection for anything. This also hide python 3 errors.
pull/18777/head
Michael Scherer 8 years ago committed by Matt Clay
parent adc56e52d8
commit c9da5e98a9

@ -243,25 +243,22 @@ def parseoptions(module, options):
'''
options_dict = keydict() #ordered dict
if options:
try:
# the following regex will split on commas while
# ignoring those commas that fall within quotes
regex = re.compile(r'''((?:[^,"']|"[^"]*"|'[^']*')+)''')
parts = regex.split(options)[1:-1]
for part in parts:
if "=" in part:
(key, value) = part.split("=", 1)
if options_dict.has_key(key):
if isinstance(options_dict[key], list):
options_dict[key].append(value)
else:
options_dict[key] = [options_dict[key], value]
# the following regex will split on commas while
# ignoring those commas that fall within quotes
regex = re.compile(r'''((?:[^,"']|"[^"]*"|'[^']*')+)''')
parts = regex.split(options)[1:-1]
for part in parts:
if "=" in part:
(key, value) = part.split("=", 1)
if options_dict.has_key(key):
if isinstance(options_dict[key], list):
options_dict[key].append(value)
else:
options_dict[key] = value
elif part != ",":
options_dict[part] = None
except:
module.fail_json(msg="invalid option string: %s" % options)
options_dict[key] = [options_dict[key], value]
else:
options_dict[key] = value
elif part != ",":
options_dict[part] = None
return options_dict

Loading…
Cancel
Save