Replies: 2 comments 2 replies
-
The events coming from the host are valid pointers for the whole call to |
Beta Was this translation helpful? Give feedback.
2 replies
-
@abique can you moderate / block that user? I don't have perms to do so in this repo. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
As I'm currently implementing CLAP support in my hosts, I came across what I'd consider to be a conceptual problem in clap_input_events:
The PlugIn expects to receive a pointer to one of the events from the host.
Since the PlugIn obviously can't claim ownership over the returned pointer, which is also more or less documented in the comment above the declaration of
get
, the host is responsible for keeping that pointer alive ... but for how long?Because, you see ... not all hosts are based on CLAP. Mine aren't; they have an internal event list - and associated internal structures - and convert them to CLAP format on the fly when the PlugIn calls
get
. Currently, I maintain a ring buffer for roughly 10 CLAP-converted events, so it's highly unlikely that an event gets overwritten while the PlugIn might still be interested in its contents, but:It is unspecified how long that event pointer and the associated content should be kept alive. A wonderful base for misunderstandings and spurious, not easily reproducible "sudden death" scenarios. This should at least be documented.
Beta Was this translation helpful? Give feedback.
All reactions