diff --git a/CHANGELOG.md b/CHANGELOG.md index 783a344b..00113654 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,8 +10,6 @@ Versioning](https://semver.org/spec/v2.0.0.html). ### Added -TODO: Expand on this - - The way yabridge communicates between its plugin and the Wine host process has been completely revamped. This was necessary to allow yabridge to handle nested or mutually recursive function calls. What this boils down to is that @@ -22,6 +20,14 @@ TODO: Expand on this testing this extensively to make sure that the change does not introduce any regressions, but please let me know if this does break anything for you. + TODO: Expand on this + +### Removed + +- The `hack_reaper_update_display` option is now obsolete and has been removed. + + TODO: Remove all mentions of `hack_reaper_update_display` from the readme. + ## [1.7.1] - 2020-10-23 ### Fixed diff --git a/src/common/configuration.cpp b/src/common/configuration.cpp index b8c5161e..791df004 100644 --- a/src/common/configuration.cpp +++ b/src/common/configuration.cpp @@ -84,12 +84,6 @@ Configuration::Configuration(const fs::path& config_path, } else { invalid_options.push_back(key); } - } else if (key == "hack_reaper_update_display") { - if (const auto parsed_value = value.as_boolean()) { - hack_reaper_update_display = parsed_value->get(); - } else { - invalid_options.push_back(key); - } } else if (key == "group") { if (const auto parsed_value = value.as_string()) { group = parsed_value->get(); diff --git a/src/common/configuration.h b/src/common/configuration.h index 01dc91a8..275d8410 100644 --- a/src/common/configuration.h +++ b/src/common/configuration.h @@ -87,16 +87,6 @@ class Configuration { */ bool editor_double_embed = false; - /** - * If this is set to true, then any calls to `audioMasterUpdateDisplay()` - * will automatically return 0 without being sent to the host. This is a - * HACK to work around implementations issues in REAPER and Renoise, see #29 - * and #32. - * - * TODO: Remove for yabridge 1.8.0 - */ - bool hack_reaper_update_display = false; - /** * The name of the plugin group that should be used for the plugin this * configuration object was created for. If not set, then the plugin should @@ -130,7 +120,6 @@ class Configuration { template void serialize(S& s) { s.value1b(editor_double_embed); - s.value1b(hack_reaper_update_display); s.ext(group, bitsery::ext::StdOptional(), [](S& s, auto& v) { s.text1b(v, 4096); }); s.ext(matched_file, bitsery::ext::StdOptional(), diff --git a/src/plugin/plugin-bridge.cpp b/src/plugin/plugin-bridge.cpp index 6acfdc11..bbd8b757 100644 --- a/src/plugin/plugin-bridge.cpp +++ b/src/plugin/plugin-bridge.cpp @@ -473,29 +473,6 @@ intptr_t PluginBridge::dispatch(AEffect* /*plugin*/, logger.log(" when using REAPER."); logger.log(""); - // Since the user is using REAPER, also show a reminder that the - // REAPER workaround should be enabled when it is not yet - // enabled since it may be easy to miss - if (!config.hack_reaper_update_display) { - logger.log( - " With using REAPER you will have to enable the"); - logger.log( - " 'hack_reaper_update_display' option to prevent"); - logger.log( - " certain plugins from crashing. To do so, create a"); - logger.log( - " new file named 'yabridge.toml' next to your"); - logger.log(" plugins with the following contents:"); - logger.log(""); - logger.log( - " # " - "https://github.com/robbert-vdh/" - "yabridge#runtime-dependencies-and-known-issues"); - logger.log(" [\"*\"]"); - logger.log(" hack_reaper_update_display = true"); - logger.log(""); - } - logger.log_event_response(true, opcode, -1, nullptr, std::nullopt); return -1; @@ -660,10 +637,6 @@ void PluginBridge::log_init_message() { if (config.editor_double_embed) { other_options.push_back("editor: double embed"); } - if (config.hack_reaper_update_display) { - other_options.push_back( - "hack: REAPER audioMasterUpdateDisplay() workaround"); - } if (!other_options.empty()) { init_msg << join_quoted_strings(other_options) << std::endl; } else { diff --git a/src/wine-host/bridges/vst2.cpp b/src/wine-host/bridges/vst2.cpp index d745ce02..648ffe36 100644 --- a/src/wine-host/bridges/vst2.cpp +++ b/src/wine-host/bridges/vst2.cpp @@ -559,16 +559,6 @@ intptr_t Vst2Bridge::host_callback(AEffect* effect, intptr_t value, void* data, float option) { - // HACK: Sadly this is needed to work around a mutual recursion issue with - // REAPER and Renoise. See #29 and #32. - // TODO: We don't have access to the verbosity level here, but it would be - // nice to log that this is being skipped when `YABRIDGE_DEBUG_LEVEL - // >= 2`. - if (config.hack_reaper_update_display && - opcode == audioMasterUpdateDisplay) { - return 0; - } - HostCallbackDataConverter converter(effect, time_info); return sockets.vst_host_callback.send(converter, std::nullopt, opcode, index, value, data, option);