Explicitly list opcodes that should return strings

The automatic detection works fine in every case I've tested other than
Fabfilter plugins, but this is probably for the best.
This commit is contained in:
Robbert van der Helm
2020-04-30 20:55:49 +02:00
parent 4f2058da7d
commit 6266072641
3 changed files with 26 additions and 8 deletions
+7
View File
@@ -352,6 +352,13 @@ class HostCallbackDataConverter : DefaultDataConverter {
// done inside of `passthrough_event`.
return AEffect(*plugin);
break;
// We detect whether an opcode should return a string by checking
// whether there's a zeroed out buffer behind the void pointer. This
// works for any host, but not all plugins zero out their buffers.
case audioMasterGetVendorString:
case audioMasterGetProductString:
return WantsString{};
break;
default:
return DefaultDataConverter::read(opcode, index, value, data);
break;