[XMA] swap to valid buffer instead of stalling when current is invalid

This commit is contained in:
Herman S.
2026-02-20 17:35:41 +09:00
parent d759938979
commit a1eef3a2b8

View File

@@ -300,17 +300,15 @@ void XmaContextNew::Decode(XMA_CONTEXT_DATA* data) {
return; return;
} }
uint8_t* current_input_buffer = GetCurrentInputBuffer(data);
if (!data->IsCurrentInputBufferValid()) { if (!data->IsCurrentInputBufferValid()) {
XELOGE( SwapInputBuffer(data);
"XmaContext {}: Invalid current buffer! Selected Buffer: {} Valid: {} " if (!data->IsCurrentInputBufferValid()) {
"Pointer: {:08X}", return;
id(), data->current_buffer, data->IsCurrentInputBufferValid(), }
data->GetCurrentInputBufferAddress());
return;
} }
uint8_t* current_input_buffer = GetCurrentInputBuffer(data);
input_buffer_.fill(0); input_buffer_.fill(0);
UpdateLoopStatus(data); UpdateLoopStatus(data);