On Wed, Sep 13, 2017 at 2:30 PM, Simon Glass <s...@chromium.org> wrote:
> This section of the settings file may be missing. Handle that gracefully
> rather than emitting an error.
>
> Also update patman to write this section when a new settings file is
> created.
>
> Fixes: e11aa602 (patman: add support for omitting bouncing addresses)
>
> Signed-off-by: Simon Glass <s...@chromium.org>
> ---
>

Reviewed-by: Chris Packham <judge.pck...@gmail.com>

>  tools/patman/settings.py | 28 +++++++++++++++++++++++++---
>  1 file changed, 25 insertions(+), 3 deletions(-)
>
> diff --git a/tools/patman/settings.py b/tools/patman/settings.py
> index d735ff9ba3..92379b72e7 100644
> --- a/tools/patman/settings.py
> +++ b/tools/patman/settings.py
> @@ -212,7 +212,12 @@ def CreatePatmanConfigFile(config_fname):
>          print("Couldn't create patman config file\n")
>          raise
>
> -    print("[alias]\nme: %s <%s>" % (name, email), file=f)
> +    print('''[alias]
> +me: %s <%s>
> +
> +[bounces]
> +nxp = Zhikang Zhang <zhikang.zh...@nxp.com>
> +''' % (name, email), file=f)
>      f.close();
>
>  def _UpdateDefaults(parser, config):
> @@ -282,6 +287,23 @@ def _ReadBouncesFile(fname):
>                      continue
>                  bounces.add(line.strip())
>
> +def GetItems(config, section):
> +    """Get the items from a section of the config.
> +
> +    Args:
> +        config: _ProjectConfigParser object containing settings
> +        section: name of section to retrieve
> +
> +    Returns:
> +        List of (name, value) tuples for the section
> +    """
> +    try:
> +        return config.items(section)
> +    except ConfigParser.NoSectionError as e:
> +        return []
> +    except:
> +        raise
> +
>  def Setup(parser, project_name, config_fname=''):
>      """Set up the settings module by reading config files.
>
> @@ -303,11 +325,11 @@ def Setup(parser, project_name, config_fname=''):
>
>      config.read(config_fname)
>
> -    for name, value in config.items('alias'):
> +    for name, value in GetItems(config, 'alias'):
>          alias[name] = value.split(',')
>
>      _ReadBouncesFile('doc/bounces')
> -    for name, value in config.items('bounces'):
> +    for name, value in GetItems(config, 'bounces'):
>          bounces.add(value)
>
>      _UpdateDefaults(parser, config)
> --
> 2.14.1.581.gf28d330327-goog
>
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to