]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/cardfile.c
ncurses 6.1 - patch 20180303
[ncurses.git] / test / cardfile.c
index 0bcffbb1ec6a0cbd198b8888273082977d7deafa..ba9e8de53bae1f8b2eff2c0485247f9dc849e37c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
 /****************************************************************************
- * Copyright (c) 1999-2010,2012 Free Software Foundation, Inc.              *
+ * Copyright (c) 1999-2016,2017 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -29,7 +29,7 @@
 /*
  * Author: Thomas E. Dickey
  *
 /*
  * Author: Thomas E. Dickey
  *
- * $Id: cardfile.c,v 1.40 2012/10/27 19:37:56 tom Exp $
+ * $Id: cardfile.c,v 1.45 2017/10/19 21:14:25 tom Exp $
  *
  * File format: text beginning in column 1 is a title; other text is content.
  */
  *
  * File format: text beginning in column 1 is a title; other text is content.
  */
@@ -76,20 +76,6 @@ failed(const char *s)
     ExitProgram(EXIT_FAILURE);
 }
 
     ExitProgram(EXIT_FAILURE);
 }
 
-#if !HAVE_STRDUP
-#define strdup my_strdup
-static char *
-strdup(const char *s)
-{
-    char *p = typeMalloc(char, strlen(s) + 1);
-    if (p)
-       strcpy(p, s);
-    else
-       failed("strdup");
-    return (p);
-}
-#endif /* not HAVE_STRDUP */
-
 static const char *
 skip(const char *buffer)
 {
 static const char *
 skip(const char *buffer)
 {
@@ -121,7 +107,7 @@ add_title(const char *title)
            break;
     }
 
            break;
     }
 
-    card = typeCalloc(CARD, 1);
+    card = typeCalloc(CARD, (size_t) 1);
     card->title = strdup(title);
     card->content = strdup("");
 
     card->title = strdup(title);
     card->content = strdup("");
 
@@ -146,8 +132,10 @@ add_content(CARD * card, const char *content)
        if (card->content != 0 && (offset = strlen(card->content)) != 0) {
            total += 1 + offset;
            card->content = typeRealloc(char, total + 1, card->content);
        if (card->content != 0 && (offset = strlen(card->content)) != 0) {
            total += 1 + offset;
            card->content = typeRealloc(char, total + 1, card->content);
-           if (card->content)
-               strcpy(card->content + offset++, " ");
+           if (card->content) {
+               _nc_STRCPY(card->content + offset, " ", total + 1 - offset);
+               offset++;
+           }
        } else {
            offset = 0;
            if (card->content != 0)
        } else {
            offset = 0;
            if (card->content != 0)
@@ -155,7 +143,7 @@ add_content(CARD * card, const char *content)
            card->content = typeMalloc(char, total + 1);
        }
        if (card->content)
            card->content = typeMalloc(char, total + 1);
        }
        if (card->content)
-           strcpy(card->content + offset, content);
+           _nc_STRCPY(card->content + offset, content, total + 1 - offset);
        else
            failed("add_content");
     }
        else
            failed("add_content");
     }
@@ -349,7 +337,7 @@ form_virtualize(WINDOW *w)
 static FIELD **
 make_fields(CARD * p, int form_high, int form_wide)
 {
 static FIELD **
 make_fields(CARD * p, int form_high, int form_wide)
 {
-    FIELD **f = typeCalloc(FIELD *, 3);
+    FIELD **f = typeCalloc(FIELD *, (size_t) 3);
 
     f[0] = new_field(1, form_wide, 0, 0, 0, 0);
     set_field_back(f[0], A_REVERSE);
 
     f[0] = new_field(1, form_wide, 0, 0, 0, 0);
     set_field_back(f[0], A_REVERSE);
@@ -561,7 +549,7 @@ usage(void)
 {
     static const char *msg[] =
     {
 {
     static const char *msg[] =
     {
-       "Usage: view [options] file"
+       "Usage: cardfile [options] file"
        ,""
        ,"Options:"
        ," -c       use color if terminal supports it"
        ,""
        ,"Options:"
        ," -c       use color if terminal supports it"