Use UID conversion for IsPlugInterfaceSupported

I assume that this would also be necessary here, right?
This commit is contained in:
Robbert van der Helm
2021-01-22 13:50:06 +01:00
parent 4a5c961b63
commit ae0d7263b8
4 changed files with 28 additions and 29 deletions
+2 -1
View File
@@ -1296,7 +1296,8 @@ bool Vst3Logger::log_request(
}
message << ": IPlugInterfaceSupport::isPlugInterfaceSupported(unitId = "
<< format_uid(Steinberg::FUID::fromTUID(request.iid.data()))
<< format_uid(Steinberg::FUID::fromTUID(
request.iid.get_native_uid().data()))
<< ")";
});
}
@@ -66,9 +66,6 @@ class YaPlugInterfaceSupport : public Steinberg::Vst::IPlugInterfaceSupport {
* Message to pass through a call to
* `IPlugInterfaceSupport::isPlugInterfaceSupported(iid)` to the host
* context provided by the host.
*
* TODO: Figure out if we should translate the UIDs from Windows COM to
* non-Windows COM.
*/
struct IsPlugInterfaceSupported {
using Response = UniversalTResult;
@@ -80,7 +77,10 @@ class YaPlugInterfaceSupport : public Steinberg::Vst::IPlugInterfaceSupport {
*/
std::optional<native_size_t> owner_instance_id;
ArrayUID iid;
// TODO: Figure out if we should translate the UIDs from Windows COM to
// non-Windows COM here. I have not actually seen this interface
// used.
WineUID iid;
template <typename S>
void serialize(S& s) {
@@ -88,7 +88,7 @@ class YaPlugInterfaceSupport : public Steinberg::Vst::IPlugInterfaceSupport {
[](S& s, native_size_t& instance_id) {
s.value8b(instance_id);
});
s.container1b(iid);
s.object(iid);
}
};