Patch to make the configure flag for mpd-mad and mpd-libid3tag more logic (from ticho)
git-svn-id: https://svn.musicpd.org/mpd/trunk@3477 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
bc666a9fc6
commit
edcfbef90d
|
@ -47,8 +47,9 @@ AC_ARG_ENABLE(audiofile,[ --disable-audiofile disable audiofile support, disabl
|
|||
AC_ARG_ENABLE(mod,[ --enable-mod enable MOD support],enable_mod=yes,)
|
||||
AC_ARG_ENABLE(mpc,[ --disable-mpc disable musepack (MPC) support],,enable_mpc=yes)
|
||||
AC_ARG_ENABLE(id3,[ --disable-id3 disable id3 support],,enable_id3=yes)
|
||||
AC_ARG_ENABLE(mpd_mad,[ --enable-mpd-mad use mpd libmad],use_mpd_mad=yes,)
|
||||
AC_ARG_ENABLE(mpd_id3tag,[ --enable-mpd-id3tag use mpd libid3tag],use_mpd_id3tag=yes,)
|
||||
|
||||
AC_ARG_ENABLE(mpd_mad,[ --enable-mpd-mad use mpd libmad],[use_mpd_mad=$enableval],[use_mpd_mad=no])
|
||||
AC_ARG_ENABLE(mpd_id3tag,[ --enable-mpd-id3tag use mpd libid3tag],[use_mpd_id3tag=$enableval],[use_mpd_id3tag=no])
|
||||
|
||||
AC_ARG_WITH(tremor,[[ --with-tremor[=PFX] Use Tremor(vorbisidec) integer Ogg-Vorbis decoder (with optional prefix)]], use_tremor=yes; test x$withval != xyes && tremor_prefix="$withval",)
|
||||
AC_ARG_WITH(tremor-libraries,[ --with-tremor-libraries=DIR Directory where Tremor library is installed (optional)], tremor_libraries="$withval", tremor_libraries="")
|
||||
|
|
|
@ -405,6 +405,9 @@ MpdTag * aacTagDup(char * file) {
|
|||
if((ret = id3Dup(file))==NULL) ret = newMpdTag();
|
||||
ret->time = time;
|
||||
}
|
||||
else {
|
||||
DEBUG("aacTagDup: Failed to get total song time from: %s\n", file);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -148,6 +148,9 @@ MpdTag * audiofileTagDup(char * file) {
|
|||
if(!ret) ret = newMpdTag();
|
||||
ret->time = time;
|
||||
}
|
||||
else {
|
||||
DEBUG("audiofileTagDup: Failed to get total song time from: %s\n", file);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -533,6 +533,19 @@ MpdTag * flacMetadataDup(char * file, int * vorbisCommentFound) {
|
|||
|
||||
it = FLAC__metadata_simple_iterator_new();
|
||||
if(!FLAC__metadata_simple_iterator_init(it, file ,1,0)) {
|
||||
switch(FLAC__metadata_simple_iterator_status(it)) {
|
||||
case FLAC__METADATA_SIMPLE_ITERATOR_STATUS_ILLEGAL_INPUT:
|
||||
DEBUG("flacMetadataDup: Reading '%s' metadata gave the following error: Illegal Input\n",file);
|
||||
break;
|
||||
case FLAC__METADATA_SIMPLE_ITERATOR_STATUS_ERROR_OPENING_FILE:
|
||||
DEBUG("flacMetadataDup: Reading '%s' metadata gave the following error: Error Opening File\n",file);
|
||||
break;
|
||||
case FLAC__METADATA_SIMPLE_ITERATOR_STATUS_NOT_A_FLAC_FILE:
|
||||
DEBUG("flacMetadataDup: Reading '%s' metadata gave the following error: Not A Flac File\n",file);
|
||||
break;
|
||||
default:
|
||||
DEBUG("flacMetadataDup: Reading '%s' metadata failed\n",file);
|
||||
}
|
||||
FLAC__metadata_simple_iterator_delete(it);
|
||||
return ret;
|
||||
}
|
||||
|
@ -564,7 +577,10 @@ MpdTag * flacTagDup(char * file) {
|
|||
int foundVorbisComment = 0;
|
||||
|
||||
ret = flacMetadataDup(file, &foundVorbisComment);
|
||||
if(!ret) return NULL;
|
||||
if(!ret) {
|
||||
DEBUG("flacTagDup: Failed to grab information from: %s\n", file);
|
||||
return NULL;
|
||||
}
|
||||
if(!foundVorbisComment) {
|
||||
MpdTag * temp = id3Dup(file);
|
||||
if(temp) {
|
||||
|
|
|
@ -212,10 +212,17 @@ MpdTag * modTagDup(char * file) {
|
|||
MODULE * moduleHandle;
|
||||
char * title;
|
||||
|
||||
if(mod_initMikMod() < 0) return NULL;
|
||||
if(mod_initMikMod() < 0) {
|
||||
DEBUG("modTagDup: Failed to initialize MikMod\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if(!(moduleHandle = Player_Load(file, 128, 0))) goto fail;
|
||||
if(!(moduleHandle = Player_Load(file, 128, 0))) {
|
||||
DEBUG("modTagDup: Failed to open file: %s\n",file);
|
||||
MikMod_Exit();
|
||||
return NULL;
|
||||
|
||||
}
|
||||
Player_Free(moduleHandle);
|
||||
|
||||
ret = newMpdTag();
|
||||
|
@ -224,7 +231,6 @@ MpdTag * modTagDup(char * file) {
|
|||
title = strdup(Player_LoadTitle(file));
|
||||
if(title) addItemToMpdTag(ret, TAG_ITEM_TITLE, title);
|
||||
|
||||
fail:
|
||||
MikMod_Exit();
|
||||
|
||||
return ret;
|
||||
|
|
|
@ -756,6 +756,9 @@ MpdTag * mp3_tagDup(char * file) {
|
|||
if(!ret) ret = newMpdTag();
|
||||
ret->time = time;
|
||||
}
|
||||
else {
|
||||
DEBUG("mp3_tagDup: Failed to get total song time from: %s\n", file);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -326,7 +326,10 @@ MpdTag * mp4DataDup(char * file, int * mp4MetadataFound) {
|
|||
|
||||
*mp4MetadataFound = 0;
|
||||
|
||||
if(openInputStream(&inStream, file) < 0) return NULL;
|
||||
if(openInputStream(&inStream, file) < 0) {
|
||||
DEBUG("mp4DataDup: Failed to open file: %s\n", file);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
cb = malloc(sizeof(mp4ff_callback_t));
|
||||
cb->read = mp4_inputStreamReadCallback;
|
||||
|
|
|
@ -294,7 +294,10 @@ static float mpcGetTime(char * file) {
|
|||
|
||||
mpc_streaminfo_init(&info);
|
||||
|
||||
if(openInputStream(&inStream, file) < 0) return -1;
|
||||
if(openInputStream(&inStream, file) < 0) {
|
||||
DEBUG("mpcGetTime: Failed to open file: %s\n", file);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if(mpc_streaminfo_read(&info, &reader) != ERROR_CODE_OK) {
|
||||
closeInputStream(&inStream);
|
||||
|
@ -312,7 +315,10 @@ static MpdTag * mpcTagDup(char * file) {
|
|||
MpdTag * ret = NULL;
|
||||
float time = mpcGetTime(file);
|
||||
|
||||
if(time < 0) return NULL;
|
||||
if(time < 0) {
|
||||
DEBUG("mpcTagDup: Failed to get Songlength of file: %s\n",file);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
ret = apeDup(file);
|
||||
if(!ret) ret = id3Dup(file);
|
||||
|
|
|
@ -366,7 +366,11 @@ MpdTag * oggTagDup(char * file) {
|
|||
OggVorbis_File vf;
|
||||
|
||||
fp = fopen(file,"r");
|
||||
if(!fp) return NULL;
|
||||
if(!fp)
|
||||
{
|
||||
DEBUG("oggTagDup: Failed to open file: '%s', %s\n", file, strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
if(ov_open(fp,&vf,NULL,0)<0) {
|
||||
fclose(fp);
|
||||
return NULL;
|
||||
|
|
26
src/ls.c
26
src/ls.c
|
@ -30,6 +30,8 @@
|
|||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
extern int errno;
|
||||
|
||||
char * dupAndStripPlaylistSuffix(char * file) {
|
||||
size_t size = strlen(file)-strlen(PLAYLIST_FILE_SUFFIX)-1;
|
||||
|
@ -210,7 +212,14 @@ int isFile(char * utf8file, time_t * mtime) {
|
|||
if(mtime) *mtime = st.st_mtime;
|
||||
return 1;
|
||||
}
|
||||
else return 0;
|
||||
else
|
||||
{
|
||||
DEBUG("isFile: %s is not a regular file\n",utf8file);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
else {
|
||||
DEBUG("isFile: failed to stat: %s: %s\n", utf8file, strerror(errno));
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -257,15 +266,24 @@ InputPlugin * hasMusicSuffix(char * utf8file) {
|
|||
InputPlugin * ret = NULL;
|
||||
|
||||
char * s = getSuffix(utf8file);
|
||||
if(s) ret = getInputPluginFromSuffix(s);
|
||||
if(s) {
|
||||
ret = getInputPluginFromSuffix(s);
|
||||
}
|
||||
else {
|
||||
DEBUG("hasMusicSuffix: The file: %s has no valid suffix\n",utf8file);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
InputPlugin * isMusic(char * utf8file, time_t * mtime) {
|
||||
if(isFile(utf8file,mtime)) {
|
||||
return hasMusicSuffix(utf8file);
|
||||
InputPlugin *plugin = hasMusicSuffix(utf8file);
|
||||
if (plugin == NULL) {
|
||||
DEBUG("isMusic: %s is not a supported music file\n");
|
||||
}
|
||||
return plugin;
|
||||
}
|
||||
|
||||
DEBUG("isMusic: %s is not a valid file\n",utf8file);
|
||||
return NULL;
|
||||
}
|
||||
|
|
|
@ -49,7 +49,10 @@ Song * newNullSong() {
|
|||
Song * newSong(char * url, int type, Directory * parentDir) {
|
||||
Song * song = NULL;
|
||||
|
||||
if(strchr(url, '\n')) return NULL;
|
||||
if(strchr(url, '\n')) {
|
||||
DEBUG("newSong: '%s' is not a valid uri\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
song = newNullSong();
|
||||
|
||||
|
@ -104,6 +107,8 @@ Song * addSongToList(SongList * list, char * url, char * utf8path,
|
|||
case SONG_TYPE_URL:
|
||||
song = newSong(url, songType, parentDirectory);
|
||||
break;
|
||||
default:
|
||||
DEBUG("addSongToList: Trying to add an invalid song type\n");
|
||||
}
|
||||
|
||||
if(song==NULL) return NULL;
|
||||
|
|
Loading…
Reference in New Issue