diff --git a/modules/juce_audio_plugin_client/LV2/juce_LV2_Client.cpp b/modules/juce_audio_plugin_client/LV2/juce_LV2_Client.cpp index 6fba7a1e44..53d9e9732e 100644 --- a/modules/juce_audio_plugin_client/LV2/juce_LV2_Client.cpp +++ b/modules/juce_audio_plugin_client/LV2/juce_LV2_Client.cpp @@ -799,20 +799,19 @@ struct RecallFeature const auto processor = LV2PluginInstance::createProcessorInstance(); const File absolutePath { CharPointer_UTF8 { libraryPath } }; - processor->enableAllBuses(); + const auto writers = { writeManifestTtl, writeDspTtl, writeUiTtl }; - for (auto* fn : { writeManifestTtl, writeDspTtl, writeUiTtl }) + const auto wroteSuccessfully = [&processor, &absolutePath] (auto* fn) { const auto result = fn (*processor, absolutePath); - if (result.wasOk()) - continue; + if (! result.wasOk()) + std::cerr << result.getErrorMessage() << '\n'; - std::cerr << result.getErrorMessage() << '\n'; - return 1; - } + return result.wasOk(); + }; - return 0; + return std::all_of (writers.begin(), writers.end(), wroteSuccessfully) ? 0 : 1; }; private: