]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
Fix possible crash when drawing blanked lines
authorToni Wilen <twilen@winuae.net>
Sun, 4 May 2025 10:16:44 +0000 (13:16 +0300)
committerToni Wilen <twilen@winuae.net>
Sun, 4 May 2025 10:16:44 +0000 (13:16 +0300)
drawing.cpp

index 4ccefae8f54f22195f5604c58061747843b82273..4876e80041dfdc06f53c446905b52ae1688e5808 100644 (file)
@@ -5489,6 +5489,7 @@ static void draw_denise_line(int gfx_ypos, enum nln_how how, uae_u32 linecnt, in
        internal_pixel_start_cnt = 0;
 
        bool blankedline = (this_line->linear_vpos >= denise_vblank_extra_bottom || this_line->linear_vpos < denise_vblank_extra_top) && currprefs.gfx_overscanmode < OVERSCANMODE_EXTREME && !programmedmode;
+       bool line_is_blanked = false;
 
        uae_u32 *buf1t = buf1;
        uae_u32 *buf2t = buf2;
@@ -5499,6 +5500,7 @@ static void draw_denise_line(int gfx_ypos, enum nln_how how, uae_u32 linecnt, in
 
                // don't draw vertical blanking if not ultra extreme overscan
                internal_pixel_cnt = -1;
+               line_is_blanked = true;
                while (denise_cck < denise_total) {
                        while (denise_cck < denise_total) {
                                do_denise_cck(denise_linecnt, denise_startpos, denise_cck);
@@ -5538,6 +5540,7 @@ static void draw_denise_line(int gfx_ypos, enum nln_how how, uae_u32 linecnt, in
                                                denise_hcounter_next &= 511;
                                        }
                                }
+                               denise_pixtotal++;
                                denise_hcounter = denise_hcounter_new;
                                denise_cck++;
                        }