From: Prasad J Pandit <p...@fedoraproject.org> In vga_draw_graphic, display width could exceed the maximum range of VBE_DISPI_MAX_XRES(16000). This could lead to possible integer overflows. Add check to avoid it.
Reported-by: Zuozhi Fzz <zuozhi....@alibaba-inc.com> Signed-off-by: Prasad J Pandit <p...@fedoraproject.org> --- hw/display/vga.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/display/vga.c b/hw/display/vga.c index 9f68394..1a66291 100644 --- a/hw/display/vga.c +++ b/hw/display/vga.c @@ -1478,6 +1478,9 @@ static void vga_draw_graphic(VGACommonState *s, int full_update) disp_width <<= 1; } } + if (disp_width > VBE_DISPI_MAX_XRES) { + disp_width = VBE_DISPI_MAX_XRES; + } depth = s->get_bpp(s); -- 2.5.5