13
0
Commit Graph

30965 Commits

Author SHA1 Message Date
Hector Martin
f87de76b9f
RCU: Fix race condition between writer/reader
This uses an atomic counter and spins only on the writer side, which
preserves realtime behavior on the reader side. The spinning yields (by
using the same Boost function from Boost spinlocks) to be
scheduler-friendly.

Fixing this bug also lets us be able to confidently drop garbage early
in the writer if appropriate, so do that and avoid keeping dead wood if
possible.

This reverts commit f95439a502:
"add spinlock to RCU manager to protect concurrent reader() and update() calls"
2020-11-10 17:05:16 +01:00
Hector Martin
55c2c9db7e Add sanity assert in MidiBuffer::insert_event to check for overflow 2020-11-10 21:03:42 +09:00
Hector Martin
a568b3c7c2 Complain when MidiBuffer::merge_from fails due to buffer full
We were previously dropping MIDI data silently
2020-11-10 21:03:42 +09:00
Hector Martin
0979097cae Check for MIDI buffer overflow when merging into an empty buffer
This can happen if the buffers have different sizes.
This fixes crashes that bisected to 7c37a18b7, but it is not the root
cause; it just happened to make things worse.
2020-11-10 21:03:42 +09:00
f2d04dfb1f
Fix VST2 default and initial control parameter values 2020-11-10 00:08:03 +01:00
Thomas Brand
275a37ff39
Fix Tom's Loop
-There's no 'printf' (!)
-New: Use LuaDialog to tell error cases instead of printing help to the log window.
2020-11-09 20:54:51 +01:00
Hector Martin
0e509fa09f
Correctly sort concurrent MIDI events
This fixes an bug introduced in 7c37a18b7
2020-11-09 20:40:59 +01:00
bb468ee4de
Update jackd.exe registry key
This ensures compatibility with upcoming jack > 1.9.16,
current jack 1.9.16, as well as older versions.
2020-11-09 20:06:49 +01:00
Olivier Humbert
1d14b1cfba
French translation update 2020-11-09 19:44:52 +01:00
Edgar Aichinger
3d1fe88506
update german translation 2020-11-09 19:08:40 +01:00
Edgar Aichinger
1fed2285ca
updated german translation 2020-11-09 19:08:40 +01:00
John Emmas
5f082e2c9d Add an extra option when querying Windows registry keys
(this option will be needed when 32-bit Ardour is running in 64-bit Windows)
2020-11-09 11:35:35 +00:00
56394b7683 ru translation updates from Alexandre Prokoudine 2020-11-08 15:03:43 -07:00
f95439a502 add spinlock to RCU manager to protect concurrent reader() and update() calls 2020-11-08 11:28:10 -07:00
0f9d391029 mark string for translation 2020-11-08 08:19:46 -07:00
01f9332458
Fix RCU Unit-test on macOS/X
Apple's pthread does not implement barriers
2020-11-07 10:37:52 +01:00
1fce0c6513
Fix building Lua documentation 2020-11-06 18:00:00 +01:00
efe72b79e4
Allow to pass arguments to unit test runner 2020-11-05 10:20:25 +01:00
88fc0ed392
Add RCU unit test 2020-11-05 02:24:54 +01:00
1a73ef16f4
Credit where credit is due 2020-11-05 00:55:03 +01:00
62e47fb57c
Add Lua binding for unit-tests to sync with process-cb 2020-11-04 19:08:59 +01:00
c87ef15e82
ALSA: configure capture settings before playback
This fixes an issue with some soundcards e.g. "AxeFx III".
Device configuration fails unless set_hwpar() is performed
for the capture device before configuring the playack
device (half duplex is fine, too).
2020-11-04 14:46:49 +01:00
b00baa8ac2
Add Lua script to collapse playlists 2020-11-04 00:21:29 +01:00
1321999aec
VST3: macOS key forwarding 2020-11-03 12:09:31 +01:00
aa7697d7f2
Fix typo #8456 2020-11-03 01:01:36 +01:00
8bb76f2a65
NO-OP: code-reorder to facility Mixbus LAN button layout 2020-11-02 15:52:42 +01:00
b8b232cfab
VST3: query latency when plugin is activated regardless of Vst::kLatencyChanged 2020-11-02 01:58:05 +01:00
8ab62937ca
VST3: verbose scan option 2020-11-02 01:57:03 +01:00
35414fcef0
VST3: yet another attempt at state-retore #8460 2020-11-02 01:46:08 +01:00
10ea21a35f
Fix adding transport-master
Resolve ambiguity between Dialog::add_button() and add_button member,
also use clicked signal for ArdourButton.

