summaryrefslogtreecommitdiffstats
path: root/gettext-tools/src/format-sh.c
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2009-12-12 12:22:07 +0100
committerBruno Haible <bruno@clisp.org>2009-12-12 16:13:42 +0100
commitc4031b5252bc3c539b5c041c2e30fd7fb88382d9 (patch)
treeaa1e352796505a4b7def4083ace1dedb94e96c98 /gettext-tools/src/format-sh.c
parent24d34031721a97d3e7b498ccbf8b5779d2acc93e (diff)
downloadexternal_gettext-c4031b5252bc3c539b5c041c2e30fd7fb88382d9.zip
external_gettext-c4031b5252bc3c539b5c041c2e30fd7fb88382d9.tar.gz
external_gettext-c4031b5252bc3c539b5c041c2e30fd7fb88382d9.tar.bz2
Untabify.
Diffstat (limited to 'gettext-tools/src/format-sh.c')
-rw-r--r--gettext-tools/src/format-sh.c314
1 files changed, 157 insertions, 157 deletions
diff --git a/gettext-tools/src/format-sh.c b/gettext-tools/src/format-sh.c
index 5a7494e..b796fcd 100644
--- a/gettext-tools/src/format-sh.c
+++ b/gettext-tools/src/format-sh.c
@@ -72,7 +72,7 @@ static int
named_arg_compare (const void *p1, const void *p2)
{
return strcmp (((const struct named_arg *) p1)->name,
- ((const struct named_arg *) p2)->name);
+ ((const struct named_arg *) p2)->name);
}
#define INVALID_NON_ASCII_VARIABLE() \
@@ -86,7 +86,7 @@ named_arg_compare (const void *p1, const void *p2)
static void *
format_parse (const char *format, bool translated, char *fdi,
- char **invalid_reason)
+ char **invalid_reason)
{
const char *const format_start = format;
struct spec spec;
@@ -100,113 +100,113 @@ format_parse (const char *format, bool translated, char *fdi,
for (; *format != '\0';)
if (*format++ == '$')
{
- /* A variable substitution. */
- char *name;
-
- FDI_SET (format - 1, FMTDIR_START);
- spec.directives++;
-
- if (*format == '{')
- {
- const char *name_start;
- const char *name_end;
- size_t n;
-
- name_start = ++format;
- for (; *format != '\0'; format++)
- {
- if (*format == '}')
- break;
- if (!c_isascii (*format))
- {
- *invalid_reason = INVALID_NON_ASCII_VARIABLE ();
- FDI_SET (format, FMTDIR_ERROR);
- goto bad_format;
- }
- if (format > name_start
- && (*format == '-' || *format == '=' || *format == '+'
- || *format == '?' || *format == ':'))
- {
- *invalid_reason = INVALID_SHELL_SYNTAX ();
- FDI_SET (format, FMTDIR_ERROR);
- goto bad_format;
- }
- if (!(c_isalnum (*format) || *format == '_')
- || (format == name_start && c_isdigit (*format)))
- {
- *invalid_reason = INVALID_CONTEXT_DEPENDENT_VARIABLE ();
- FDI_SET (format, FMTDIR_ERROR);
- goto bad_format;
- }
- }
- if (*format == '\0')
- {
- *invalid_reason = INVALID_UNTERMINATED_DIRECTIVE ();
- FDI_SET (format - 1, FMTDIR_ERROR);
- goto bad_format;
- }
- name_end = format++;
-
- n = name_end - name_start;
- if (n == 0)
- {
- *invalid_reason = INVALID_EMPTY_VARIABLE ();
- FDI_SET (format - 1, FMTDIR_ERROR);
- goto bad_format;
- }
- name = XNMALLOC (n + 1, char);
- memcpy (name, name_start, n);
- name[n] = '\0';
- }
- else if (c_isalpha (*format) || *format == '_')
- {
- const char *name_start;
- const char *name_end;
- size_t n;
-
- name_start = format;
- do
- format++;
- while (*format != '\0' && (c_isalnum (*format) || *format == '_'));
- name_end = format;
-
- n = name_end - name_start;
- name = XNMALLOC (n + 1, char);
- memcpy (name, name_start, n);
- name[n] = '\0';
- }
- else if (*format != '\0')
- {
- if (!c_isascii (*format))
- {
- *invalid_reason = INVALID_NON_ASCII_VARIABLE ();
- FDI_SET (format, FMTDIR_ERROR);
- goto bad_format;
- }
- else
- {
- *invalid_reason = INVALID_CONTEXT_DEPENDENT_VARIABLE ();
- FDI_SET (format, FMTDIR_ERROR);
- goto bad_format;
- }
- }
- else
- {
- *invalid_reason = INVALID_UNTERMINATED_DIRECTIVE ();
- FDI_SET (format - 1, FMTDIR_ERROR);
- goto bad_format;
- }
-
- /* Named argument. */
- if (spec.allocated == spec.named_arg_count)
- {
- spec.allocated = 2 * spec.allocated + 1;
- spec.named = (struct named_arg *) xrealloc (spec.named, spec.allocated * sizeof (struct named_arg));
- }
- spec.named[spec.named_arg_count].name = name;
- spec.named_arg_count++;
-
- FDI_SET (format - 1, FMTDIR_END);
+ /* A variable substitution. */
+ char *name;
+
+ FDI_SET (format - 1, FMTDIR_START);
+ spec.directives++;
+
+ if (*format == '{')
+ {
+ const char *name_start;
+ const char *name_end;
+ size_t n;
+
+ name_start = ++format;
+ for (; *format != '\0'; format++)
+ {
+ if (*format == '}')
+ break;
+ if (!c_isascii (*format))
+ {
+ *invalid_reason = INVALID_NON_ASCII_VARIABLE ();
+ FDI_SET (format, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ if (format > name_start
+ && (*format == '-' || *format == '=' || *format == '+'
+ || *format == '?' || *format == ':'))
+ {
+ *invalid_reason = INVALID_SHELL_SYNTAX ();
+ FDI_SET (format, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ if (!(c_isalnum (*format) || *format == '_')
+ || (format == name_start && c_isdigit (*format)))
+ {
+ *invalid_reason = INVALID_CONTEXT_DEPENDENT_VARIABLE ();
+ FDI_SET (format, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ }
+ if (*format == '\0')
+ {
+ *invalid_reason = INVALID_UNTERMINATED_DIRECTIVE ();
+ FDI_SET (format - 1, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ name_end = format++;
+
+ n = name_end - name_start;
+ if (n == 0)
+ {
+ *invalid_reason = INVALID_EMPTY_VARIABLE ();
+ FDI_SET (format - 1, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ name = XNMALLOC (n + 1, char);
+ memcpy (name, name_start, n);
+ name[n] = '\0';
+ }
+ else if (c_isalpha (*format) || *format == '_')
+ {
+ const char *name_start;
+ const char *name_end;
+ size_t n;
+
+ name_start = format;
+ do
+ format++;
+ while (*format != '\0' && (c_isalnum (*format) || *format == '_'));
+ name_end = format;
+
+ n = name_end - name_start;
+ name = XNMALLOC (n + 1, char);
+ memcpy (name, name_start, n);
+ name[n] = '\0';
+ }
+ else if (*format != '\0')
+ {
+ if (!c_isascii (*format))
+ {
+ *invalid_reason = INVALID_NON_ASCII_VARIABLE ();
+ FDI_SET (format, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ else
+ {
+ *invalid_reason = INVALID_CONTEXT_DEPENDENT_VARIABLE ();
+ FDI_SET (format, FMTDIR_ERROR);
+ goto bad_format;
+ }
+ }
+ else
+ {
+ *invalid_reason = INVALID_UNTERMINATED_DIRECTIVE ();
+ FDI_SET (format - 1, FMTDIR_ERROR);
+ goto bad_format;
+ }
+
+ /* Named argument. */
+ if (spec.allocated == spec.named_arg_count)
+ {
+ spec.allocated = 2 * spec.allocated + 1;
+ spec.named = (struct named_arg *) xrealloc (spec.named, spec.allocated * sizeof (struct named_arg));
+ }
+ spec.named[spec.named_arg_count].name = name;
+ spec.named_arg_count++;
+
+ FDI_SET (format - 1, FMTDIR_END);
}
/* Sort the named argument array, and eliminate duplicates. */
@@ -215,18 +215,18 @@ format_parse (const char *format, bool translated, char *fdi,
unsigned int i, j;
qsort (spec.named, spec.named_arg_count, sizeof (struct named_arg),
- named_arg_compare);
+ named_arg_compare);
/* Remove duplicates: Copy from i to j, keeping 0 <= j <= i. */
for (i = j = 0; i < spec.named_arg_count; i++)
- if (j > 0 && strcmp (spec.named[i].name, spec.named[j-1].name) == 0)
- free (spec.named[i].name);
- else
- {
- if (j < i)
- spec.named[j].name = spec.named[i].name;
- j++;
- }
+ if (j > 0 && strcmp (spec.named[i].name, spec.named[j-1].name) == 0)
+ free (spec.named[i].name);
+ else
+ {
+ if (j < i)
+ spec.named[j].name = spec.named[i].name;
+ j++;
+ }
spec.named_arg_count = j;
}
@@ -239,7 +239,7 @@ format_parse (const char *format, bool translated, char *fdi,
{
unsigned int i;
for (i = 0; i < spec.named_arg_count; i++)
- free (spec.named[i].name);
+ free (spec.named[i].name);
free (spec.named);
}
return NULL;
@@ -254,7 +254,7 @@ format_free (void *descr)
{
unsigned int i;
for (i = 0; i < spec->named_arg_count; i++)
- free (spec->named[i].name);
+ free (spec->named[i].name);
free (spec->named);
}
free (spec);
@@ -270,8 +270,8 @@ format_get_number_of_directives (void *descr)
static bool
format_check (void *msgid_descr, void *msgstr_descr, bool equality,
- formatstring_error_logger_t error_logger,
- const char *pretty_msgid, const char *pretty_msgstr)
+ formatstring_error_logger_t error_logger,
+ const char *pretty_msgid, const char *pretty_msgstr)
{
struct spec *spec1 = (struct spec *) msgid_descr;
struct spec *spec2 = (struct spec *) msgstr_descr;
@@ -284,38 +284,38 @@ format_check (void *msgid_descr, void *msgstr_descr, bool equality,
unsigned int n2 = spec2->named_arg_count;
/* Check the argument names are the same.
- Both arrays are sorted. We search for the first difference. */
+ Both arrays are sorted. We search for the first difference. */
for (i = 0, j = 0; i < n1 || j < n2; )
- {
- int cmp = (i >= n1 ? 1 :
- j >= n2 ? -1 :
- strcmp (spec1->named[i].name, spec2->named[j].name));
-
- if (cmp > 0)
- {
- if (error_logger)
- error_logger (_("a format specification for argument '%s', as in '%s', doesn't exist in '%s'"),
- spec2->named[j].name, pretty_msgstr,
- pretty_msgid);
- err = true;
- break;
- }
- else if (cmp < 0)
- {
- if (equality)
- {
- if (error_logger)
- error_logger (_("a format specification for argument '%s' doesn't exist in '%s'"),
- spec1->named[i].name, pretty_msgstr);
- err = true;
- break;
- }
- else
- i++;
- }
- else
- j++, i++;
- }
+ {
+ int cmp = (i >= n1 ? 1 :
+ j >= n2 ? -1 :
+ strcmp (spec1->named[i].name, spec2->named[j].name));
+
+ if (cmp > 0)
+ {
+ if (error_logger)
+ error_logger (_("a format specification for argument '%s', as in '%s', doesn't exist in '%s'"),
+ spec2->named[j].name, pretty_msgstr,
+ pretty_msgid);
+ err = true;
+ break;
+ }
+ else if (cmp < 0)
+ {
+ if (equality)
+ {
+ if (error_logger)
+ error_logger (_("a format specification for argument '%s' doesn't exist in '%s'"),
+ spec1->named[i].name, pretty_msgstr);
+ err = true;
+ break;
+ }
+ else
+ i++;
+ }
+ else
+ j++, i++;
+ }
}
return err;
@@ -355,7 +355,7 @@ format_print (void *descr)
for (i = 0; i < spec->named_arg_count; i++)
{
if (i > 0)
- printf (", ");
+ printf (", ");
printf ("'%s'", spec->named[i].name);
}
printf ("}");
@@ -374,9 +374,9 @@ main ()
line_len = getline (&line, &line_size, stdin);
if (line_len < 0)
- break;
+ break;
if (line_len > 0 && line[line_len - 1] == '\n')
- line[--line_len] = '\0';
+ line[--line_len] = '\0';
invalid_reason = NULL;
descr = format_parse (line, false, NULL, &invalid_reason);
@@ -384,7 +384,7 @@ main ()
format_print (descr);
printf ("\n");
if (descr == NULL)
- printf ("%s\n", invalid_reason);
+ printf ("%s\n", invalid_reason);
free (invalid_reason);
free (line);