qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/4] strtosz(): use unsigned char and switch to


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH 1/4] strtosz(): use unsigned char and switch to qemu_isspace()
Date: Mon, 24 Jan 2011 17:10:28 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

address@hidden writes:

> From: Jes Sorensen <address@hidden>
>
> isspace() behavior is undefined for signed char.
>
> Bug pointed out by Eric Blake, thanks!
>
> Signed-off-by: Jes Sorensen <address@hidden>
> ---
>  cutils.c |    7 ++++---
>  1 files changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/cutils.c b/cutils.c
> index 4d2e27c..a067cf4 100644
> --- a/cutils.c
> +++ b/cutils.c
> @@ -294,7 +294,8 @@ int fcntl_setfl(int fd, int flag)
>  int64_t strtosz_suffix(const char *nptr, char **end, const char 
> default_suffix)
>  {
>      int64_t retval = -1;
> -    char *endptr, c, d;
> +    char *endptr;
> +    unsigned char c, d;
>      int mul_required = 0;
>      double val, mul, integral, fraction;
>  

I doubt this hunk is still needed.

> @@ -314,7 +315,7 @@ int64_t strtosz_suffix(const char *nptr, char **end, 
> const char default_suffix)
>       */
>      c = *endptr;
>      d = c;
> -    if (isspace(c) || c == '\0' || c == ',') {
> +    if (qemu_isspace(c) || c == '\0' || c == ',') {
>          c = 0;
>          if (default_suffix) {
>              d = default_suffix;
> @@ -361,7 +362,7 @@ int64_t strtosz_suffix(const char *nptr, char **end, 
> const char default_suffix)
>       */
>      if (c != 0) {
>          endptr++;
> -        if (!isspace(*endptr) && *endptr != ',' && *endptr != 0) {
> +        if (!qemu_isspace(*endptr) && *endptr != ',' && *endptr != 0) {
>              goto fail;
>          }
>      }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]