From 626a4ea47527f34bc4e6c73fd3c11304149a1437 Mon Sep 17 00:00:00 2001 From: reuk Date: Tue, 6 May 2025 14:59:57 +0100 Subject: [PATCH] VST2 Client: Fix issue where compatible VST3 IDs were misreported `convertVST2PluginId` returns `array` rather than `String`, so it's incorrect to interpret the result as a hex string. --- .../juce_audio_plugin_client_VST2.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/modules/juce_audio_plugin_client/juce_audio_plugin_client_VST2.cpp b/modules/juce_audio_plugin_client/juce_audio_plugin_client_VST2.cpp index b83fa02a75..3bf0611131 100644 --- a/modules/juce_audio_plugin_client/juce_audio_plugin_client_VST2.cpp +++ b/modules/juce_audio_plugin_client/juce_audio_plugin_client_VST2.cpp @@ -1814,11 +1814,10 @@ private: if (args.ptr == nullptr) return 0; - const auto uid = VST3ClientExtensions::convertVST2PluginId (JucePlugin_VSTUniqueID, JucePlugin_Name, VST3ClientExtensions::InterfaceType::component); - const auto uidString = String ((const char *) uid.data(), uid.size()); - MemoryBlock uidValue; - uidValue.loadFromHexString (uidString); - uidValue.copyTo (args.ptr, 0, uidValue.getSize()); + const auto uid = VST3ClientExtensions::convertVST2PluginId (JucePlugin_VSTUniqueID, + JucePlugin_Name, + VST3ClientExtensions::InterfaceType::component); + std::copy (uid.begin(), uid.end(), reinterpret_cast (args.ptr)); return 1; #endif }