projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix bug in value labels dialog box
[pspp]
/
src
/
ui
/
syntax-gen.c
diff --git
a/src/ui/syntax-gen.c
b/src/ui/syntax-gen.c
index 84415c3e92f38adac840c6842c433c2b8aeab49d..f063fa3965b4c840b76ec02a91bf08733e85a27a 100644
(file)
--- a/
src/ui/syntax-gen.c
+++ b/
src/ui/syntax-gen.c
@@
-146,20
+146,22
@@
syntax_gen_number (struct string *output,
& (FMT_CAT_DATE | FMT_CAT_TIME | FMT_CAT_DATE_COMPONENT)))
{
union value v_in, v_out;
& (FMT_CAT_DATE | FMT_CAT_TIME | FMT_CAT_DATE_COMPONENT)))
{
union value v_in, v_out;
- char
buffer[FMT_MAX_NUMERIC_WIDTH]
;
+ char
*s
;
bool ok;
v_in.f = number;
bool ok;
v_in.f = number;
-
data_out (&v_in, format, buffer
);
+
s = data_out (&v_in, "FIXME", format
);
msg_disable ();
msg_disable ();
- ok = data_in (ss_
buffer (buffer, format->w
), LEGACY_NATIVE,
+ ok = data_in (ss_
cstr (s
), LEGACY_NATIVE,
format->type, false, 0, 0, &v_out, 0);
msg_enable ();
if (ok && v_out.f == number)
{
format->type, false, 0, 0, &v_out, 0);
msg_enable ();
if (ok && v_out.f == number)
{
- syntax_gen_string (output, ss_buffer (buffer, format->w));
+ syntax_gen_string (output, ss_cstr (s));
+ free (s);
return;
}
return;
}
+ free (s);
}
if (number == SYSMIS)
}
if (number == SYSMIS)
@@
-194,7
+196,7
@@
syntax_gen_value (struct string *output, const union value *value, int width,
if (width == 0)
syntax_gen_number (output, value->f, format);
else
if (width == 0)
syntax_gen_number (output, value->f, format);
else
- syntax_gen_string (output, ss_buffer (value
->s
, width));
+ syntax_gen_string (output, ss_buffer (value
_str (value, width)
, width));
}
/* Appends <low> THRU <high> to OUTPUT. If LOW is LOWEST, then
}
/* Appends <low> THRU <high> to OUTPUT. If LOW is LOWEST, then