projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve error reporting (but it's mostly untested).
[pspp]
/
src
/
data
/
sys-file-writer.c
diff --git
a/src/data/sys-file-writer.c
b/src/data/sys-file-writer.c
index bbe58aecd643a738af8a58591017b18138f2a76c..7a0fb5a691280ca3e4c542c1dbc3a9ebc09e92c3 100644
(file)
--- a/
src/data/sys-file-writer.c
+++ b/
src/data/sys-file-writer.c
@@
-411,7
+411,7
@@
write_header (struct sfm_writer *w, const struct dictionary *d)
if (time (&t) == (time_t) -1)
{
creation_date = xstrdup ("01 Jan 70");
if (time (&t) == (time_t) -1)
{
creation_date = xstrdup ("01 Jan 70");
- creation_time = xstrdup (
"00:00:00");
+ creation_time = xstrdup ("00:00:00");
}
else
{
}
else
{
@@
-507,6
+507,7
@@
write_variable (struct sfm_writer *w, const struct variable *v)
Missing values for long string variables are written in a separate
record. */
Missing values for long string variables are written in a separate
record. */
+ enum { MAX_SHORT_STRING = 8 };
if (width <= MAX_SHORT_STRING)
{
const struct missing_values *mv = var_get_missing_values (v);
if (width <= MAX_SHORT_STRING)
{
const struct missing_values *mv = var_get_missing_values (v);
@@
-853,8
+854,7
@@
write_mrsets (struct sfm_writer *w, const struct dictionary *dict,
if (mrset->width == 0)
counted = xasprintf ("%.0f", mrset->counted.f);
else
if (mrset->width == 0)
counted = xasprintf ("%.0f", mrset->counted.f);
else
- counted = xmemdup0 (value_str (&mrset->counted, mrset->width),
- mrset->width);
+ counted = xmemdup0 (mrset->counted.s, mrset->width);
ds_put_format (&s, "%zu %s", strlen (counted), counted);
free (counted);
}
ds_put_format (&s, "%zu %s", strlen (counted), counted);
free (counted);
}
@@
-1009,8
+1009,7
@@
write_long_string_value_labels (struct sfm_writer *w,
size_t len;
write_int (w, width);
size_t len;
write_int (w, width);
- write_bytes (w, value_str (val_lab_get_value (val_lab), width),
- width);
+ write_bytes (w, val_lab_get_value (val_lab)->s, width);
label = recode_string (var_get_encoding (var), "UTF-8",
val_lab_get_escaped_label (val_lab), -1);
label = recode_string (var_get_encoding (var), "UTF-8",
val_lab_get_escaped_label (val_lab), -1);
@@
-1079,7
+1078,7
@@
write_long_string_missing_values (struct sfm_writer *w,
const union value *value = mv_get_value (mv, j);
write_int (w, 8);
const union value *value = mv_get_value (mv, j);
write_int (w, 8);
- write_bytes (w, value
_str (value, width)
, 8);
+ write_bytes (w, value
->s
, 8);
}
}
}
}
}
}
@@
-1592,7
+1591,7
@@
write_value (struct sfm_writer *w, const union value *value, int width)
write_float (w, value->f);
else
{
write_float (w, value->f);
else
{
- write_bytes (w, value
_str (value, width)
, width);
+ write_bytes (w, value
->s
, width);
write_zeros (w, 8 - width);
}
}
write_zeros (w, 8 - width);
}
}