* missing-values.c (mv_resize): Don't write beyond end of the
authorBen Pfaff <blp@gnu.org>
Tue, 5 Dec 2006 05:39:29 +0000 (05:39 +0000)
committerBen Pfaff <blp@gnu.org>
Tue, 5 Dec 2006 05:39:29 +0000 (05:39 +0000)
allocated buffer when resizing a long string.

src/data/ChangeLog
src/data/missing-values.c

index 70873e43bbe2e3fe9cc7edeafdbe6fdc7b4a1dea..87d6803f8a26e67462e139bb0b3dfebbfdd1268e 100644 (file)
@@ -1,3 +1,8 @@
+Mon Dec  4 21:38:40 2006  Ben Pfaff  <blp@gnu.org>
+
+       * missing-values.c (mv_resize): Don't write beyond end of the
+       allocated buffer when resizing a long string.
+
 Sat Dec  2 16:28:32 2006  Ben Pfaff  <blp@gnu.org>
 
        Clean up identifier code: don't require identifier enumerations to
index d3b872e049f3d9fa9be29eb351d4d5810f290008..928e80c92a561b41291aaeb2a4ec47e4be708f17 100644 (file)
@@ -328,7 +328,7 @@ void
 mv_resize (struct missing_values *mv, int width) 
 {
   assert (mv_is_resizable (mv, width));
-  if (width > mv->width) 
+  if (width > mv->width && mv->type != MV_NONE
     {
       int i;