Просмотр исходного кода

Fix crash when env vars contain utf8 chars

pull/3/head
Dave Thomas 12 лет назад
Родитель
Сommit
dd277fd01a
1 измененных файлов: 3 добавлений и 3 удалений
  1. +3
    -3
      src/rebar_utils.erl

+ 3
- 3
src/rebar_utils.erl Просмотреть файл

@ -191,12 +191,12 @@ expand_env_variable(InStr, VarName, RawVarValue) ->
%% No variables to expand %% No variables to expand
InStr; InStr;
_ -> _ ->
VarValue = re:replace(RawVarValue, "\\\\", "\\\\\\\\", [global, unicode]),
ReOpts = [global, unicode],
VarValue = re:replace(RawVarValue, "\\\\", "\\\\\\\\", ReOpts),
%% Use a regex to match/replace: %% Use a regex to match/replace:
%% Given variable "FOO": match $FOO\s | $FOOeol | ${FOO} %% Given variable "FOO": match $FOO\s | $FOOeol | ${FOO}
RegEx = io_lib:format("\\\$(~s(\\s|$)|{~s})", [VarName, VarName]), RegEx = io_lib:format("\\\$(~s(\\s|$)|{~s})", [VarName, VarName]),
ReOpts = [global, {return, list}, unicode],
re:replace(InStr, RegEx, [VarValue, "\\2"], ReOpts)
re:replace(InStr, RegEx, [VarValue, "\\2"], ReOpts ++ [{return, list}])
end. end.
vcs_vsn(Config, Vcs, Dir) -> vcs_vsn(Config, Vcs, Dir) ->

Загрузка…
Отмена
Сохранить