neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit a1f0f0b2bc19f29948c3b9e6c71f3a5e80eaceea
parent ac0fda2e46708f474a810e16407341c9f7b47dfe
Author: zeertzjq <zeertzjq@outlook.com>
Date:   Sun, 17 Sep 2023 11:05:36 +0800

vim-patch:9.0.1633: duplicate code for converting float to string

Problem:    Duplicate code for converting float to string.
Solution:   Use tv_get_string(). (closes vim/vim#12521)

https://github.com/vim/vim/commit/19dfa276c37dcf657922c6f9b48cf2954191e8b6

Diffstat:
Msrc/nvim/eval.c | 13+++----------
1 file changed, 3 insertions(+), 10 deletions(-)

diff --git a/src/nvim/eval.c b/src/nvim/eval.c @@ -949,8 +949,7 @@ int skip_expr(char **pp, evalarg_T *const evalarg) /// Convert "tv" to a string. /// -/// @param convert when true convert a List into a sequence of lines and convert -/// a Float to a String. +/// @param convert when true convert a List into a sequence of lines. /// /// @return an allocated string. static char *typval2string(typval_T *tv, bool convert) @@ -967,20 +966,14 @@ static char *typval2string(typval_T *tv, bool convert) ga_append(&ga, NUL); return (char *)ga.ga_data; } - if (convert && tv->v_type == VAR_FLOAT) { - char numbuf[NUMBUFLEN]; - vim_snprintf(numbuf, NUMBUFLEN, "%g", tv->vval.v_float); - return xstrdup(numbuf); - } return xstrdup(tv_get_string(tv)); } /// Top level evaluation function, returning a string. /// -/// @param convert when true convert a List into a sequence of lines and convert -/// a Float to a String. +/// @param convert when true convert a List into a sequence of lines. /// -/// @return pointer to allocated memory, or NULL for failure. +/// @return pointer to allocated memory, or NULL for failure. char *eval_to_string(char *arg, bool convert) { typval_T tv;