First step in making struct variable opaque: the boring mechanical
[pspp-builds.git] / src / language / dictionary / variable-label.c
index 1ae3bc5fbff639e8e53278cdb95d9dde1d910d7e..857c783c45b979a4f24b99f7ea202780b19bcac0 100644 (file)
@@ -62,11 +62,7 @@ cmd_variable_labels (struct lexer *lexer, struct dataset *ds)
          ds_truncate (&label, 255);
        }
       for (i = 0; i < nv; i++)
-       {
-         if (v[i]->label)
-           free (v[i]->label);
-         v[i]->label = ds_xstrdup (&label);
-       }
+        var_set_label (v[i], ds_cstr (&label));
       ds_destroy (&label);
 
       lex_get (lexer);
@@ -83,8 +79,11 @@ cmd_variable_labels (struct lexer *lexer, struct dataset *ds)
 const char *
 var_to_string(const struct variable *var)
 {
+  const char *label;
+  
   if ( !var ) 
     return 0;
 
-  return ( var->label ? var->label : var->name);
+  label = var_get_label (var);
+  return label ? label : var_get_name (var);
 }