From 693e80e93897aff3b07a1ef12b68a6527702f3d7 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 8 Mar 2020 18:41:09 +0100 Subject: [PATCH] patch 8.2.0364: printf test failing on Haiku Problem: Printf test failing on Haiku. Solution: Make a difference between int and short. (Dominique Pelle, closes #5749) --- src/message.c | 16 ++++++++++++---- src/version.c | 2 ++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/message.c b/src/message.c index cb1a773ce..0119145cf 100644 --- a/src/message.c +++ b/src/message.c @@ -4722,9 +4722,13 @@ vim_vsnprintf_typval( // signed switch (length_modifier) { - case '\0': + case '\0': str_arg_l += sprintf( + tmp + str_arg_l, f, + int_arg); + break; case 'h': str_arg_l += sprintf( - tmp + str_arg_l, f, int_arg); + tmp + str_arg_l, f, + (short)int_arg); break; case 'l': str_arg_l += sprintf( tmp + str_arg_l, f, long_arg); @@ -4739,9 +4743,13 @@ vim_vsnprintf_typval( // unsigned switch (length_modifier) { - case '\0': + case '\0': str_arg_l += sprintf( + tmp + str_arg_l, f, + uint_arg); + break; case 'h': str_arg_l += sprintf( - tmp + str_arg_l, f, uint_arg); + tmp + str_arg_l, f, + (unsigned short)uint_arg); break; case 'l': str_arg_l += sprintf( tmp + str_arg_l, f, ulong_arg); diff --git a/src/version.c b/src/version.c index 60deed84a..d88f5ec11 100644 --- a/src/version.c +++ b/src/version.c @@ -738,6 +738,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 364, /**/ 363, /**/ -- 2.50.1