RPM Community Forums

Mailing List Message of <rpm-cvs>

[CVS] RPM: popt/ .splintrc CHANGES poptint.c

From: Jeff Johnson <jbj@rpm5.org>
Date: Sun 04 Nov 2007 - 14:51:28 CET
Message-Id: <20071104135128.7F05A34847A@rpm5.org>
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  ____________________________________________________________________________

  Server: rpm5.org                         Name:   Jeff Johnson
  Root:   /v/rpm/cvs                       Email:  jbj@rpm5.org
  Module: popt                             Date:   04-Nov-2007 14:51:28
  Branch: HEAD                             Handle: 2007110413512800

  Modified files:
    popt                    .splintrc CHANGES poptint.c

  Log:
    - jbj: change sizeof to use the type implicitly, rather than explicitly.
    - jbj: remove incorrect casts, changing to size_t where needed.
    - jbj: remove unused STD_VFPRINTF macro.

  Summary:
    Revision    Changes     Path
    1.7         +0  -1      popt/.splintrc
    1.28        +4  -0      popt/CHANGES
    1.9         +88 -99     popt/poptint.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: popt/.splintrc
  ============================================================================
  $ cvs diff -u -r1.6 -r1.7 .splintrc
  --- popt/.splintrc	4 Nov 2007 13:15:32 -0000	1.6
  +++ popt/.splintrc	4 Nov 2007 13:51:28 -0000	1.7
  @@ -45,7 +45,6 @@
   +charint
   -exportvar
   +matchanyintegral
  --loopswitchbreak
   -varuse
   
   # --- +partial artifacts
  @@ .
  patch -p0 <<'@@ .'
  Index: popt/CHANGES
  ============================================================================
  $ cvs diff -u -r1.27 -r1.28 CHANGES
  --- popt/CHANGES	4 Nov 2007 13:15:32 -0000	1.27
  +++ popt/CHANGES	4 Nov 2007 13:51:28 -0000	1.28
  @@ -1,4 +1,8 @@
   1.12 -> 1.13:
  +    - jbj: change sizeof to use the type implicitly, rather than explicitly.
  +    - jbj: remove incorrect casts, changing to size_t where needed.
  +    - jbj: remove unused STD_VFPRINTF macro.
  +    - jbj: reindent (and otherwise diddle) recent patch for popt coding style.
       - jbj: remove splint bounds/branch annotations, little gain, much pain.
       - jbj: revert alloca usage again again.
       - jbj: handle Solaris signed character isspace(3) issues consistently.
  @@ .
  patch -p0 <<'@@ .'
  Index: popt/poptint.c
  ============================================================================
  $ cvs diff -u -r1.8 -r1.9 poptint.c
  --- popt/poptint.c	15 Jun 2007 13:50:12 -0000	1.8
  +++ popt/poptint.c	4 Nov 2007 13:51:28 -0000	1.9
  @@ -15,142 +15,131 @@
   #include "system.h"
   #include "poptint.h"
   
  -#define STD_VFPRINTF(stream, format, args, retval) \
  -  va_start ((args), (format)); \
  -  (retval) = vfprintf ((stream), (format), (args)); \
  -  va_end ((args));
  -
   #ifdef HAVE_ICONV
   static char *
   strdup_locale_from_utf8 (char *buffer)
   {
  -  char *codeset = NULL;
  -  char *pout = NULL, *dest_str;
  -  iconv_t fd;
  -  int ib, ob, dest_size;
  -  int done, is_error;
  -  size_t err, used;
  +    char *codeset = NULL;
  +    char *pout = NULL, *dest_str;
  +    iconv_t fd;
  +    size_t ib, ob, dest_size;
  +    int done, is_error;
  +    size_t err, used;
   
  -  if (!buffer)
  -    return NULL;
  +    if (!buffer)
  +	return NULL;
   
   #ifdef HAVE_LANGINFO_H
  -  codeset = nl_langinfo (CODESET);
  +    codeset = nl_langinfo (CODESET);
   #endif
   
  -  if (codeset &&
  -      strcmp (codeset, "UTF-8") &&
  -      (fd = iconv_open (codeset, "UTF-8")) != (iconv_t)-1) {
  -    char *pin = buffer;
  -    char *shift_pin = NULL;
  -
  -    iconv (fd, NULL, (size_t*)&ib, &pout, (size_t*)&ob);
  -    ib = strlen (buffer);
  -    dest_size = ob = ib;
  -    dest_str = pout = malloc ((dest_size + 1) * sizeof (char));
  -    done = is_error = 0;
  -    while (!done && !is_error) {
  -      err = iconv (fd, (const char**)&pin, (size_t*)&ib, &pout, (size_t*)&ob);
  -
  -      if (err == (size_t)-1) {
  -        switch (errno) {
  -        case EINVAL:
  -          done = 1;
  -          break;
  -        case E2BIG:
  -          used = pout - dest_str;
  -          dest_size *= 2;
  -          dest_str = realloc (dest_str, (dest_size + 1) * sizeof (char));
  -          pout = dest_str + used;
  -          ob = dest_size - used;
  -          break;
  -        case EILSEQ:
  -          is_error = 1;
  -          break;
  -        default:
  -          is_error = 1;
  -          break;
  -        }
  -      } else {
  -        if (!shift_pin) {
  -          shift_pin = pin;
  -          pin = NULL;
  -          ib = 0;
  -        } else {
  -          done = 1;
  -        }
  -      }
  +    if (codeset && strcmp(codeset, "UTF-8")
  +     && (fd = iconv_open(codeset, "UTF-8")) != (iconv_t)-1)
  +    {
  +	char *pin = buffer;
  +	char *shift_pin = NULL;
  +
  +	err = iconv(fd, NULL, &ib, &pout, &ob);
  +	dest_size = ob = ib = strlen(buffer);
  +	dest_str = pout = malloc((dest_size + 1) * sizeof(*dest_str));
  +	done = is_error = 0;
  +	while (!done && !is_error) {
  +	    err = iconv(fd, &pin, &ib, &pout, &ob);
  +
  +	    if (err == (size_t)-1) {
  +		switch (errno) {
  +		case EINVAL:
  +		    done = 1;
  +		    /*@switchbreak@*/ break;
  +		case E2BIG:
  +		    used = pout - dest_str;
  +		    dest_size *= 2;
  +		    dest_str = realloc(dest_str, (dest_size + 1) * sizeof(*dest_str));
  +		    pout = dest_str + used;
  +		    ob = dest_size - used;
  +		    /*@switchbreak@*/ break;
  +		case EILSEQ:
  +		    is_error = 1;
  +		    /*@switchbreak@*/ break;
  +		default:
  +		    is_error = 1;
  +		    /*@switchbreak@*/ break;
  +		}
  +	    } else {
  +		if (!shift_pin) {
  +		    shift_pin = pin;
  +		    pin = NULL;
  +		    ib = 0;
  +		} else {
  +		    done = 1;
  +		}
  +	    }
  +	}
  +	iconv_close(fd);
  +	*pout = '\0';
  +	dest_str = strdup(dest_str);
  +    } else {
  +	dest_str = strdup(buffer);
       }
  -    iconv_close (fd);
  -    *pout = '\0';
  -    dest_str = strdup (dest_str);
  -  } else {
  -    dest_str = strdup (buffer);
  -  }
   
  -  return dest_str;
  +    return dest_str;
   }
   #endif
   
   static char *
   strdup_vprintf (const char *format, va_list ap)
   {
  -  char *buffer = NULL;
  -  char c;
  -  va_list apc;
  +    char *buffer = NULL;
  +    char c;
  +    va_list apc;
   
  -  va_copy(apc, ap);	/* XXX linux amd64/ppc needs a copy. */
  +    va_copy(apc, ap);	/* XXX linux amd64/ppc needs a copy. */
   
  -  buffer = calloc (sizeof (char), vsnprintf (&c, 1, format, ap) + 1);
  -  vsprintf (buffer, format, apc);
  +    buffer = calloc(sizeof(*buffer), vsnprintf (&c, 1, format, ap) + 1);
  +    vsprintf(buffer, format, apc);
   
  -  va_end(apc);
  +    va_end(apc);
   
  -  return buffer;
  +    return buffer;
   }
   
   char *
   POPT_prev_char (const char *str)
   {
  -  char *p = (char*)str;
  +    char *p = (char*)str;
   
  -  while (1) {
  -    p--;
  -    if ((*p & 0xc0) != 0x80)
  -      return (char *)p;
  -  }
  +    while (1) {
  +	p--;
  +	if ((*p & 0xc0) != 0x80)
  +	    return (char *)p;
  +    }
   }
   
   int
   POPT_fprintf (FILE* stream, const char *format, ...)
   {
  -  int retval = 0;
  -  va_list args;
  -  char *buffer = NULL;
  +    int retval = 0;
  +    va_list args;
  +    char *buffer = NULL;
   #ifdef HAVE_ICONV
  -  char *locale_str = NULL;
  +    char *locale_str = NULL;
   #endif
   
  -  va_start (args, format);
  -  buffer = strdup_vprintf (format, args);
  -  va_end (args);
  +    va_start (args, format);
  +    buffer = strdup_vprintf(format, args);
  +    va_end (args);
   
   #ifdef HAVE_ICONV
  -  locale_str = strdup_locale_from_utf8 (buffer);
  -  if (locale_str) {
  -    retval = fprintf (stream, "%s", locale_str);
  -    free (locale_str);
  -  } else {
  -#endif
  -    retval = fprintf (stream, "%s", buffer);
  -#ifdef HAVE_ICONV
  -  }
  +    locale_str = strdup_locale_from_utf8(buffer);
  +    if (locale_str) {
  +	retval = fprintf(stream, "%s", locale_str);
  +	free(locale_str);
  +    } else
   #endif
  -  free (buffer);
  -
  -  return retval;
  +    {
  +	retval = fprintf(stream, "%s", buffer);
  +    }
  +    free (buffer);
   
  +    return retval;
   }
  -
  -#undef STD_VFPRINTF
  -
  @@ .
Received on Sun Nov 4 14:51:28 2007
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.