From df7728d81f0b6bc0860e69639567dad82e5132b8 Mon Sep 17 00:00:00 2001 From: Fred Hebert Date: Tue, 14 Nov 2017 21:20:36 -0500 Subject: [PATCH] Fix bad unicode transition for OTP 20+ The trim/3 function accepts a list of graphemes rather than a single character. This means previous patches were wrong and totally breaking. --- src/ec_git_vsn.erl | 4 ++-- src/ec_talk.erl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ec_git_vsn.erl b/src/ec_git_vsn.erl index f4ffa29..7e16e44 100644 --- a/src/ec_git_vsn.erl +++ b/src/ec_git_vsn.erl @@ -89,7 +89,7 @@ parse_tags(Pattern) -> Cmd = io_lib:format("git describe --abbrev=0 --match \"~s*\"", [Pattern]), Tag = os:cmd(Cmd), Vsn = slice(Tag, len(Pattern) + 1), - Vsn1 = trim(Vsn, left, $v), + Vsn1 = trim(Vsn, left, "v"), {Tag, Vsn1}. -ifdef(unicode_str). @@ -98,6 +98,6 @@ trim(Str, Dir, Chars) -> string:trim(Str, Dir, Chars). slice(Str, Len) -> string:slice(Str, Len). -else. len(Str) -> string:len(Str). -trim(Str, Dir, Chars) -> string:strip(Str, Dir, Chars). +trim(Str, Dir, [Chars|_]) -> string:strip(Str, Dir, Chars). slice(Str, Len) -> string:substr(Str, Len). -endif. diff --git a/src/ec_talk.erl b/src/ec_talk.erl index 80ac1c5..366c9c0 100644 --- a/src/ec_talk.erl +++ b/src/ec_talk.erl @@ -127,7 +127,7 @@ ask_convert(Prompt, TransFun, Type, Default) -> Default -> [" (", io_lib:format("~p", [Default]) , ")"] end, "> "])), - Data = trim(trim(io:get_line(NewPrompt)), both, $\n), + Data = trim(trim(io:get_line(NewPrompt)), both, [$\n]), Ret = TransFun(Data), case Ret of no_data -> @@ -202,7 +202,7 @@ trim(Str) -> string:trim(Str). trim(Str, Dir, Chars) -> string:trim(Str, Dir, Chars). -else. trim(Str) -> string:strip(Str). -trim(Str, Dir, Chars) -> string:strip(Str, Dir, Chars). +trim(Str, Dir, [Chars|_]) -> string:strip(Str, Dir, Chars). -endif. %%%====================================================================