ncurses 5.9 - patch 20121229
[ncurses.git] / test / demo_terminfo.c
index ebca898a80b2f7d10f31b95b1b83f60e347a5a5e..d9bf5540b60f0c9df221debfe737b76d55f982ee 100644 (file)
@@ -29,7 +29,7 @@
 /*
  * Author: Thomas E. Dickey
  *
- * $Id: demo_terminfo.c,v 1.11 2012/06/22 23:04:03 tom Exp $
+ * $Id: demo_terminfo.c,v 1.15 2012/12/29 23:36:22 tom Exp $
  *
  * A simple demo of the terminfo interface.
  */
@@ -69,8 +69,8 @@ static long total_values;
 static char *
 make_dbitem(char *p, char *q)
 {
-    char *result = malloc(strlen(e_opt) + 2 + p - q);
-    sprintf(result, "%s=%.*s", e_opt, p - q, q);
+    char *result = malloc(strlen(e_opt) + 2 + (size_t) (p - q));
+    sprintf(result, "%s=%.*s", e_opt, (int) (p - q), q);
     return result;
 }
 
@@ -283,7 +283,7 @@ demo_terminfo(char *name)
            }
 #endif
        } else {
-           char temp[10];
+           char temp[80];
            static const char *xterm_keys[] =
            {
                "kDC", "kDN", "kEND", "kHOM", "kIC",
@@ -292,9 +292,9 @@ demo_terminfo(char *name)
            for (n = 0; n < SIZEOF(xterm_keys); ++n) {
                for (mod = 0; mod < 8; ++mod) {
                    if (mod == 0)
-                       strcpy(temp, xterm_keys[n]);
+                       sprintf(temp, "%.*s", 8, xterm_keys[n]);
                    else
-                       sprintf(temp, "%s%d", xterm_keys[n], mod);
+                       sprintf(temp, "%.*s%d", 8, xterm_keys[n], mod);
                    dumpit(temp);
                }
            }