diff options
author | Max Kellermann <max@duempel.org> | 2008-10-09 19:11:54 +0200 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2008-10-11 19:21:50 -0700 |
commit | 6fd08bc8fad5d6c4be37ce751d53ef80b756b292 (patch) | |
tree | 11de3cf6fb40a9af6a1d0e43180293bde6ad5cec /src/database.c | |
parent | 1f70121c5604be45e81c5a07d59efea2aaa1597b (diff) | |
download | mpd-6fd08bc8fad5d6c4be37ce751d53ef80b756b292.tar.gz mpd-6fd08bc8fad5d6c4be37ce751d53ef80b756b292.tar.xz mpd-6fd08bc8fad5d6c4be37ce751d53ef80b756b292.zip |
update: don't export updateDirectory()
If the user requests database update during startup, call
directory_update_init(). This should be changed to fully asynchronous
update later.
For this to work, main_notify has to be initialized before db_init().
Diffstat (limited to 'src/database.c')
-rw-r--r-- | src/database.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/database.c b/src/database.c index 11de15bcc..3a1667bb6 100644 --- a/src/database.c +++ b/src/database.c @@ -39,7 +39,15 @@ static time_t directory_dbModTime; void db_init(void) { music_root = directory_new("", NULL); - updateDirectory(music_root); + + if (directory_update_init(NULL) < 0) + FATAL("directory update failed\n"); + + do { + my_usleep(100000); + reap_update_task(); + } while (isUpdatingDB()); + stats.numberOfSongs = countSongsIn(NULL); stats.dbPlayTime = sumSongTimesIn(NULL); } |