[FIX] config: empty argument --foo= to disable
In the odoorc file, set a `logfile` path, but disable it via the command line with `--logfile=`. The logs are output to the logfile configured in the config file instead of stdout. Parsing `--logile=` yield an empty string which was interpreted as argument not set and skipped. Closes #3852 closes odoo/odoo#60992 X-original-commit: bae0d99b8d654283be4d265e3b40a83247a2299c Signed-off-by: Martin Trigaux (mat) <mat@odoo.com> Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
This commit is contained in:
@@ -439,7 +439,7 @@ class configmanager(object):
|
||||
for arg in keys:
|
||||
# Copy the command-line argument (except the special case for log_handler, due to
|
||||
# action=append requiring a real default, so we cannot use the my_default workaround)
|
||||
if getattr(opt, arg):
|
||||
if getattr(opt, arg, None) is not None:
|
||||
self.options[arg] = getattr(opt, arg)
|
||||
# ... or keep, but cast, the config file value.
|
||||
elif isinstance(self.options[arg], str) and self.casts[arg].type in optparse.Option.TYPE_CHECKER:
|
||||
|
||||
Reference in New Issue
Block a user