From: Richard W.M. Jones Date: Sun, 12 Jan 2020 19:13:09 +0000 (+0000) Subject: eval: Remove a single trailing \n from "returning string" functions. X-Git-Tag: v'0.2'~32 X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=257a41b12cb1e3f24872f9d2023c7d44b3c97b71;p=goals.git eval: Remove a single trailing \n from "returning string" functions. --- diff --git a/src/eval.ml b/src/eval.ml index 053d8bf..3363eef 100644 --- a/src/eval.ml +++ b/src/eval.ml @@ -278,6 +278,10 @@ and call_function_really env loc name returning code = let r, b = run_code_to_string env loc code in if r <> 0 then failwithf "function ‘%s’ failed with exit code %d" name r; + (* Remove a single trailing \n if present. *) + let b = + let len = String.length b in + if len > 0 && b.[len-1] = '\n' then String.sub b 0 (len-1) else b in Ast.EConstant (loc, Ast.CString b) | RetStrings ->