X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fvalue-labels.c;h=91dd1702e1f69beaac15933077d8b27beb90c3e7;hb=f500c9c2989d63465b9a93fe6f7e1600207681af;hp=4c1d1a5f234d4b79250784bf9e711b4e34d0c600;hpb=9c01f251cf0e5b5eb3899fc7c62cc595f3d48511;p=pspp-builds.git diff --git a/src/value-labels.c b/src/value-labels.c index 4c1d1a5f..91dd1702 100644 --- a/src/value-labels.c +++ b/src/value-labels.c @@ -498,6 +498,7 @@ free_atom (void *atom_, void *aux UNUSED) const char * value_to_string(const union value *val, const struct variable *var) { + static char buf[100]; char *s; const struct val_labs *val_labs = var->val_labs; @@ -507,12 +508,11 @@ value_to_string(const union value *val, const struct variable *var) return s; if ( 0 == var->width ) + snprintf(buf,100,"%g",val->f); + else { - static char buf[100]; - snprintf(buf,100,"%g",val->f); - return buf; + strncpy(buf,val->s,MAX_SHORT_STRING); + strcat(buf,"\0"); } - else - return val->s; - + return buf; }