aboutsummaryrefslogtreecommitdiffstats
path: root/src/songvec.c
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2008-10-11 23:39:50 -0700
committerEric Wong <normalperson@yhbt.net>2008-10-11 23:39:50 -0700
commit0df62a2c3cb7af88347d40a17cc336b5d1740f62 (patch)
tree25040833144c3e24f6b4702d9b745cd068b5371a /src/songvec.c
parent3456e2de5bf90207d8149a842bb12c3f9bdd218f (diff)
parent6e2b0ca9edaed200f250ef487701ad161aa4a168 (diff)
downloadmpd-0df62a2c3cb7af88347d40a17cc336b5d1740f62.tar.gz
mpd-0df62a2c3cb7af88347d40a17cc336b5d1740f62.tar.xz
mpd-0df62a2c3cb7af88347d40a17cc336b5d1740f62.zip
Merge branch 'mk/directory'
* mk/directory: (59 commits) directory: don't use identical struct and variable names update: replaced update_return with global "modified" flag update: make the variable "progress" static update: don't print debug message when song was not modified update: fix memory leak in directory_update_init() update: make the job id unsigned update: job ID must be positive update: check progress!=IDLE in reap_update_task() update: fixed stack corruption due to pthread_join() call updated: always call removeDeletedFromDirectory() update: eliminated addSubDirectoryToDirectory() update: make the "song" variable more local update: do the recursive directory check only once update: copy stat to new directory update: avoid duplicate stat() calls update: rewrote updatePath() using updateInDirectory() update: don't export updateDirectory() update: pass const pointer to addSubDirectoryToDirectory() update: never pass root path to updatePath() update: merged addDirectoryPathToDB() into addParentPathToDB() ... Conflicts: src/song.c
Diffstat (limited to 'src/songvec.c')
-rw-r--r--src/songvec.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/songvec.c b/src/songvec.c
index cf0991029..ce04a4373 100644
--- a/src/songvec.c
+++ b/src/songvec.c
@@ -7,27 +7,27 @@ static pthread_mutex_t nr_lock = PTHREAD_MUTEX_INITIALIZER;
/* Only used for sorting/searchin a songvec, not general purpose compares */
static int songvec_cmp(const void *s1, const void *s2)
{
- const Song *a = ((const Song * const *)s1)[0];
- const Song *b = ((const Song * const *)s2)[0];
+ const struct mpd_song *a = ((const struct mpd_song * const *)s1)[0];
+ const struct mpd_song *b = ((const struct mpd_song * const *)s2)[0];
return strcmp(a->url, b->url);
}
static size_t sv_size(struct songvec *sv)
{
- return sv->nr * sizeof(Song *);
+ return sv->nr * sizeof(struct mpd_song *);
}
void songvec_sort(struct songvec *sv)
{
pthread_mutex_lock(&nr_lock);
- qsort(sv->base, sv->nr, sizeof(Song *), songvec_cmp);
+ qsort(sv->base, sv->nr, sizeof(struct mpd_song *), songvec_cmp);
pthread_mutex_unlock(&nr_lock);
}
-Song *songvec_find(struct songvec *sv, const char *url)
+struct mpd_song *songvec_find(const struct songvec *sv, const char *url)
{
int i;
- Song *ret = NULL;
+ struct mpd_song *ret = NULL;
pthread_mutex_lock(&nr_lock);
for (i = sv->nr; --i >= 0; ) {
@@ -40,7 +40,7 @@ Song *songvec_find(struct songvec *sv, const char *url)
return ret;
}
-int songvec_delete(struct songvec *sv, const Song *del)
+int songvec_delete(struct songvec *sv, const struct mpd_song *del)
{
int i;
@@ -54,7 +54,7 @@ int songvec_delete(struct songvec *sv, const Song *del)
sv->base = NULL;
} else {
memmove(&sv->base[i], &sv->base[i + 1],
- (sv->nr - i + 1) * sizeof(Song *));
+ (sv->nr - i + 1) * sizeof(struct mpd_song *));
sv->base = xrealloc(sv->base, sv_size(sv));
}
break;
@@ -64,7 +64,7 @@ int songvec_delete(struct songvec *sv, const Song *del)
return i;
}
-void songvec_add(struct songvec *sv, Song *add)
+void songvec_add(struct songvec *sv, struct mpd_song *add)
{
pthread_mutex_lock(&nr_lock);
++sv->nr;
@@ -84,13 +84,14 @@ void songvec_destroy(struct songvec *sv)
pthread_mutex_unlock(&nr_lock);
}
-int songvec_for_each(struct songvec *sv, int (*fn)(Song *, void *), void *arg)
+int songvec_for_each(const struct songvec *sv,
+ int (*fn)(struct mpd_song *, void *), void *arg)
{
size_t i;
pthread_mutex_lock(&nr_lock);
for (i = 0; i < sv->nr; ++i) {
- Song *song = sv->base[i];
+ struct mpd_song *song = sv->base[i];
assert(song);
assert(*song->url);