don't stop on play command!
git-svn-id: https://svn.musicpd.org/mpd/trunk@1313 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
a29e38bef5
commit
15c61f6eb0
@ -155,7 +155,7 @@ int handlePlay(FILE * fp, unsigned int * permission, int argArrayLength,
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
return playPlaylist(fp,song,1);
|
||||
return playPlaylist(fp,song,0);
|
||||
}
|
||||
|
||||
int handleStop(FILE * fp, unsigned int * permission, int argArrayLength,
|
||||
|
@ -256,7 +256,7 @@ int decodeSeek(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
|
||||
void decodeStart(PlayerControl * pc, OutputBuffer * cb, DecoderControl * dc) {
|
||||
int ret;
|
||||
InputStream inStream;
|
||||
InputPlugin * plugin;
|
||||
InputPlugin * plugin = NULL;
|
||||
char * path;
|
||||
|
||||
if(isRemoteUrl(pc->utf8url)) {
|
||||
@ -311,7 +311,9 @@ void decodeStart(PlayerControl * pc, OutputBuffer * cb, DecoderControl * dc) {
|
||||
|
||||
ret = DECODE_ERROR_UNKTYPE;
|
||||
if(isRemoteUrl(pc->utf8url)) {
|
||||
plugin = getInputPluginFromMimeType(inStream.mime);
|
||||
if(inStream.mime) {
|
||||
plugin = getInputPluginFromMimeType(inStream.mime);
|
||||
}
|
||||
if(plugin == NULL) {
|
||||
plugin = getInputPluginFromSuffix(
|
||||
getSuffix(dc->utf8url));
|
||||
|
@ -451,7 +451,6 @@ void mp3DecodeDataFinalize(mp3DecodeData * data) {
|
||||
mad_frame_finish(&data->frame);
|
||||
mad_stream_finish(&data->stream);
|
||||
|
||||
closeInputStream(data->inStream);
|
||||
if(data->frameOffset) free(data->frameOffset);
|
||||
if(data->times) free(data->times);
|
||||
}
|
||||
@ -468,6 +467,7 @@ int getMp3TotalTime(char * file) {
|
||||
if(decodeFirstFrame(&data, NULL, NULL)<0) ret = -1;
|
||||
else ret = data.totalTime+0.5;
|
||||
mp3DecodeDataFinalize(&data);
|
||||
closeInputStream(&inStream);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@ -626,7 +626,7 @@ int mp3_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream) {
|
||||
MpdTag * tag;
|
||||
|
||||
if(openMp3FromInputStream(inStream, &data, dc, &tag) < 0) {
|
||||
closeInputStream(inStream);
|
||||
closeInputStream(inStream);
|
||||
if(!dc->stop) {
|
||||
ERROR("Input does not appear to be a mp3 bit stream.\n");
|
||||
return -1;
|
||||
@ -662,6 +662,7 @@ int mp3_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream) {
|
||||
|
||||
flushOutputBuffer(cb);
|
||||
mp3DecodeDataFinalize(&data);
|
||||
closeInputStream(inStream);
|
||||
|
||||
/*if(dc->seek) {
|
||||
dc->seekError = 1;
|
||||
|
@ -825,16 +825,21 @@ void playPlaylistIfPlayerStopped() {
|
||||
if(error==PLAYER_ERROR_NOERROR) playlist_errorCount = 0;
|
||||
else playlist_errorCount++;
|
||||
|
||||
printf("HERE 1\n");
|
||||
if(playlist_state==PLAYLIST_STATE_PLAY && (
|
||||
(playlist_stopOnError &&
|
||||
error!=PLAYER_ERROR_NOERROR) ||
|
||||
error==PLAYER_ERROR_AUDIO ||
|
||||
error==PLAYER_ERROR_SYSTEM ||
|
||||
playlist_errorCount>=playlist.length)) {
|
||||
printf("HERE 1-1\n");
|
||||
printf("playlist_stopOnError: %i\n", playlist_stopOnError);
|
||||
stopPlaylist(stderr);
|
||||
printf("HERE 1-2\n");
|
||||
}
|
||||
else if(playlist_noGoToNext) currentSongInPlaylist(stderr);
|
||||
else nextSongInPlaylist(stderr);
|
||||
printf("HERE 2\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user