On 2020/10/30 22:35, Peter Maydell wrote: > On Fri, 30 Oct 2020 at 14:29, Peter Maydell <peter.mayd...@linaro.org> wrote: >> >> On Fri, 30 Oct 2020 at 10:23, AlexChen <alex.c...@huawei.com> wrote: >>> >>> In omap_lcd_interrupts(), the pointer omap_lcd is dereferenced before >>> being check if it is valid, which may lead to NULL pointer dereference. >>> So move the assignment to surface after checking that the omap_lcd is valid. >>> >>> Reported-by: Euler Robot <euler.ro...@huawei.com> >>> Signed-off-by: Alex Chen <alex.c...@huawei.com> >>> --- >>> hw/display/omap_lcdc.c | 3 ++- >>> 1 file changed, 2 insertions(+), 1 deletion(-) > >> Applied to target-arm.next, thanks. > > Whoops, spoke too soon. This doesn't compile: > > ../../hw/display/omap_lcdc.c: In function ‘omap_update_display’: > ../../hw/display/omap_lcdc.c:88:10: error: ‘surface’ may be used > uninitialized in this function [-Werror=maybe-uninitialized] > !surface_bits_per_pixel(surface)) { > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > > because the early exit check > if (!omap_lcd || omap_lcd->plm == 1 || !omap_lcd->enable || > !surface_bits_per_pixel(surface)) { > return; > } > > uses 'surface' and this patch moves the initialization of that > variable down below its first use. >
Oh, I apologize for this compilation error, I will fix it in my patch v2. Thanks, Alex