From: Ben Pfaff Date: Wed, 2 Jan 2019 22:26:24 +0000 (-0800) Subject: por-file-reader: Use xasprintf() to avoid need for careful buffer sizing. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pspp;a=commitdiff_plain;h=9e583dc3ff4b8cae46ac0fb1b1d6816061ea951f por-file-reader: Use xasprintf() to avoid need for careful buffer sizing. GCC 4.9 complained about this, saying that the output could exceed the buffer size. It doesn't seem worth arguing with it. --- diff --git a/src/data/por-file-reader.c b/src/data/por-file-reader.c index 1dcbeac71c..343615a826 100644 --- a/src/data/por-file-reader.c +++ b/src/data/por-file-reader.c @@ -43,7 +43,6 @@ #include "libpspp/pool.h" #include "libpspp/str.h" -#include "gl/intprops.h" #include "gl/minmax.h" #include "gl/xalloc.h" #include "gl/xmemdup0.h" @@ -729,9 +728,9 @@ read_variables (struct pfm_reader *r, struct dictionary *dict) unsigned long int i; for (i = 1; ; i++) { - char try_name[8 + 1 + INT_STRLEN_BOUND (i) + 1]; - sprintf (try_name, "%s_%lu", name, i); + char *try_name = xasprintf ("%s_%lu", name, i); v = dict_create_var (dict, try_name, width); + free (try_name); if (v != NULL) break; }