~ruther/qmk_firmware

1f86e8ae9ac5035c7dd359880b4534f5145a215f — Erovia 5 years ago e7f6e90
Fix attribute heritance for long commands.

This is needed for inheritance to work with commands that have dashes in
their names.
1 files changed, 7 insertions(+), 4 deletions(-)

M lib/python/milc.py
M lib/python/milc.py => lib/python/milc.py +7 -4
@@ 511,7 511,10 @@ class MILC(object):

            if argument not in self.arg_only:
                # Find the argument's section
                if self._entrypoint.__name__ in self.default_arguments and argument in self.default_arguments[self._entrypoint.__name__]:
                # Underscores in command's names are converted to dashes during initialization.
                # TODO(Erovia) Find a better solution
                entrypoint_name = self._entrypoint.__name__.replace("_", "-")
                if entrypoint_name in self.default_arguments and argument in self.default_arguments[entrypoint_name]:
                    argument_found = True
                    section = self._entrypoint.__name__
                if argument in self.default_arguments['general']:


@@ 523,12 526,12 @@ class MILC(object):
                    exit(1)

                # Merge this argument into self.config
                if argument in self.default_arguments[section]:
                if argument in self.default_arguments['general'] or argument in self.default_arguments[entrypoint_name]:
                    arg_value = getattr(self.args, argument)
                    if arg_value:
                    if arg_value is not None:
                        self.config[section][argument] = arg_value
                else:
                    if argument not in self.config[section]:
                    if argument not in self.config[entrypoint_name]:
                        # Check if the argument exist for this section
                        arg = getattr(self.args, argument)
                        if arg is not None: