mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-08-02 22:28:45 +00:00
liverpool: Avoid resuming ce_task when its finished
This commit is contained in:
parent
207facd718
commit
2ef27007b6
1 changed files with 4 additions and 2 deletions
|
@ -693,7 +693,7 @@ Liverpool::Task Liverpool::ProcessGraphics(std::span<const u32> dcb, std::span<c
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case PM4ItOpcode::WaitOnCeCounter: {
|
case PM4ItOpcode::WaitOnCeCounter: {
|
||||||
while (cblock.ce_count <= cblock.de_count) {
|
while (cblock.ce_count <= cblock.de_count && !ce_task.handle.done()) {
|
||||||
RESUME_GFX(ce_task);
|
RESUME_GFX(ce_task);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -714,7 +714,9 @@ Liverpool::Task Liverpool::ProcessGraphics(std::span<const u32> dcb, std::span<c
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ce_task.handle) {
|
if (ce_task.handle) {
|
||||||
ASSERT_MSG(ce_task.handle.done(), "Partially processed CCB");
|
while (!ce_task.handle.done()) {
|
||||||
|
RESUME_GFX(ce_task);
|
||||||
|
}
|
||||||
ce_task.handle.destroy();
|
ce_task.handle.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue