mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-14 00:14:18 +00:00
Previously, preparing an AudioProcessorGraph containing hosted LV2 plugins would recreate the plugins and then set their state. For plugins without threadsafe restore, setting the state would take the callbackLock to avoid races with processBlock. This meant that - During prepare, the graph would take the processorLock, then the processor would take its own callbackLock. - During playback, the graph would take the processor's callbackLock, and then would take the node's processorLock. This is probably benign (prepare shouldn't be called concurrently with processBlock at all), but to be on the safe side we now avoid taking the callbackLock when setting new plugin state during prepareToPlay. |
||
|---|---|---|
| .. | ||
| juce_analytics | ||
| juce_audio_basics | ||
| juce_audio_devices | ||
| juce_audio_formats | ||
| juce_audio_plugin_client | ||
| juce_audio_processors | ||
| juce_audio_utils | ||
| juce_box2d | ||
| juce_core | ||
| juce_cryptography | ||
| juce_data_structures | ||
| juce_dsp | ||
| juce_events | ||
| juce_graphics | ||
| juce_gui_basics | ||
| juce_gui_extra | ||
| juce_opengl | ||
| juce_osc | ||
| juce_product_unlocking | ||
| juce_video | ||
| CMakeLists.txt | ||