[Spice-devel] [spice-server PATCH 2/3] test-loop: increment a variable outside of spice_assert

Frediano Ziglio fziglio at redhat.com
Sun Aug 11 11:56:59 UTC 2019


> 
> spice_assert is a macro and it may be that variable will
> be incremented twice (in theory, possibly not in practice).
> 

No, the issue is that Coverity assume that code can be stripped out
as usually assert can be stripped out (defining NDEBUG for normal
assert).

> Simply do it one line above.
> 
> Found by covscan
> 
> Signed-off-by: Uri Lublin <uril at redhat.com>

Beside the commit message no complains to make Coverity happy

> ---
>  server/tests/test-loop.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/server/tests/test-loop.c b/server/tests/test-loop.c
> index 82af80ab3..4df3a7d20 100644
> --- a/server/tests/test-loop.c
> +++ b/server/tests/test-loop.c
> @@ -78,7 +78,8 @@ static SpiceTimer *twice_timers_remove[2] = { NULL, NULL };
>  static int twice_remove_called = 0;
>  static void timer_not_twice_remove(void *opaque)
>  {
> -    spice_assert(++twice_remove_called == 1);
> +    ++twice_remove_called;
> +    spice_assert(twice_remove_called == 1);
>  
>      /* delete timers, should not have another call */
>      core->timer_remove(twice_timers_remove[0]);

Frediano


More information about the Spice-devel mailing list