[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;
}
uint8_t* current_input_buffer = GetCurrentInputBuffer(data);
if (!data->IsCurrentInputBufferValid()) {
XELOGE(
"XmaContext {}: Invalid current buffer! Selected Buffer: {} Valid: {} "
"Pointer: {:08X}",
id(), data->current_buffer, data->IsCurrentInputBufferValid(),
data->GetCurrentInputBufferAddress());
return;
SwapInputBuffer(data);
if (!data->IsCurrentInputBufferValid()) {
return;
}
}
uint8_t* current_input_buffer = GetCurrentInputBuffer(data);
input_buffer_.fill(0);
UpdateLoopStatus(data);