aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2011-03-16 23:15:29 +0000
committerDavid Robillard <d@drobilla.net>2011-03-16 23:15:29 +0000
commit88ca1e3514eeb7fd15ea85cc00bf5858d8bd474f (patch)
tree08849827ce770e6f4bef992cf1c9339804a35220
parent190bf278aeafa53395f3a8a5e8c64f278def9f37 (diff)
downloadlv2-88ca1e3514eeb7fd15ea85cc00bf5858d8bd474f.tar.xz
Add threading rule for all classes (prohibit messing with global state).
-rw-r--r--core.lv2/lv2.ttl4
1 files changed, 4 insertions, 0 deletions
diff --git a/core.lv2/lv2.ttl b/core.lv2/lv2.ttl
index 2fa40fe..ea020d1 100644
--- a/core.lv2/lv2.ttl
+++ b/core.lv2/lv2.ttl
@@ -140,6 +140,10 @@ the functions provided by a plugin are divided into classes:</p>
<dd>run(), connect_port()</dd>
</dl>
+<p>Plugin functions in any class MUST NOT manipulate any state which might
+affect other plugin or host code, e.g. by using non-reentrant global
+functions.</p>
+
<p>Extensions to this specification which add new plugin functions MUST declare
in which of these classes the functions belong, or define new classes for
them. Extensions which add new host-provided functions MUST declare from which