Much as valgrind is very usefull, it can sometimes hide problems.
authorJohn Darrington <john@darrington.wattle.id.au>
Sat, 23 Apr 2005 09:27:24 +0000 (09:27 +0000)
committerJohn Darrington <john@darrington.wattle.id.au>
Sat, 23 Apr 2005 09:27:24 +0000 (09:27 +0000)
This change corrects one such problem.

po/en_GB.po
po/pspp.pot
src/ChangeLog
src/dictionary.c

index b4205f91d514e990afc2f59a867ec1fbe76c67a2..6411827209852afd62b555b23f0fa869deedfb63 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PSPP 0.3.1\n"
 "Report-Msgid-Bugs-To: pspp-dev@gnu.org\n"
-"POT-Creation-Date: 2005-04-21 11:41+0800\n"
+"POT-Creation-Date: 2005-04-23 15:57+0800\n"
 "PO-Revision-Date: 2004-01-23 13:04+0800\n"
 "Last-Translator: John Darrington <john@darrington.wattle.id.au>\n"
 "Language-Team: John Darrington <john@darrington.wattle.id.au>\n"
@@ -1136,13 +1136,13 @@ msgstr ""
 msgid "Error writing file %s: %s."
 msgstr ""
 
-#: src/dictionary.c:256
+#: src/dictionary.c:258
 #, c-format
 msgid ""
 "The entry \"%s\" in the variable name map, has no corresponding variable"
 msgstr ""
 
-#: src/dictionary.c:836
+#: src/dictionary.c:856
 msgid ""
 "At least one case in the data file had a weight value that was user-missing, "
 "system-missing, zero, or negative.  These case(s) were ignored."
@@ -3046,7 +3046,7 @@ msgstr ""
 msgid "corrupt system file: "
 msgstr ""
 
-#: src/sfm-read.c:149 src/sfm-write.c:918
+#: src/sfm-read.c:149 src/sfm-write.c:919
 #, c-format
 msgid "%s: Closing system file: %s."
 msgstr ""
@@ -3372,7 +3372,7 @@ msgstr ""
 msgid "Error opening \"%s\" for writing as a system file: %s."
 msgstr ""
 
-#: src/sfm-write.c:738
+#: src/sfm-write.c:739
 #, c-format
 msgid "%s: Writing system file: %s."
 msgstr ""
index 47d888d5c9dd78959001fec693c11fdc27741f8d..f6e648bd0d767c53963c616c0932b60f5d36d2cd 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: pspp-dev@gnu.org\n"
-"POT-Creation-Date: 2005-04-21 11:41+0800\n"
+"POT-Creation-Date: 2005-04-23 15:57+0800\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1137,13 +1137,13 @@ msgstr ""
 msgid "Error writing file %s: %s."
 msgstr ""
 
-#: src/dictionary.c:256
+#: src/dictionary.c:258
 #, c-format
 msgid ""
 "The entry \"%s\" in the variable name map, has no corresponding variable"
 msgstr ""
 
-#: src/dictionary.c:836
+#: src/dictionary.c:856
 msgid ""
 "At least one case in the data file had a weight value that was user-missing, "
 "system-missing, zero, or negative.  These case(s) were ignored."
@@ -3047,7 +3047,7 @@ msgstr ""
 msgid "corrupt system file: "
 msgstr ""
 
-#: src/sfm-read.c:149 src/sfm-write.c:918
+#: src/sfm-read.c:149 src/sfm-write.c:919
 #, c-format
 msgid "%s: Closing system file: %s."
 msgstr ""
@@ -3373,7 +3373,7 @@ msgstr ""
 msgid "Error opening \"%s\" for writing as a system file: %s."
 msgstr ""
 
-#: src/sfm-write.c:738
+#: src/sfm-write.c:739
 #, c-format
 msgid "%s: Writing system file: %s."
 msgstr ""
index 2ea75ebb20ff1fb350b0b0eb16d4f047febbef44..248c344e4703ea277799546c223b7d15d2ec5a5c 100644 (file)
@@ -1,3 +1,7 @@
+Sat Apr 23 17:01:04 WST 2005 John Darrington <john@darrington.wattle.id.au>
+
+       * dictionary.c vars-prs.c sfm-write.c: Fixed some memory leaks
+
 Sun Apr 17 23:08:15 2005  Ben Pfaff  <blp@gnu.org>
 
        Start work on fixing MATCH FILES.
index c335423755444bbd5b762dd489c59bbd43d56e9f..141dd8e1f38f914858832120c362b0173a1c73b7 100644 (file)
@@ -422,7 +422,7 @@ dict_create_var_x (struct dictionary *d, const char *name, int width,
   else
     {
       const char *sn = make_short_name(d, name);
-      strncpy(v->name, sn, SHORT_NAME_LEN);
+      strncpy(v->name, sn, SHORT_NAME_LEN + 1);
       free(sn);
     }
   
@@ -774,7 +774,7 @@ dict_rename_vars (struct dictionary *d,
       assert (strlen (new_names[i]) <= LONG_NAME_LEN );
       
       sn = make_short_name(d, new_names[i]);
-      strncpy(vars[i]->name, sn, SHORT_NAME_LEN);
+      strncpy(vars[i]->name, sn, SHORT_NAME_LEN + 1);
       free(sn);
       
 
@@ -1272,6 +1272,7 @@ make_short_name(struct dictionary *dict, const char *longname)
        strcat(d, suffix);
   }
 
+
   return d;
 }