From 598162e395ca82db078ff306ba4f7adae3c8bf4b Mon Sep 17 00:00:00 2001 From: Warren Dukes Date: Mon, 21 Jun 2004 04:11:23 +0000 Subject: todo update git-svn-id: https://svn.musicpd.org/mpd/trunk@1597 09075e82-0dd4-0310-85a5-a0d7c8717e4f --- src/ls.c | 59 +++++++++++++++++++---------------------------------------- src/ls.h | 8 +++++++- 2 files changed, 26 insertions(+), 41 deletions(-) (limited to 'src') diff --git a/src/ls.c b/src/ls.c index a3e57ea43..327d8122e 100644 --- a/src/ls.c +++ b/src/ls.c @@ -190,14 +190,19 @@ int lsPlaylists(FILE * fp, char * utf8path) { return 0; } -int isFile(char * utf8file, time_t * mtime) { - struct stat st; +int myStat(char * utf8file, struct stat * st) { char * file = utf8ToFsCharset(utf8file); char * actualFile = file; if(actualFile[0]!='/') actualFile = rmp2amp(file); - if(stat(actualFile,&st)==0) { + return stat(actualFile,st); +} + +int isFile(char * utf8file, time_t * mtime) { + struct stat st; + + if(myStat(utf8file,&st)) { if(S_ISREG(st.st_mode)) { if(mtime) *mtime = st.st_mtime; return 1; @@ -233,57 +238,31 @@ int isPlaylist(char * utf8file) { return 0; } -int hasWaveSuffix(char * utf8file) { - return hasSuffix(utf8file,"wav"); -} - -int hasFlacSuffix(char * utf8file) { - return hasSuffix(utf8file,"flac"); -} - -int hasOggSuffix(char * utf8file) { - return hasSuffix(utf8file,"ogg"); -} - -int hasAacSuffix(char * utf8file) { - return hasSuffix(utf8file,"aac"); -} - -int hasMp4Suffix(char * utf8file) { - if(hasSuffix(utf8file,"mp4")) return 1; - if(hasSuffix(utf8file,"m4a")) return 1; - return 0; -} - -int hasMp3Suffix(char * utf8file) { - return hasSuffix(utf8file,"mp3"); -} - int isDir(char * utf8name) { struct stat st; - if(stat(rmp2amp(utf8ToFsCharset(utf8name)),&st)==0) { + if(myStat(utf8name,&st)==0) { if(S_ISDIR(st.st_mode)) { return 1; } } - else { - DEBUG("isDir: unable to stat: %s (%s)\n",utf8name, - rmp2amp(utf8ToFsCharset(utf8name))); - } return 0; } -InputPlugin * isMusic(char * utf8file, time_t * mtime) { +InputPlugin * hasMusicSuffix(char * utf8file) { InputPlugin * ret = NULL; - if(isFile(utf8file,mtime)) { - char * s = getSuffix(utf8file); - if(s) ret = getInputPluginFromSuffix(s); - } + char * s = getSuffix(utf8file); + if(s) ret = getInputPluginFromSuffix(s); return ret; } -/* vim:set shiftwidth=4 tabstop=8 expandtab: */ +InputPlugin * isMusic(char * utf8file, time_t * mtime) { + if(isFile(utf8file,mtime)) { + return hasMusicSuffix(utf8file); + } + + return NULL; +} diff --git a/src/ls.h b/src/ls.h index ba0cfcaa6..dd8dddd9c 100644 --- a/src/ls.h +++ b/src/ls.h @@ -24,6 +24,9 @@ #include "inputPlugin.h" #include +#include +#include +#include #include int lsPlaylists(FILE * fp, char * utf8path); @@ -34,12 +37,16 @@ int isValidRemoteUtf8Url(char * utf8url); int isRemoteUrl(char * url); +int myStat(char * utf8file, struct stat * st); + int isFile(char * utf8file, time_t * mtime); int isDir(char * utf8name); int isPlaylist(char * utf8file); +InputPlugin * hasMusicSuffix(char * utf8file); + InputPlugin * isMusic(char * utf8file, time_t * mtime); char * dupAndStripPlaylistSuffix(char * file); @@ -47,4 +54,3 @@ char * dupAndStripPlaylistSuffix(char * file); int printRemoteUrlHandlers(FILE * fp); #endif -/* vim:set shiftwidth=4 tabstop=8 expandtab: */ -- cgit v1.2.3