fix from carl so that switching into write automation mode doesn't reset gain levels
authorPaul Davis <paul@linuxaudiosystems.com>
Wed, 1 Jul 2009 17:59:17 +0000 (17:59 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Wed, 1 Jul 2009 17:59:17 +0000 (17:59 +0000)
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@5299 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/ardour/io.cc

index 7d9734d6d6c5ef2e01581d03a6fd02ce133d9615..ad376628db0d8de4896cf423e8091fb8a2634bfc 100644 (file)
@@ -2584,8 +2584,11 @@ IO::set_gain_automation_state (AutoState state)
                        changed = true;
                        last_automation_snapshot = 0;
                        _gain_automation_curve.set_automation_state (state);
-                       
-                       if (state != Off) {
+
+                       /* don't reset gain if we're moving to Off or Write mode;
+                          if we're moving to Write, the user may have manually set up gains
+                          that they don't want to lose */
+                       if (state != Off && state != Write) {
                                set_gain (_gain_automation_curve.eval (_session.transport_frame()), this);
                        }
                }