summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-03-31 00:59:09 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-03-31 00:59:09 +0000
commitf7a943403485c63032362c8f29cdc4abb43e18b4 (patch)
treeadfe8f3413ba49ea532ae43d25cb249af648835a /libs
parente3dd8cc3ee481924997a1650e3a130b2579be209 (diff)
functioning invert (polarity) button; menu item removed and track name button no longer relablled when inverted
git-svn-id: svn://localhost/ardour2/branches/3.0@6813 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/route.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index d4bef14176..2744b71f91 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -418,7 +418,7 @@ Route::process_output_buffers (BufferSet& bufs,
for (BufferSet::audio_iterator i = bufs.audio_begin(); i != bufs.audio_end(); ++i, ++chn) {
Sample* const sp = i->data();
- if (_phase_invert & chn) {
+ if (_phase_invert & (1<<chn)) {
for (nframes_t nx = 0; nx < nframes; ++nx) {
sp[nx] = -sp[nx];
}
@@ -3257,8 +3257,14 @@ void
Route::set_phase_invert (bool yn)
{
if (_phase_invert != yn) {
- _phase_invert = 0xffff; // XXX all channels
+ if (yn) {
+ _phase_invert = 0xffff; // XXX all channels
+ } else {
+ _phase_invert = 0; // XXX no channels
+ }
+
phase_invert_changed (); /* EMIT SIGNAL */
+ _session.set_dirty ();
}
}