maint: ensure the mbsalign module is C89 compatible
authorPádraig Brady <P@draigBrady.com>
Fri, 1 Oct 2010 13:28:18 +0000 (14:28 +0100)
committerPádraig Brady <P@draigBrady.com>
Fri, 1 Oct 2010 15:30:31 +0000 (16:30 +0100)
This module may be moved to gnulib at some stage,
so keep it C89 compatible.

* gl/lib/mbsalign.c (mbsalign): Declare variables at start of scope
(ambsalign): Likewise
* gl/lib/mbsalign.h: Remove trailing comma from enum
Reported by Andrei Suhan

gl/lib/mbsalign.c
gl/lib/mbsalign.h

index b92fe8f..117e4bf 100644 (file)
@@ -217,7 +217,7 @@ mbsalign_unibyte:
   /* Write as much NUL terminated output to DEST as possible.  */
   if (dest_size != 0)
     {
-      size_t start_spaces, end_spaces;
+      size_t start_spaces, end_spaces, space_left;
       char *dest_end = dest + dest_size - 1;
 
       switch (align)
@@ -238,7 +238,7 @@ mbsalign_unibyte:
         }
 
       dest = mbs_align_pad (dest, dest_end, start_spaces);
-      size_t space_left = dest_end - dest;
+      space_left = dest_end - dest;
       dest = mempcpy (dest, str_to_print, MIN (n_used_bytes, space_left));
       mbs_align_pad (dest, dest_end, end_spaces);
     }
@@ -265,8 +265,9 @@ ambsalign (const char *src, size_t *width, mbs_align_t align, int flags)
 
   while (req >= size)
     {
+      char *nbuf;
       size = req + 1;           /* Space for NUL.  */
-      char *nbuf = realloc (buf, size);
+      nbuf = realloc (buf, size);
       if (nbuf == NULL)
         {
           free (buf);
index 41bd490..96e81e7 100644 (file)
@@ -21,7 +21,7 @@ typedef enum { MBS_ALIGN_LEFT, MBS_ALIGN_RIGHT, MBS_ALIGN_CENTER } mbs_align_t;
 enum {
   /* Use unibyte mode for invalid multibyte strings or
      or when heap memory is exhausted.  */
-  MBA_UNIBYTE_FALLBACK = 0x0001,
+  MBA_UNIBYTE_FALLBACK = 0x0001
 
 #if 0 /* Other possible options.  */
   /* Skip invalid multibyte chars rather than failing  */