[Spice-devel] [PATCH 2/2] Eliminate signed/unsigned warning

Frediano Ziglio fziglio at redhat.com
Fri Feb 16 16:13:36 UTC 2018


> 
> From: Christophe de Dinechin <dinechin at redhat.com>
> 
> Without this, GCC complains about signed / unsigned comparisons:
> 
> mjpeg-fallback.cpp:121:24: warning: comparison between signed and unsigned
> integer expressions [-Wsign-compare]
>      if (win_info.width != last_width || win_info.height != last_height) {
>          ~~~~~~~~~~~~~~~^~~~~~~~~~~~~
> 
> Signed-off-by: Christophe de Dinechin <dinechin at redhat.com>
> ---
>  src/mjpeg-fallback.cpp        | 2 +-
>  src/spice-streaming-agent.cpp | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/mjpeg-fallback.cpp b/src/mjpeg-fallback.cpp
> index 634864f..53804d9 100644
> --- a/src/mjpeg-fallback.cpp
> +++ b/src/mjpeg-fallback.cpp
> @@ -57,7 +57,7 @@ private:
>      std::vector<uint8_t> frame;
>  
>      // last frame sizes
> -    uint32_t last_width = ~0u, last_height = ~0u;
> +    int last_width = ~0u, last_height = ~0u;
>      // last time before capture
>      uint64_t last_time = 0;
>  };

That is weird, so the compiler here is not giving any warning
doing an implicit unsigned -> signed conversion which should
be explicit!
Not that the ranges here is a problem.
On the other way a window with a negative width is very hard to
picture, we are basically hiding what the compiler see as a possible
issue, is not much different that just disabling the warning at
the end.

> diff --git a/src/spice-streaming-agent.cpp b/src/spice-streaming-agent.cpp
> index 4ec5e42..27b26a4 100644
> --- a/src/spice-streaming-agent.cpp
> +++ b/src/spice-streaming-agent.cpp
> @@ -106,7 +106,7 @@ static int read_command_from_device(void)
>          return 0; // return -1;
>      }
>      n = read(streamfd, &msg, hdr.size);
> -    if (n != hdr.size) {
> +    if (n != (int) hdr.size) {
>          syslog(LOG_WARNING,
>                 "read command from device FAILED -- read %d expected %d\n",
>                 n, hdr.size);

Acked

Frediano


More information about the Spice-devel mailing list