summaryrefslogtreecommitdiff
path: root/libjack
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-11-04 09:44:58 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2012-11-04 09:44:58 -0500
commit6ddbf81d144b260937b73d08f8df5e992b44e22c (patch)
treed909cb845c8be40c6ef350de7a3e462dd9328e6e /libjack
parent71904890aa6eae5ed6258cc6d7032b09142a9543 (diff)
downloadjack1-6ddbf81d144b260937b73d08f8df5e992b44e22c.tar.gz
add a latency callback to the ALSA backend, and ensure that the backend's latency callback, if it exists, is called after a buffer size change
Diffstat (limited to 'libjack')
-rw-r--r--libjack/client.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libjack/client.c b/libjack/client.c
index ae88862..8874c5c 100644
--- a/libjack/client.c
+++ b/libjack/client.c
@@ -589,13 +589,14 @@ jack_client_handle_latency_callback (jack_client_t *client, jack_event_t *event,
}
}
- /* for a driver invocation, this is enough.
+ /* for a driver invocation without its own latency callback, this is enough.
* input and output ports do not depend on each other.
*/
- if (is_driver)
+ if (is_driver && !client->control->latency_cbset) {
return 0;
-
- if (! client->control->latency_cbset) {
+ }
+
+ if (!client->control->latency_cbset) {
/*
* default action is to assume all ports depend on each other.
* then always take the maximum latency.