8f8a4878f3
Clean up some MIDI code.
2014-11-20 11:31:31 -05:00
0c4869dc35
debug trace lost midi-messages
2014-11-20 02:46:30 +01:00
a9936205b1
Fix dropped MIDI events, especially with record enabled.
...
I am not precisely sure why the cached iterator was causing this problem, it
shouldn't be invalidated, and the times make sense. It may be some lock
related issue since the iterator holds a lock on the source.
In any case, this cached iterator was just to avoid repeated linear search of
the model, but since the model has a logarithmic search, instead just scrap all
this problematic persistent state and search for the appropriate start time
every read. No need to be careful about invalidating when anything changes.
2014-11-19 19:24:16 -05:00
e3e85a92db
some const'ness and hints for clang
2014-11-19 20:38:50 +01:00
0fb91e10b4
allow dummy backend for any product
2014-11-18 17:04:23 -06:00
bd577a0663
Avoid possible use of uninitialized values.
...
This could only happen with a broken widget, but it shuts up clang and doesn't
hurt.
2014-11-18 02:55:03 -05:00
976a150e6b
Remove obviously dead/redundant code.
2014-11-18 02:55:03 -05:00
07d4f50689
Clean up funny code and initialize variables.
2014-11-18 02:55:03 -05:00
881d77f1e5
Constrain variable scopen and avoid uninitialized values existing at all.
...
Note: dead assignments trigger scan-build dead code warnings, which
initializations do not.
2014-11-18 02:55:03 -05:00
6e482b3488
Remove unused variable and redundant arithmetic.
2014-11-18 02:55:03 -05:00
8dde26da7b
Gracefully avoid importing audio that somehow has 0 channels.
2014-11-18 02:55:03 -05:00
e5d9fd1aac
Fix potential use of uninitialized value.
2014-11-18 02:53:28 -05:00
fed4e8446b
Fix NULL pointer dereference on malformed Playlist XML.
2014-11-18 02:53:28 -05:00
afd67800b9
Avoid potential division by zero.
2014-11-18 02:53:28 -05:00
c4c7598adb
Fix broken logic and possible NULL pointer dereference for Bundle XML.
2014-11-18 02:53:28 -05:00
26f6f80a53
Fix incredibly unlikely NULL pointer dereference.
2014-11-18 02:53:28 -05:00
9aec0c627d
Fix Region::verify_length() so it actually does something.
2014-11-18 02:53:27 -05:00
b6db707989
amend 484e38053
2014-11-18 05:28:27 +01:00
484e380536
silence clang "dead assignment" warnings
2014-11-18 04:46:37 +01:00
37937d9c69
synchronize preferences and monitor-section
2014-11-18 03:49:20 +01:00
5e90b97c42
files should have at least one channel.
2014-11-18 02:15:07 +01:00
f2273dc3b6
remove dead assignment
2014-11-18 02:15:06 +01:00
c194e4df18
remove superfluous if-branch (_session is checked a few lines above)
2014-11-18 02:15:06 +01:00
f7ebae85a7
Fix "maybe" rounding bug.
...
Introduced in d63161426f
.
2014-11-17 19:53:30 -05:00
02d735ff00
waves/coreaudio PPC support
2014-11-17 09:07:39 +01:00
bd46de779f
check alsa midi ringbuffer
2014-11-17 06:50:48 +01:00
b4fcdbb100
Don't add origin value to MIDI controller regions on initial insert.
...
This should probably hijack the same modifier as the guard points and work the
same on all automation tracks, but I did it this way to not change behaviour of
track automation where a default is much more reasonable.
2014-11-16 22:35:45 -05:00
d63161426f
Add "maybe" rounding modes for rounding only if necessary.
2014-11-16 22:35:45 -05:00
fd9ccc7058
Use an enum for RoundMode instead of magic numbers.
...
No functional changes in this one (for easier auditing), but towards having
round up/down only if necessary modes, rather than kludging around that
situation with a double round as we do currently.
2014-11-16 22:35:45 -05:00
9d4f43fa7d
Make ControlList::paste const-correct.
2014-11-16 22:35:45 -05:00
df40782b62
prevent segfault if in/out property is missing
2014-11-17 04:05:00 +01:00
ad739cd018
add some assert() messages.
...
as hints clang static analyzer "Called C++ object pointer is null"
2014-11-17 03:49:19 +01:00
333c776e0e
Fix MIDI region keyboard editing (add key handling to canvas).
2014-11-15 02:04:28 -05:00
b52407043c
Fix crash when copying MIDI regions with midi-copy-is-fork is on ( #6002 ).
2014-11-14 23:53:59 -05:00
94954f852e
Fix out of order event errors on save with overlapping notes.
...
Another consequence of fuzzy Sequence timing, but if the difference is less
than a tick this should handle things correctly. If the difference is more
than a tick, something's wrong, and it might be okay to just bump forward
anyway, but I can't reproduce this and it could lead to corruption so I'm
leaving that case noisy.
2014-11-14 21:19:09 -05:00
6b3a8915f3
add abort() to non-reached code
...
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
8907477271
Fix crashes on various MIDI editing operations.
...
Assertions assumed old strict ordering, no longer reflecting reality of fuzzy
time comparison (introduced in 86f1b8).
2014-11-13 22:34:20 -05:00
4ba4677b45
yet another copy/paste typo :(
2014-11-13 22:19:22 +01:00
9301ffafab
fix typo in b9fc616538
2014-11-13 21:46:30 +01:00
b376f6bc45
auto-initialize weak-jack
...
(not needed with ardour - but keep code in sync with
https://github.com/x42/weakjack )
2014-11-13 21:31:09 +01:00
b9fc616538
prepare for JACK meta-data API
2014-11-13 21:30:13 +01:00
65fa38103d
make new jack thread API functions optional
2014-11-13 21:29:34 +01:00
7b39e0893a
add symbol debug information to weak-jack
2014-11-13 21:28:33 +01:00
cb38034334
install all additional binaries in $libdir
2014-11-13 19:57:40 +01:00
9a9a8f78ef
fix define
2014-11-13 19:05:58 +01:00
0689a2976e
Don't iterate in 'ARDOUR::Route::get_control()' unless a ReaderLock was successfully obtained
2014-11-13 13:07:34 +00:00
e59e8f6ab9
Make sure we can't execute 'ARDOUR::Route::meter()' unless a ReaderLock was successfully obtained
2014-11-13 12:13:16 +00:00
3e702c5520
yet another build fix
...
on x86_64 weak_libjack.c needs -fPIC which needs cflags which need 'c' :)
2014-11-13 01:02:09 +01:00
533b545295
add popup message and error log for AU crash reports
2014-11-12 13:35:15 +01:00
5624301a31
Prepare AU-discovery crashlog.
...
stopgap solution to allow a user to detect which plugin caused a crash during discovery.
2014-11-12 13:34:46 +01:00