WS: crash bugfix related to missing strip panner

Surface made Ardour crash when a client connected
and some session track was not a VCA nor had a panner,
like MIDI strips.
This commit is contained in:
Luciano Iam 2020-09-01 22:28:00 +02:00 committed by Robin Gareus
parent 7a9d4b1f64
commit 9c08c058a3
No known key found for this signature in database
GPG key ID: A090BCE02CF57F04
5 changed files with 18 additions and 30 deletions

View file

@ -88,8 +88,9 @@ import { createRootContainer, Container, Dialog, Label, Button, Toggle,
plugins.classList.add('strip-plugins');
plugins.appendTo(container);
if (strip.isVca || (strip.plugins.length == 0)) {
if (strip.plugins.length == 0) {
plugins.classList.add('disabled');
plugins.element.style.visibility = 'hidden';
} else {
plugins.callback = () => openPlugins (strip);
}
@ -97,8 +98,10 @@ import { createRootContainer, Container, Dialog, Label, Button, Toggle,
const pan = new PanKnob();
pan.appendTo(container);
if (!strip.isVca) {
if (strip.hasPan) {
pan.bindTo(strip, 'pan');
} else {
pan.element.style.visibility = 'hidden';
}
const mute = new Toggle();
@ -123,12 +126,6 @@ import { createRootContainer, Container, Dialog, Label, Button, Toggle,
label.text = strip.name;
label.classList.add('strip-label');
label.appendTo(container);
if (strip.isVca) {
// hide plugins and pan keeping layout
pan.element.style.visibility = 'hidden';
plugins.element.style.visibility = 'hidden';
}
}
function openPlugins (strip) {