Parcourir la source

Fix wavetable crash on instrument change after stop

dds
PaulStoffregen il y a 6 ans
Parent
révision
84073ecbfd
1 fichiers modifiés avec 6 ajouts et 4 suppressions
  1. +6
    -4
      synth_wavetable.cpp

+ 6
- 4
synth_wavetable.cpp Voir le fichier

@@ -77,10 +77,12 @@ CODE_BLOCK_TO_TEST
*/
void AudioSynthWavetable::stop(void) {
cli();
env_state = STATE_RELEASE;
env_count = current_sample->RELEASE_COUNT;
if (env_count == 0) env_count = 1;
env_incr = -(env_mult) / (env_count * ENVELOPE_PERIOD);
if (env_state != STATE_IDLE) {
env_state = STATE_RELEASE;
env_count = current_sample->RELEASE_COUNT;
if (env_count == 0) env_count = 1;
env_incr = -(env_mult) / (env_count * ENVELOPE_PERIOD);
}
PRINT_ENV(STATE_RELEASE);
sei();
}

Chargement…
Annuler
Enregistrer