From ba96920a52bbd2208aa1f3b284edc864e26198ce Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 20 Oct 2008 22:18:12 +0200 Subject: path: replaced mpd_basename() with g_path_get_basename() GLib's g_path_get_basename() is much more reliable than mpd_basename(). The latter could be tricked into an assertion failure. --- src/dirvec.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/dirvec.c') diff --git a/src/dirvec.c b/src/dirvec.c index 98cb9e7ad..61e5a859a 100644 --- a/src/dirvec.c +++ b/src/dirvec.c @@ -4,6 +4,7 @@ #include "path.h" #include +#include static size_t dv_size(struct dirvec *dv) { @@ -25,13 +26,18 @@ void dirvec_sort(struct dirvec *dv) struct directory *dirvec_find(const struct dirvec *dv, const char *path) { + char *basename; int i; - path = mpd_basename(path); + basename = g_path_get_basename(path); for (i = dv->nr; --i >= 0; ) - if (!strcmp(directory_get_name(dv->base[i]), path)) + if (!strcmp(directory_get_name(dv->base[i]), basename)) { + g_free(basename); return dv->base[i]; + } + + g_free(basename); return NULL; } -- cgit v1.2.3