mirror of
https://github.com/thunderbrewhq/thunderbrew
synced 2025-04-15 17:46:03 +03:00
fix(gx): correct off-by-one error when popping render states
This commit is contained in:
parent
dfb7fb0270
commit
eddc6f7f4a
@ -734,8 +734,11 @@ void CGxDevice::RsPop() {
|
||||
auto topOfStack = this->m_stackOffsets[this->m_stackOffsets.Count() - 1];
|
||||
|
||||
if (this->m_pushedStates.Count() > topOfStack) {
|
||||
for (int32_t i = this->m_pushedStates.Count() - 1; i > topOfStack; i--) {
|
||||
auto ps = &this->m_pushedStates[i];
|
||||
auto bottomOfStack = this->m_pushedStates.Count() - 1;
|
||||
auto stackSize = this->m_pushedStates.Count() - topOfStack;
|
||||
|
||||
for (uint32_t stackOffset = 0; stackOffset < stackSize; stackOffset++) {
|
||||
auto ps = &this->m_pushedStates[bottomOfStack - stackOffset];
|
||||
auto rs = &this->m_appRenderStates[ps->m_which];
|
||||
|
||||
if (!rs->m_dirty) {
|
||||
|
Loading…
Reference in New Issue
Block a user