diff options
| author | Hans Bolinder <[email protected]> | 2018-06-28 09:21:35 +0200 | 
|---|---|---|
| committer | Hans Bolinder <[email protected]> | 2018-06-28 09:21:35 +0200 | 
| commit | 8451f6e412bf8991c60d67805c5250d58ce702e1 (patch) | |
| tree | da351d5f7f6ce29cf9d6e4427d0fb4fc6008022a /lib/stdlib/src | |
| parent | a09907d56e29b24ded9a34de82bceac7f39021d1 (diff) | |
| download | otp-8451f6e412bf8991c60d67805c5250d58ce702e1.tar.gz otp-8451f6e412bf8991c60d67805c5250d58ce702e1.tar.bz2 otp-8451f6e412bf8991c60d67805c5250d58ce702e1.zip | |
stdlib: Fix a 'chars_limit' bug
Diffstat (limited to 'lib/stdlib/src')
| -rw-r--r-- | lib/stdlib/src/io_lib_pretty.erl | 12 | 
1 files changed, 9 insertions, 3 deletions
| diff --git a/lib/stdlib/src/io_lib_pretty.erl b/lib/stdlib/src/io_lib_pretty.erl index dca1b37ef3..ba9d9e8434 100644 --- a/lib/stdlib/src/io_lib_pretty.erl +++ b/lib/stdlib/src/io_lib_pretty.erl @@ -722,7 +722,7 @@ printable_list(L, _D, T, latin1) when T < 0 ->      io_lib:printable_latin1_list(L);  printable_list(L, _D, T, Enc) when T >= 0 ->      case slice(L, tsub(T, 2)) of -        {prefix, ""} -> +        false ->              false;          {prefix, Prefix} when Enc =:= latin1 ->              io_lib:printable_latin1_list(Prefix) andalso {true, Prefix}; @@ -738,11 +738,17 @@ printable_list(L, _D, T, _Uni) when T < 0->      io_lib:printable_list(L).  slice(L, N) -> -    case string:length(L) =< N of +    try string:length(L) =< N of          true ->              all;          false -> -            {prefix, string:slice(L, 0, N)} +            case string:slice(L, 0, N) of +                "" -> +                    false; +                Prefix -> +                    {prefix, Prefix} +            end +    catch _:_ -> false      end.  printable_bin0(Bin, D, T, Enc) -> | 
