patch 8.0.0709: libvterm cannot use vsnprintf()
Problem: Libvterm cannot use vsnprintf(), it does not exist in C90.
Solution: Use vim_vsnprintf() instead.
diff --git a/src/message.c b/src/message.c
index aeceee1..9320d11 100644
--- a/src/message.c
+++ b/src/message.c
@@ -382,7 +382,7 @@
va_list arglist;
va_start(arglist, s);
- vim_vsnprintf((char *)IObuff, IOSIZE, (char *)s, arglist, NULL);
+ vim_vsnprintf((char *)IObuff, IOSIZE, (char *)s, arglist);
va_end(arglist);
return msg(IObuff);
}
@@ -396,7 +396,7 @@
va_list arglist;
va_start(arglist, s);
- vim_vsnprintf((char *)IObuff, IOSIZE, (char *)s, arglist, NULL);
+ vim_vsnprintf((char *)IObuff, IOSIZE, (char *)s, arglist);
va_end(arglist);
return msg_attr(IObuff, attr);
}
@@ -4232,7 +4232,7 @@
/*
* When va_list is not supported we only define vim_snprintf().
*
- * vim_vsnprintf() can be invoked with either "va_list" or a list of
+ * vim_vsnprintf_typval() can be invoked with either "va_list" or a list of
* "typval_T". When the latter is not used it must be NULL.
*/
@@ -4254,7 +4254,7 @@
else
space = str_m - len;
va_start(ap, fmt);
- str_l = vim_vsnprintf(str + len, space, fmt, ap, NULL);
+ str_l = vim_vsnprintf(str + len, space, fmt, ap);
va_end(ap);
return str_l;
}
@@ -4266,7 +4266,7 @@
int str_l;
va_start(ap, fmt);
- str_l = vim_vsnprintf(str, str_m, fmt, ap, NULL);
+ str_l = vim_vsnprintf(str, str_m, fmt, ap);
va_end(ap);
return str_l;
}
@@ -4276,6 +4276,16 @@
char *str,
size_t str_m,
char *fmt,
+ va_list ap)
+{
+ return vim_vsnprintf_typval(str, str_m, fmt, ap, NULL);
+}
+
+ int
+vim_vsnprintf_typval(
+ char *str,
+ size_t str_m,
+ char *fmt,
va_list ap,
typval_T *tvs)
{