sys-file-reader: Elevate invalid number of labels from warning to error.
authorBen Pfaff <blp@cs.stanford.edu>
Sun, 30 Jan 2011 23:41:12 +0000 (15:41 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Fri, 4 Feb 2011 04:34:29 +0000 (20:34 -0800)
There's no way to figure out when the labels end when the count is wrong,
so this has to be an error.

src/data/sys-file-reader.c

index d2f48fb41d64df642fa38c69e2bbc5c58c5b98bd..8f39f47826c8f6e6a26b2ff08ae7644c33683308 100644 (file)
@@ -1408,11 +1408,7 @@ read_value_labels (struct sfm_reader *r,
   label_cnt = read_int (r);
 
   if (size_overflow_p (xtimes (label_cnt, sizeof *labels)))
-    {
-      sys_warn (r, _("Invalid number of labels: %d.  Ignoring labels."),
-                label_cnt);
-      label_cnt = 0;
-    }
+    sys_error (r, _("Invalid number of labels %d."), label_cnt);
 
   /* Read each value/label tuple into labels[]. */
   labels = pool_nalloc (subpool, label_cnt, sizeof *labels);