From cbbb8adda6aa68865f3f98ff472009c18d102acf Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Sat, 7 Dec 2019 15:23:16 +0200 Subject: [PATCH] Fix limit check. --- custom.cpp | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/custom.cpp b/custom.cpp index fac372f4..98276913 100644 --- a/custom.cpp +++ b/custom.cpp @@ -2048,10 +2048,9 @@ static void toscr_1 (int nbits, int fm) out_nbits += nbits; if (out_nbits == 32) { - if (out_offs < MAX_WORDS_PER_LINE / 4) { - int i; + if (out_offs < MAX_WORDS_PER_LINE * 2 / 4) { uae_u8 *dataptr = line_data[next_lineno] + out_offs * 4; - for (i = 0; i < thisline_decision.nr_planes; i++) { + for (int i = 0; i < thisline_decision.nr_planes; i++) { uae_u32 *dataptr32 = (uae_u32 *)dataptr; if (*dataptr32 != outword[i]) { thisline_changed = 1; @@ -2081,7 +2080,7 @@ static void toscr_1_hr(int nbits, int fm) out_nbits += nbits; if (out_nbits == 64) { - if (out_offs < MAX_WORDS_PER_LINE / 4 - 1) { + if (out_offs < MAX_WORDS_PER_LINE * 2 / 4 - 1) { uae_u8 *dataptr = line_data[next_lineno] + out_offs * 4; for (int i = 0; i < thisline_decision.nr_planes; i++) { uae_u64 *dataptr64 = (uae_u64 *)dataptr; @@ -2188,8 +2187,6 @@ static int flush_plane_data_n(int fm) } for (int j = 0; j < (fm == 2 ? 3 : 1); j++) { - if (out_offs >= MAX_WORDS_PER_LINE / 4 - 1) - break; i += 32; toscr_1(16, fm); toscr_1(16, fm); @@ -2213,8 +2210,6 @@ static int flush_plane_data_hr(int fm) } for (int j = 0; j < 4; j++) { - if (out_offs >= MAX_WORDS_PER_LINE / 4 - 1) - break; toscr_1_hr(32, fm); i += 32; } -- 2.47.3