[PATCH 1/2] moveconfig.py: add try…except

Trevor Woerner
2021-04-07T17:15:49Z

It looks like Simon beat me to this one with 7570d9bb47be24d9d73518742703f32126af8113
but I'm hoping 2/2 can still make it in.

On Mon 2021-03-15 @ 12:01:32 PM, Trevor Woerner wrote:
> I keep getting a UnicodeDecodeError from one of the header files while
> modifying the headers:
>
> Traceback (most recent call last):
> File "tools/moveconfig.py", line 1953, in <module>
> main()
> File "tools/moveconfig.py", line 1927, in main
> cleanup_headers(configs, options)
> File "tools/moveconfig.py", line 675, in cleanup_headers
> cleanup_one_header(header_path, patterns, options)
> File "tools/moveconfig.py", line 599, in cleanup_one_header
> lines = f.readlines()
> File "/usr/lib64/python3.6/codecs.py", line 321, in decode
> (result, consumed) = self._buffer_decode(data, self.errors, final)
> UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83 in position 9: invalid start byte
>
> I'm curious to know which header file is causing the problem.
>
> Signed-off-by: Trevor Woerner <twoerner@gmail.com>
> ---
> tools/moveconfig.py | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/tools/moveconfig.py b/tools/moveconfig.py
> index 9514d9a00c..dd92c00bb7 100755
> --- a/tools/moveconfig.py
> +++ b/tools/moveconfig.py
> @@ -596,7 +596,12 @@ def cleanup_one_header(header_path, patterns, options):
> options: option flags.
> """
> with open(header_path) as f:
> - lines = f.readlines()
> + try:
> + lines = f.readlines()
> + except:
> + print("caught exception: ", sys.exc_info()[0])
> + print("header_path: ", header_path)
> + lines = ""
>
> matched = []
> for i, line in enumerate(lines):
> --
> 2.30.0.rc0
>