diff options
author | ZyX <kp-pav@yandex.ru> | 2018-04-08 19:21:44 +0300 |
---|---|---|
committer | ZyX <kp-pav@yandex.ru> | 2018-04-09 10:29:28 +0300 |
commit | 58a5699a4400d1d706056e456ca641b3e4b0a5e9 (patch) | |
tree | f80f18b1ffc6d27ba40f3f7fd5694e8469b0187e /src/nvim/charset.c | |
parent | 2a6491cdf86709abd2a7c7920e190c1a802b4f26 (diff) | |
download | rneovim-58a5699a4400d1d706056e456ca641b3e4b0a5e9.tar.gz rneovim-58a5699a4400d1d706056e456ca641b3e4b0a5e9.tar.bz2 rneovim-58a5699a4400d1d706056e456ca641b3e4b0a5e9.zip |
buffer: PVS/V557: Refactor maketitle()
Diffstat (limited to 'src/nvim/charset.c')
-rw-r--r-- | src/nvim/charset.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/nvim/charset.c b/src/nvim/charset.c index 2604c09ca4..d8d080ee8a 100644 --- a/src/nvim/charset.c +++ b/src/nvim/charset.c @@ -359,9 +359,9 @@ size_t transstr_len(const char *const s) /// @param[in] len Buffer length. Resulting string may not occupy more then /// len - 1 bytes (one for trailing NUL byte). /// -/// @return `buf` argument unchanged. -char *transstr_buf(const char *const s, char *const buf, const size_t len) - FUNC_ATTR_NONNULL_RET FUNC_ATTR_NONNULL_ALL +/// @return length of the resulting string, without the NUL byte. +size_t transstr_buf(const char *const s, char *const buf, const size_t len) + FUNC_ATTR_NONNULL_ALL { const char *p = s; char *buf_p = buf; @@ -400,7 +400,7 @@ char *transstr_buf(const char *const s, char *const buf, const size_t len) } *buf_p = NUL; assert(buf_p <= buf_e); - return buf; + return (size_t)(buf_p - buf); } /// Copy string and replace special characters with printable characters @@ -416,7 +416,9 @@ char *transstr(const char *const s) // Compute the length of the result, taking account of unprintable // multi-byte characters. const size_t len = transstr_len((const char *)s) + 1; - return transstr_buf(s, xmalloc(len), len); + char *const buf = xmalloc(len); + transstr_buf(s, buf, len); + return buf; } /// Convert the string "str[orglen]" to do ignore-case comparing. |