diff options
Diffstat (limited to 'mitmproxy/optmanager.py')
-rw-r--r-- | mitmproxy/optmanager.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/mitmproxy/optmanager.py b/mitmproxy/optmanager.py index 8369a36e..70f60bb6 100644 --- a/mitmproxy/optmanager.py +++ b/mitmproxy/optmanager.py @@ -31,7 +31,7 @@ class _Option: help: str, choices: typing.Optional[typing.Sequence[str]] ) -> None: - typecheck.check_type(name, default, typespec) + typecheck.check_option_type(name, default, typespec) self.name = name self.typespec = typespec self._default = default @@ -54,7 +54,7 @@ class _Option: return copy.deepcopy(v) def set(self, value: typing.Any) -> None: - typecheck.check_type(self.name, value, self.typespec) + typecheck.check_option_type(self.name, value, self.typespec) self.value = value def reset(self) -> None: @@ -293,6 +293,8 @@ class OptManager: else: return None elif o.typespec == bool: + if optstr == "toggle": + return not o.current() if not optstr or optstr == "true": return True elif optstr == "false": |