signal_button_press_event() only works with
ArdourButton::set_fallthrough_to_parent
2020-11-01 23:28:30 +01:00
66c19647df
NO-OP: fix typos 2020-11-01 12:25:22 +01:00
cf0904f752
Handle vfork/exec failure
Don't call atexit, exit without cleanup.
2020-10-31 22:33:10 +01:00
a9bd7b2848
Remove unused compile-time option to not use vfork 2020-10-31 22:30:45 +01:00
edc70200c4
VST3: add generic uname -m fallback 2020-10-31 20:26:34 +01:00
7896c30508
Fix cmdline parameter escape 2020-10-31 13:42:14 +01:00
John Emmas
40ed19767a In a Windows build, support launching both older and newer versions of Jack (Stephane's + Filipe's) 2020-10-31 08:01:55 +00:00
John Emmas
5c06fdf1de In an MSVC build, modify our VC project to use weak Jack
(needed to support Jack v1.9.16)
2020-10-31 07:59:09 +00:00
85ecc40668
Tweak Mixbus pingback, follow http -> https redirects 2020-10-30 15:58:15 +01:00
c69dde96eb
Ardour HTTPS verify that peer isn't lying about the cert
https://curl.haxx.se/libcurl/c/CURLOPT_SSL_VERIFYPEER.html
https://curl.haxx.se/libcurl/c/CURLOPT_SSL_VERIFYHOST.html
2020-10-30 15:58:04 +01:00
f509a7e003
Extend convenience API to query windows registry 2020-10-30 13:15:06 +01:00
1219271321
Cont'd work on implicit solo restore
This is an update to b90f057e6e, allowing processors
to configure when ports change. Fixes loading old sessions with
variable i/o polarity invert.
2020-10-29 19:55:27 +01:00
b90f057e6e
Fix restoring implicit solo on session load
When a route's output is connected to multiple busses, re-establishing
port-connections on session-load calls Route::output_change_handler
multiple times.

Implicit solo counts are saved and restored by the route's SoloControl,
however the output_change_handler invalidated it on session load.

Since connections are restored iteratively, counting soloed downstream
routes will yield an incorrect result until all connections are
established.

This fixes the issue that implicit solo is lost on session-reload
in case a route has multiple connections with different up/downstream
solo states.
2020-10-28 22:31:26 +01:00
6e9d6934d9
Fix previous commit (OSX LV2) 2020-10-28 06:14:31 +01:00
1d5cb4150e
Fix LV2 ontology install path for OSX bundles 2020-10-28 05:52:54 +01:00
7826a1a2a2
Increase plugin-scan progress display frequency 2020-10-27 22:21:49 +01:00
dc5b88f730
Pulse plugin scan progress-bar when timeout is disabled 2020-10-27 22:21:46 +01:00
722294075d
VST3: fix UTF-16 host message 2020-10-26 18:33:10 +01:00
8f67fc9c35
Fix clock edited-text and cursor colors
This restores using the distinct colors for cursor and edited text,
which was lost in the theme overhaul in 7f80883eb1.
Since delta-clocks are not editable, the same color is used for
delta display and the edit cursor (orange in the default theme).
2020-10-26 17:41:12 +01:00
93b63b1b25
Fix clock cursor entry position
This shows the cursor to the right of the entry point.
2020-10-26 15:56:18 +01:00
b119758161
fix debug messages in prev commit 2020-10-25 20:31:50 +01:00