On Tue, Jan 30, 2018 at 1:16 PM, Vedant Kumar via lldb-commits
<lldb-commits@lists.llvm.org> wrote:
> Author: vedantk
> Date: Tue Jan 30 13:16:42 2018
> New Revision: 323817
>
> URL: http://llvm.org/viewvc/llvm-project?rev=323817&view=rev
> Log:
> XUnit Formatter: Handle UTF-8 decode errors on invalid XML
>
> Strings which contain garbage data can trigger an exception in the XUnit
> plugin at the UTF-8 decode step because the decode is strict. Use a lax
> mode to avoid an exception.
>
> See: https://ci.swift.org/job/oss-lldb-incremental-osx/780
>
> Modified:
>     lldb/trunk/packages/Python/lldbsuite/test_event/formatter/xunit.py
>
> Modified: lldb/trunk/packages/Python/lldbsuite/test_event/formatter/xunit.py
> URL: 
> http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test_event/formatter/xunit.py?rev=323817&r1=323816&r2=323817&view=diff
> ==============================================================================
> --- lldb/trunk/packages/Python/lldbsuite/test_event/formatter/xunit.py 
> (original)
> +++ lldb/trunk/packages/Python/lldbsuite/test_event/formatter/xunit.py Tue 
> Jan 30 13:16:42 2018
> @@ -84,7 +84,9 @@ class XunitFormatter(ResultsFormatter):
>          """
>          # Get the content into unicode
>          if isinstance(str_or_unicode, str):
> -            unicode_content = str_or_unicode.decode('utf-8')
> +            # If we hit decoding errors due to data corruption, replace the
> +            # invalid characters with U+FFFD REPLACEMENT CHARACTER.
> +            unicode_content = str_or_unicode.decode('utf-8', 'replace')
>          else:
>              unicode_content = str_or_unicode
>          return self.invalid_xml_re.sub(
>
>

LGTM, thanks.

--
Davide
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to