diff options
author | Maximilian Hils <git@maximilianhils.com> | 2017-07-30 02:14:44 +0200 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2017-07-30 02:14:44 +0200 |
commit | 6a41122990017491222602753441de8ac438b735 (patch) | |
tree | 290f49a024c69ab562ecdcbc7e5bef21382148d8 /mitmproxy/addonmanager.py | |
parent | ecc01b0f02b60cfce00f36057a78354780278aca (diff) | |
download | mitmproxy-6a41122990017491222602753441de8ac438b735.tar.gz mitmproxy-6a41122990017491222602753441de8ac438b735.tar.bz2 mitmproxy-6a41122990017491222602753441de8ac438b735.zip |
make option redeclaration silent if signature is the same
Diffstat (limited to 'mitmproxy/addonmanager.py')
-rw-r--r-- | mitmproxy/addonmanager.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/mitmproxy/addonmanager.py b/mitmproxy/addonmanager.py index 9094288b..857ed530 100644 --- a/mitmproxy/addonmanager.py +++ b/mitmproxy/addonmanager.py @@ -86,7 +86,18 @@ class Loader: choices: typing.Optional[typing.Sequence[str]] = None ) -> None: if name in self.master.options: - ctx.log.warn("Over-riding existing option %s" % name) + existing = self.master.options._options[name] + same_signature = ( + existing.name == name and + existing.typespec == typespec and + existing.default == default and + existing.help == help and + existing.choices == choices + ) + if same_signature: + return + else: + ctx.log.warn("Over-riding existing option %s" % name) self.master.options.add_option( name, typespec, |