pspp-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pspp-cvs] pspp/src/language/data-io list.q ChangeLog


From: Ben Pfaff
Subject: [Pspp-cvs] pspp/src/language/data-io list.q ChangeLog
Date: Sun, 07 May 2006 05:26:03 +0000

CVSROOT:        /cvsroot/pspp
Module name:    pspp
Branch:         
Changes by:     Ben Pfaff <address@hidden>      06/05/07 05:26:03

Modified files:
        src/language/data-io: list.q ChangeLog 

Log message:
        Fix segfault.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pspp/pspp/src/language/data-io/list.q.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/pspp/pspp/src/language/data-io/ChangeLog.diff?tr1=1.17&tr2=1.18&r1=text&r2=text

Patches:
Index: pspp/src/language/data-io/ChangeLog
diff -u pspp/src/language/data-io/ChangeLog:1.17 
pspp/src/language/data-io/ChangeLog:1.18
--- pspp/src/language/data-io/ChangeLog:1.17    Sun May  7 02:04:12 2006
+++ pspp/src/language/data-io/ChangeLog Sun May  7 05:26:03 2006
@@ -1,3 +1,10 @@
+Sat May  6 22:25:09 2006  Ben Pfaff  <address@hidden>
+
+       Fix segfault.
+       
+       * list.q (write_fallback_headers): (write_fallback_headers)
+       Properly record width of leader and pass it to write_varname().
+
 Sat May  6 19:03:13 2006  Ben Pfaff  <address@hidden>
 
        * get.c: (mtf_merge_dictionary) Fix value label memory leak.
Index: pspp/src/language/data-io/list.q
diff -u pspp/src/language/data-io/list.q:1.9 
pspp/src/language/data-io/list.q:1.10
--- pspp/src/language/data-io/list.q:1.9        Sat May  6 17:46:52 2006
+++ pspp/src/language/data-io/list.q    Sun May  7 05:26:03 2006
@@ -438,6 +438,7 @@
   while (index < cmd.n_variables)
     {
       struct outp_text text;
+      int leader_width;
 
       /* Ensure that there is enough room for a line of text. */
       if (d->cp_y + d->font_height > d->length)
@@ -452,7 +453,8 @@
       text.y = d->cp_y;
       text.h = text.v = INT_MAX;
       d->class->text_draw (d, &text);
-      d->class->text_metrics (d, &text, &d->cp_x, NULL);
+      d->class->text_metrics (d, &text, &leader_width, NULL);
+      d->cp_x = leader_width;
 
       goto entry;
       do
@@ -473,9 +475,10 @@
          }
          
          {
-           char varname[10];
-           sprintf (varname, " %s", cmd.v_variables[index]->name);
-           write_varname (d, varname, text.h);
+           char varname[LONG_NAME_LEN + 2];
+           snprintf (varname, sizeof varname,
+                      " %s", cmd.v_variables[index]->name);
+           write_varname (d, varname, leader_width);
          }
        }
       while (++index < cmd.n_variables);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]