From c84c73df00e5e1710d84fdb4be6352d849da8f2b Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Wed, 8 Oct 2008 10:49:05 +0200 Subject: directory: converted typedef Directory to struct directory The struct can be forward-declared by other headers, which relaxes the header dependencies. --- src/update.c | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) (limited to 'src/update.c') diff --git a/src/update.c b/src/update.c index 4a2c11e94..00561cab1 100644 --- a/src/update.c +++ b/src/update.c @@ -18,6 +18,7 @@ */ #include "update.h" +#include "directory.h" #include "log.h" #include "ls.h" #include "path.h" @@ -53,14 +54,14 @@ int isUpdatingDB(void) return (progress != UPDATE_PROGRESS_IDLE) ? update_task_id : 0; } -static void directory_set_stat(Directory * dir, const struct stat *st) +static void directory_set_stat(struct directory *dir, const struct stat *st) { dir->inode = st->st_ino; dir->device = st->st_dev; dir->stat = 1; } -static void delete_song(Directory *dir, Song *del) +static void delete_song(struct directory *dir, Song *del) { /* first, prevent traversers in main task from getting this */ songvec_delete(&dir->songs, del); @@ -79,7 +80,7 @@ static void delete_song(Directory *dir, Song *del) struct delete_data { char *tmp; - Directory *dir; + struct directory *dir; enum update_return ret; }; @@ -99,7 +100,7 @@ static int delete_song_if_removed(Song *song, void *_data) } static enum update_return -removeDeletedFromDirectory(char *path_max_tmp, Directory * directory) +removeDeletedFromDirectory(char *path_max_tmp, struct directory *directory) { enum update_return ret = UPDATE_RETURN_NOUPDATE; int i; @@ -130,7 +131,7 @@ static const char *opendir_path(char *path_max_tmp, const char *dirname) return musicDir; } -static int statDirectory(Directory * dir) +static int statDirectory(struct directory *dir) { struct stat st; @@ -142,7 +143,8 @@ static int statDirectory(Directory * dir) return 0; } -static int inodeFoundInParent(Directory * parent, ino_t inode, dev_t device) +static int +inodeFoundInParent(struct directory *parent, ino_t inode, dev_t device) { while (parent) { if (!parent->stat && statDirectory(parent) < 0) @@ -158,10 +160,10 @@ static int inodeFoundInParent(Directory * parent, ino_t inode, dev_t device) } static enum update_return -addSubDirectoryToDirectory(Directory * directory, +addSubDirectoryToDirectory(struct directory *directory, const char *name, struct stat *st) { - Directory *subDirectory; + struct directory *subDirectory; if (inodeFoundInParent(directory, st->st_ino, st->st_dev)) return UPDATE_RETURN_NOUPDATE; @@ -180,7 +182,7 @@ addSubDirectoryToDirectory(Directory * directory, } static enum update_return -addToDirectory(Directory * directory, const char *name) +addToDirectory(struct directory *directory, const char *name) { struct stat st; @@ -208,7 +210,7 @@ addToDirectory(Directory * directory, const char *name) } static enum update_return -updateInDirectory(Directory * directory, const char *name) +updateInDirectory(struct directory *directory, const char *name) { Song *song; struct stat st; @@ -229,7 +231,7 @@ updateInDirectory(Directory * directory, const char *name) return UPDATE_RETURN_UPDATED; } } else if (S_ISDIR(st.st_mode)) { - Directory *subdir = dirvec_find(&directory->children, name); + struct directory *subdir = dirvec_find(&directory->children, name); if (subdir) { assert(directory == subdir->parent); directory_set_stat(subdir, &st); @@ -248,7 +250,7 @@ static int skip_path(const char *path) return (path[0] == '.' || strchr(path, '\n')) ? 1 : 0; } -enum update_return updateDirectory(Directory * directory) +enum update_return updateDirectory(struct directory *directory) { int was_empty = directory_is_empty(directory); DIR *dir; @@ -299,12 +301,12 @@ enum update_return updateDirectory(Directory * directory) return ret; } -static Directory *addDirectoryPathToDB(const char *utf8path) +static struct directory * addDirectoryPathToDB(const char *utf8path) { char path_max_tmp[MPD_PATH_MAX]; char *parent; - Directory *parentDirectory; - Directory *directory; + struct directory *parentDirectory; + struct directory *directory; Song *conflicting; parent = parent_path(path_max_tmp, utf8path); @@ -340,11 +342,11 @@ static Directory *addDirectoryPathToDB(const char *utf8path) return directory; } -static Directory *addParentPathToDB(const char *utf8path) +static struct directory * addParentPathToDB(const char *utf8path) { char *parent; char path_max_tmp[MPD_PATH_MAX]; - Directory *parentDirectory; + struct directory *parentDirectory; parent = parent_path(path_max_tmp, utf8path); @@ -356,13 +358,13 @@ static Directory *addParentPathToDB(const char *utf8path) if (!parentDirectory) return NULL; - return (Directory *) parentDirectory; + return (struct directory *) parentDirectory; } static enum update_return updatePath(const char *utf8path) { - Directory *directory; - Directory *parentDirectory; + struct directory *directory; + struct directory *parentDirectory; Song *song; time_t mtime; enum update_return ret = UPDATE_RETURN_NOUPDATE; -- cgit v1.2.3