summaryrefslogtreecommitdiff
path: root/music.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'music.cpp')
-rw-r--r--music.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/music.cpp b/music.cpp
index ee9f2ba..b9cb05d 100644
--- a/music.cpp
+++ b/music.cpp
@@ -145,13 +145,13 @@ void music::begin_update(const std::string path) {
MusicDirectory::p dir = get_directory(path);
std::cout << boost::format("updater(%s) called") % path << std::endl;
if(dir) {
- update(dir->path);
+ dir->update();
}
}
/** Recursively update \p dir and its subdirectories.
*/
-void music::update(const MusicDirectory& dir) {
+void MusicDirectory::update() {
// TODO: Fix engine-specific SQL syntax inside this function.
soci::session sql(config::vm["audist.database"].as<std::string>());
@@ -196,7 +196,10 @@ void music::update(const MusicDirectory& dir) {
}
sql.close();
- std::for_each(dir.directories.begin(), dir.directories.end(), update);
+ for(PathListings::iterator it = directories.begin(); it != directories.end(); it++) {
+ MusicDirectory dir(*it);
+ dir.update();
+ }
}
void MusicDirectory::render(HTTP::Connection::p req) {