diff options
author | Björn-Egil Dahlberg <egil@erlang.org> | 2015-03-05 10:01:18 +0100 |
---|---|---|
committer | Björn-Egil Dahlberg <egil@erlang.org> | 2015-03-05 10:01:18 +0100 |
commit | a7e85df0d940e7f99a61e99de5d1d3ad55cea648 (patch) | |
tree | 4ee2b8887c47d5f4c43bf4c18d06e211ab982a76 | |
parent | 549785976441514377e1da14c5c1e7fb289456e0 (diff) | |
parent | 10de566e138bc167256fe1c4cc25f934887738d7 (diff) | |
download | erlang-a7e85df0d940e7f99a61e99de5d1d3ad55cea648.tar.gz |
Merge branch 'egil/fix-ts_make-unicode/OTP-12536' into maint
* egil/fix-ts_make-unicode/OTP-12536:
test_server: Let ts_make have a latin1 fallback
-rw-r--r-- | lib/test_server/src/ts_make.erl | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/test_server/src/ts_make.erl b/lib/test_server/src/ts_make.erl index 8727f7ebfe..9cb77ecb12 100644 --- a/lib/test_server/src/ts_make.erl +++ b/lib/test_server/src/ts_make.erl @@ -67,7 +67,17 @@ get_port_data(Port, Last0, Complete0) -> end. update_last([C|Rest], Line, true) -> - io:put_chars(list_to_binary(Line)), %% Utf-8 list to utf-8 binary + try + %% Utf-8 list to utf-8 binary + %% (e.g. we assume utf-8 bytes from port) + io:put_chars(list_to_binary(Line)) + catch + error:badarg -> + %% io:put_chars/1 badarged + %% this likely means we had unicode code points + %% in our bytes buffer (e.g warning from gcc with åäö) + io:put_chars(unicode:characters_to_binary(Line)) + end, io:nl(), update_last([C|Rest], [], false); update_last([$\r|Rest], Result, Complete) -> |