diff options
author | David Robillard <d@drobilla.net> | 2012-11-18 00:05:31 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-11-18 00:05:31 +0000 |
commit | b4718b5cc8334489a1eb50df9db920bc0b01375c (patch) | |
tree | a082532a4d958c77217244b28c36bc764e71b564 /src/server | |
parent | d04ce4cb7d4aa3eb72bc79c09dfe5bb025ad79f4 (diff) | |
download | ingen-b4718b5cc8334489a1eb50df9db920bc0b01375c.tar.gz ingen-b4718b5cc8334489a1eb50df9db920bc0b01375c.tar.bz2 ingen-b4718b5cc8334489a1eb50df9db920bc0b01375c.zip |
Fix Plugin=>UI ring overflow handling.
Gracefully handle client receiving nodes with as-yet unknown plugins.
Don't initially send all plugins to UI (kills LV2 in particular),
request on demand instead.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4829 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/LV2Block.cpp | 4 | ||||
-rw-r--r-- | src/server/ingen_lv2.cpp | 5 |
2 files changed, 3 insertions, 6 deletions
diff --git a/src/server/LV2Block.cpp b/src/server/LV2Block.cpp index d63f9ae7..47a0af4f 100644 --- a/src/server/LV2Block.cpp +++ b/src/server/LV2Block.cpp @@ -307,10 +307,6 @@ LV2Block::instantiate(BufferFactory& bufs) } } lilv_nodes_free(sizes); - - bufs.engine().log().info( - Raul::fmt("Atom port %1% buffer size %2%\n") - % path().c_str() % port_buffer_size); } enum { UNKNOWN, INPUT, OUTPUT } direction = UNKNOWN; diff --git a/src/server/ingen_lv2.cpp b/src/server/ingen_lv2.cpp index fcada858..f64e9c45 100644 --- a/src/server/ingen_lv2.cpp +++ b/src/server/ingen_lv2.cpp @@ -337,7 +337,6 @@ public: } if (seq->atom.size + sizeof(LV2_Atom) + atom.size > _notify_capacity) { - std::cerr << "Notify overflow" << std::endl; break; // Output port buffer full, resume next time } @@ -357,7 +356,9 @@ public: seq->atom.size += sizeof(LV2_Atom_Event) + ev->body.size; } - _to_ui_overflow_sem.post(); + if (_to_ui_overflow) { + _to_ui_overflow_sem.post(); + } } virtual SampleCount block_length() const { return _block_length; } |