vaearagsize the pos_str functions.
authorEric S. Raymond <esr@thyrsus.com>
Sat, 24 Aug 2013 21:36:09 +0000 (17:36 -0400)
committerEric S. Raymond <esr@thyrsus.com>
Sat, 24 Aug 2013 21:36:09 +0000 (17:36 -0400)
display.c
extern.h

index f28fa5c..3d2d29b 100644 (file)
--- a/display.c
+++ b/display.c
@@ -18,6 +18,7 @@ information:
 
 #include <string.h>
 #include <curses.h>
+#include <stdarg.h>
 #include "empire.h"
 #include "extern.h"
 
@@ -667,19 +668,29 @@ Position the cursor and output a string.
 */
 
 void
-pos_str1(int row, int col, char *str, char *a, 
-         int b, int c, int d, int e, int f, int g, int h)
+pos_str1(int row, int col, char *str, ...)
 {
+       va_list ap;
+       char junkbuf[STRSIZE];
+
+       va_start(ap, str);
        (void) move (row, col);
-       addprintf1 (str, a, b, c, d, e, f, g, h);
+       vsprintf(junkbuf, str, ap);
+       (void) addstr (junkbuf);
+       va_end(ap);
 }
 
 void
-pos_str(int row, int col, char *str, 
-       int a, int b, int c, int d, int e, int f, int g, int h)
+pos_str(int row, int col, char *str, ...)
 {
+       va_list ap;
+       char junkbuf[STRSIZE];
+
+       va_start(ap, str);
        (void) move (row, col);
-       addprintf (str, a, b, c, d, e, f, g, h);
+       vsprintf(junkbuf, str, ap);
+       (void) addstr (junkbuf);
+       va_end(ap);
 }
 
 void
index d574ba5..4e9af64 100644 (file)
--- a/extern.h
+++ b/extern.h
@@ -160,8 +160,8 @@ void clear_screen (void);
 void complain (void);
 void delay (void);
 void close_disp (void);
-void pos_str (int row, int col, char *str, int a, int b, int c, int d, int e, int f, int g, int h);
-void pos_str1 (int row, int col, char *str, char *a, int b, int c, int d, int e, int f, int g, int h);
+void pos_str (int row, int col, char *str, ...);
+void pos_str1 (int row, int col, char *str, ...);
 void addprintf (char *str, int a, int b, int c, int d, int e, int f, int g, int h);
 void addprintf1 (char *str, char *a, int b, int c, int d, int e, int f, int g, int h);
 void addprintf2 (char *str, char *a, int b, int c, int d, char *e, char *f, int g, int h);