Fixed bug where embedded sources did not correctly obey the BWF time stamp and would...
authorTodd Naugle <toddn@glw.com>
Thu, 16 Jun 2011 15:18:01 +0000 (15:18 +0000)
committerTodd Naugle <toddn@glw.com>
Thu, 16 Jun 2011 15:18:01 +0000 (15:18 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@9742 d708f5d6-7413-0410-9779-e7cbd77b26cf

gtk2_ardour/editor_audio_import.cc

index e21d2efe3e7095382683969cffb09dcb8b80197a..c2351c74fc17adc41da9895001ffe07d1c724ccd 100644 (file)
@@ -447,11 +447,17 @@ Editor::do_embed (vector<string> paths, ImportDisposition chns, ImportMode mode,
        vector<string> to_embed;
        bool multi = paths.size() > 1;
        int nth = 0;
+       bool use_timestamp = (pos == -1);
 
        switch (chns) {
        case Editing::ImportDistinctFiles:
                for (vector<string>::iterator a = paths.begin(); a != paths.end(); ++a) {
 
+                       /* have to reset this for every file we handle */
+                       if (use_timestamp) {
+                               pos = -1;
+                       }
+
                        to_embed.clear ();
                        to_embed.push_back (*a);
 
@@ -468,6 +474,11 @@ Editor::do_embed (vector<string> paths, ImportDisposition chns, ImportMode mode,
        case Editing::ImportDistinctChannels:
                for (vector<string>::iterator a = paths.begin(); a != paths.end(); ++a) {
 
+                       /* have to reset this for every file we handle */
+                       if (use_timestamp) {
+                               pos = -1;
+                       }
+
                        to_embed.clear ();
                        to_embed.push_back (*a);
 
@@ -486,6 +497,11 @@ Editor::do_embed (vector<string> paths, ImportDisposition chns, ImportMode mode,
        case Editing::ImportSerializeFiles:
                for (vector<string>::iterator a = paths.begin(); a != paths.end(); ++a) {
 
+                       /* have to reset this for every file we handle */
+                       if (use_timestamp) {
+                               pos = -1;
+                       }
+
                        to_embed.clear ();
                        to_embed.push_back (*a);