[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