for (i = 0; i < in.length; i++)
{
unsigned char c = in.string[i];
- ds_put_char (output, "0123456789ABCDEF"[c >> 4]);
- ds_put_char (output, "0123456789ABCDEF"[c & 0xf]);
+ ds_put_byte (output, "0123456789ABCDEF"[c >> 4]);
+ ds_put_byte (output, "0123456789ABCDEF"[c & 0xf]);
}
}
static bool
has_single_quote (struct substring str)
{
- return (SIZE_MAX != ss_find_char (str, '\''));
+ return (SIZE_MAX != ss_find_byte (str, '\''));
}
static bool
has_double_quote (struct substring str)
{
- return (SIZE_MAX != ss_find_char (str, '"'));
+ return (SIZE_MAX != ss_find_byte (str, '"'));
}
/* Appends to OUTPUT valid PSPP syntax for a quoted string that
{
ds_put_cstr (output, "X'");
syntax_gen_hex_digits (output, in);
- ds_put_char (output, '\'');
+ ds_put_byte (output, '\'');
}
else
{
assert (is_basic ('\''));
quote = has_double_quote (in) && !has_single_quote (in) ? '\'' : '"';
- ds_put_char (output, quote);
+ ds_put_byte (output, quote);
for (i = 0; i < in.length; i++)
{
char c = in.string[i];
if (c == quote)
- ds_put_char (output, quote);
- ds_put_char (output, c);
+ ds_put_byte (output, quote);
+ ds_put_byte (output, c);
}
- ds_put_char (output, quote);
+ ds_put_byte (output, quote);
}
}
& (FMT_CAT_DATE | FMT_CAT_TIME | FMT_CAT_DATE_COMPONENT)))
{
union value v_in, v_out;
- char *s;
+ char *s, *error;
bool ok;
v_in.f = number;
s = data_out (&v_in, "FIXME", format);
- msg_disable ();
+
/* FIXME: UTF8 encoded strings will fail here */
- ok = data_in (ss_cstr (s), LEGACY_NATIVE,
- format->type, false, 0, 0, NULL, &v_out, 0);
- msg_enable ();
+ error = data_in (ss_cstr (s), LEGACY_NATIVE,
+ format->type, &v_out, 0, NULL);
+ ok = error == NULL;
+ free (error);
+
if (ok && v_out.f == number)
{
syntax_gen_string (output, ss_cstr (s));
}
case '%':
- ds_put_char (output, '%');
+ ds_put_byte (output, '%');
break;
default: