From f73fbdcae527ef2a98e2b3e3800b242cd4f93a54 Mon Sep 17 00:00:00 2001 From: Frediano Ziglio Date: Sat, 2 Sep 2017 12:51:12 +0100 Subject: [PATCH] test-display-base: Use unsigned numbers for command ring indexes As the indexes are used to compute the index inside an array using modulo operation when a signed value overflows, the modulo becames negative, causing a buffer underflow. Unlikely to happens (take lot of time) but is safer that way. Signed-off-by: Frediano Ziglio Acked-by: Christophe Fergeau --- server/tests/test-display-base.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/tests/test-display-base.c b/server/tests/test-display-base.c index 26fe7c8a..69e0b8d2 100644 --- a/server/tests/test-display-base.c +++ b/server/tests/test-display-base.c @@ -464,8 +464,8 @@ static void get_init_info(SPICE_GNUC_UNUSED QXLInstance *qin, // which cannot be done from red_worker context (not via dispatcher, // since you get a deadlock, and it isn't designed to be done // any other way, so no point testing that). -static int commands_end = 0; -static int commands_start = 0; +static unsigned int commands_end = 0; +static unsigned int commands_start = 0; static struct QXLCommandExt* commands[1024]; #define COMMANDS_SIZE G_N_ELEMENTS(commands)