summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Loftis <ben@glw.com>2009-10-20 21:31:54 +0000
committerBen Loftis <ben@glw.com>2009-10-20 21:31:54 +0000
commit114b5114134cf6e8b4422ea9ee46b231cda29ef0 (patch)
tree9a9ff7936ae322bae75755ccfd74a697446f5a34
parent933bf42a993b090d4bd4f4f339d24451033e6f07 (diff)
store the count of imported files in the import_status record, and initialize it before the import loop, so the count works correctly
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@5827 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/editor_audio_import.cc3
-rw-r--r--libs/ardour/ardour/session.h1
-rw-r--r--libs/ardour/import.cc7
3 files changed, 8 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc
index 902093b342..9476dc836c 100644
--- a/gtk2_ardour/editor_audio_import.cc
+++ b/gtk2_ardour/editor_audio_import.cc
@@ -284,6 +284,9 @@ Editor::get_nth_selected_audio_track (int nth) const
void
Editor::do_import (vector<ustring> paths, ImportDisposition chns, ImportMode mode, SrcQuality quality, nframes64_t& pos)
{
+ //this is where an import "starts" so initialize the count here ... the rest gets initialized in import_sndfiles()
+ import_status.count = 0;
+
boost::shared_ptr<AudioTrack> track;
vector<ustring> to_import;
int nth = 0;
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index dc9c4701b6..012ebd3f75 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -606,6 +606,7 @@ class Session : public PBD::StatefulDestructible
/* control info */
uint32_t total;
+ uint32_t count;
SrcQuality quality;
volatile bool freeze;
std::vector<Glib::ustring> paths;
diff --git a/libs/ardour/import.cc b/libs/ardour/import.cc
index 18747b1beb..30bcaa891a 100644
--- a/libs/ardour/import.cc
+++ b/libs/ardour/import.cc
@@ -307,7 +307,6 @@ remove_file_source (boost::shared_ptr<AudioFileSource> file_source)
void
Session::import_audiofiles (import_status& status)
{
- uint32_t cnt = 1;
typedef vector<boost::shared_ptr<AudioFileSource> > AudioSources;
AudioSources all_new_sources;
@@ -315,8 +314,10 @@ Session::import_audiofiles (import_status& status)
for (vector<Glib::ustring>::iterator p = status.paths.begin();
p != status.paths.end() && !status.cancel;
- ++p, ++cnt)
+ ++p)
{
+ status.count++;
+
boost::shared_ptr<ImportableSource> source;
try
@@ -355,7 +356,7 @@ Session::import_audiofiles (import_status& status)
}
status.doing_what = compose_status_message (*p, source->samplerate(),
- frame_rate(), cnt, status.total);
+ frame_rate(), status.count, status.total);
write_audio_data_to_new_files (source.get(), status, newfiles);
}