diff options
author | Chris Robinson <[email protected]> | 2020-09-05 18:12:46 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2020-09-05 18:13:08 -0700 |
commit | 7851f7d4ceff78f2722a4a2e3957c75dec26da1d (patch) | |
tree | 8377161321d12fa31e5396fad8111e10f7ec86c7 /al/auxeffectslot.cpp | |
parent | c1ad5d6055e5f40a8c6edc351f9a7f8047e7d07f (diff) |
Don't add effect slots to the active list until an effect is set
Diffstat (limited to 'al/auxeffectslot.cpp')
-rw-r--r-- | al/auxeffectslot.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/al/auxeffectslot.cpp b/al/auxeffectslot.cpp index 1f35b344..5f71ea97 100644 --- a/al/auxeffectslot.cpp +++ b/al/auxeffectslot.cpp @@ -310,8 +310,6 @@ START_API_FUNC } while(--count); std::copy(ids.cbegin(), ids.cend(), effectslots); } - - AddActiveEffectSlots(effectslots, static_cast<ALuint>(n), context.get()); } END_API_FUNC @@ -404,6 +402,11 @@ START_API_FUNC context->setError(err, "Effect initialization failed"); return; } + if(slot->mState == SlotState::Initial) + { + AddActiveEffectSlots(&slot->id, 1, context.get()); + slot->mState = SlotState::Playing; + } break; case AL_EFFECTSLOT_AUXILIARY_SEND_AUTO: |