nv2a/vk,gl: Handle case where pline_offset == 0

This commit is contained in:
Matt Borgerson 2024-12-27 00:25:49 -07:00 committed by mborgerson
parent 58c1daf594
commit 88835a1019
2 changed files with 2 additions and 2 deletions

View File

@ -287,7 +287,7 @@ static void render_display(NV2AState *d, SurfaceBinding *surface)
uint32_t pline_offset, pstart_addr, pline_compare;
d->vga.get_resolution(&d->vga, (int*)&width, (int*)&height);
d->vga.get_offsets(&d->vga, &pline_offset, &pstart_addr, &pline_compare);
int line_offset = surface->pitch / pline_offset;
int line_offset = pline_offset ? surface->pitch / pline_offset : 1;
/* Adjust viewport height for interlaced mode, used only in 1080i */
if (d->vga.cr[NV_PRMCIO_INTERLACE_MODE] != NV_PRMCIO_INTERLACE_MODE_DISABLED) {

View File

@ -869,7 +869,7 @@ static void update_uniforms(PGRAPHState *pg, SurfaceBinding *surface)
uint32_t pline_offset, pstart_addr, pline_compare;
d->vga.get_offsets(&d->vga, &pline_offset, &pstart_addr, &pline_compare);
int line_offset = surface->pitch / pline_offset;
int line_offset = pline_offset ? surface->pitch / pline_offset : 1;
int line_offset_loc = uniform_index(l, "line_offset");
uniform1f(l, line_offset_loc, line_offset);