diff options
-rw-r--r-- | mitmproxy/optmanager.py | 2 | ||||
-rw-r--r-- | test/mitmproxy/test_optmanager.py | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/mitmproxy/optmanager.py b/mitmproxy/optmanager.py index 70f60bb6..1680d346 100644 --- a/mitmproxy/optmanager.py +++ b/mitmproxy/optmanager.py @@ -432,6 +432,8 @@ def parse(text): raise exceptions.OptionsError("Could not parse options.") if isinstance(data, str): raise exceptions.OptionsError("Config error - no keys found.") + elif data is None: + return {} return data diff --git a/test/mitmproxy/test_optmanager.py b/test/mitmproxy/test_optmanager.py index 04ec7ded..cadc5d76 100644 --- a/test/mitmproxy/test_optmanager.py +++ b/test/mitmproxy/test_optmanager.py @@ -257,6 +257,10 @@ def test_serialize(): with pytest.raises(Exception, match="Config error"): optmanager.load(o2, t) + t = "# a comment" + optmanager.load(o2, t) + assert optmanager.load(o2, "foobar: '123'") == {"foobar": "123"} + t = "" optmanager.load(o2, t) assert optmanager.load(o2, "foobar: '123'") == {"foobar": "123"} |