[hle/service{nvdrv,apm}] fixes for TetrisSwitch (#3983)

- testriswitch submits buffers with a fence id of -1, just skip them instead of trying to process them?
- apm:u, which is removed, but hey, backwards compat never hurted
- another instance of shared_memory crashing NPad

Signed-off-by: lizzie <lizzie@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3983
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
This commit is contained in:
lizzie
2026-05-24 01:04:32 +02:00
committed by crueter
parent 90164197dc
commit 2aa2ac7d9a
5 changed files with 37 additions and 29 deletions
@@ -79,7 +79,9 @@ void nvdisp_disp0::Composite(std::span<const Nvnflinger::HwcLayer> sorted_layers
});
for (size_t i = 0; i < layer.acquire_fence.num_fences; i++) {
output_fences.push_back(layer.acquire_fence.fences[i]);
if (layer.acquire_fence.fences[i].id >= 0) {
output_fences.push_back(layer.acquire_fence.fences[i]);
}
}
}