|
|
|
@ -20,7 +20,6 @@ |
|
|
|
# |
|
|
|
# --- ROCK-COPYRIGHT-NOTE-END --- |
|
|
|
|
|
|
|
|
|
|
|
On some architectures that either store the variable args as an array |
|
|
|
of pointers (of length 1) or they are passed in registers (see man va_arg) |
|
|
|
the macro va_copy is needed .... |
|
|
|
@ -57,3 +56,22 @@ the macro va_copy is needed .... |
|
|
|
VA_END(ap); |
|
|
|
if (err) |
|
|
|
{ |
|
|
|
--- ./screen.c 2003-11-14 19:51:27.000000000 +0100
|
|
|
|
+++ ./screen.c 2003-11-14 19:49:16.000000000 +0100
|
|
|
|
@@ -1890,12 +1890,15 @@
|
|
|
|
#endif |
|
|
|
{ |
|
|
|
VA_LIST(ap) |
|
|
|
+ VA_LIST(aq)
|
|
|
|
char buf[MAXPATHLEN*2]; |
|
|
|
char *p = buf; |
|
|
|
|
|
|
|
VA_START(ap, fmt); |
|
|
|
fmt = DoNLS(fmt); |
|
|
|
- (void)vsnprintf(p, sizeof(buf) - 100, fmt, VA_ARGS(ap));
|
|
|
|
+ va_copy (aq, ap);
|
|
|
|
+ (void)vsnprintf(p, sizeof(buf) - 100, fmt, aq);
|
|
|
|
+ VA_END(aq);
|
|
|
|
VA_END(ap); |
|
|
|
if (err) |
|
|
|
{ |