| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This patch fixes an assertion failure:
Assertion `order < queue->length' failed.
This happens when the state file is saved, when there is no "current"
song: current==-1, and queue_order_to_position(-1) is called.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At the moment mpd doesn't store or restore the current track to/from
its state file when the daemon is stopped/started while in 'stopped'
state. I believe the preferred behaviour would be to store and
restore the current track even when the daemon is in stopped state
when shutting down.
I made a small patch to adapt this behaviour. If you believe this is
not the preferred behaviour, maybe this should be realized as a
configuration option. I'm not sure how to do this, but made a small
comment, where one would have to put the option.
|
|
|
|
|
| |
configure.ac refuses to run with autoconf older than 2.60, don't
bother to test for those versions in autogen.sh.
|
|
|
|
|
| |
Refuse to build with automake 1.9. 1.9 is quite old already, and I'm
too lazy to test with ancient versions.
|
|
|
|
| |
Call av_metadata_get() in a loop.
|
| |
|
| |
|
|
|
|
|
| |
Moved the check from config_get_block_param(). Detect the duplicate
parameter when it's added, not when it's queried.
|
|
|
|
|
|
|
| |
Instead of returning an artificial three-state integer, return a
"success" value and put the boolean value into a "bool" pointer.
That's a little bit more overhead, but an API which looks more
natural.
|
| |
|
|
|
|
|
| |
Initialize the config_entries array at compile time. This is not only
faster, but also smaller.
|
|
|
|
| |
This function is unused.
|
|
|
|
| |
Due to padding, this takes the same amount of memory.
|
|
|
|
|
| |
The top-level "mixer_device" and "mixer_control" options have been
deprecated by MPD 0.15, and it's safe to remove them in MPD 0.16.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
When decoding a local file, the decoder thread tries to run all
matching decoders, until one succeeds. Both file_decode() and
stream_decode() can decode a stream, but MPD closes the stream before
calling file_decode(). Problem is: when this decoder fails, and the
next's stream_decode() method is invoked, the input_stream is still
closed. This patch reopens it.
|
|
|
|
|
|
|
|
|
| |
Several users had problems with binding MPD to "localhost". The cause
was duplicate /etc/hosts entries: the resolver library returns
127.0.0.1 twice, and of course, MPD attempts to bind to "both" of
them. This patch makes failures non-fatal, given that at least one
address was bound successfully. This is a workaround; users should
rather fix their /etc/hosts file.
|
| |
|
|
|
|
| |
Dump each socket address before binding to it.
|
|
|
|
| |
list_OK is returned only after command_list_ok_begin.
|
| |
|
| |
|
|
|
|
|
| |
This warning is useless. I assume the author added it for debugging
purposes.
|
|
|
|
|
|
|
| |
When client_defer_output() aborts the connection to the client,
client_write_output() called client_write_deferred() anyway. This
caused an assertion failure. Fix it by checking for the "expired"
flag again after client_defer_output() returns.
|
|
|
|
|
|
| |
I'm hunting down a bug where client->channel==NULL during I/O
operations. These new assertions help avoid this kind of bug in the
future.
|
| |
|
| |
|
|
|
|
| |
Renamed all remaining CamelCase functions.
|
| |
|
|
|
|
| |
Just a start...
|
|
|
|
| |
Document which commands were introduced after MPD 0.13.
|
|
|
|
|
|
| |
When the decoder is finished, break out of the player loop only after
another player.pipe check. We did check the pipe size a few lines
above, but that check was kind of racy.
|
|
|
|
|
|
|
| |
When a music_chunk only contains a tag but no PCM data, play_chunk()
returns true without freeing the chunk. The caller now assumes that
the chunk is moved into some music_pipe and does not bother to free it
either.
|
|
|
|
|
|
| |
To check for leaked music_chunk objects, free the music buffer on
CLOSE_AUDIO. This invokes an assertion check which ensures that all
chunks have been returned to the buffer.
|
|
|
|
|
|
| |
Instead of returning the local variable "ret" which is always true at
this point, hard-code the "true" return value, because that might be
more readable.
|
|
|
|
|
|
|
|
| |
If a file is removed the library, next time mpd will try to play it it
will result in an error 'ERROR: problems decoding some/file.ogg'.
Nothing is written in log files (verbose mode or not)
[mk: append strerror(errno)]
|
|
|
|
|
| |
Make gcc warn us if we add a new mixer type, and forget to add a new
"case" line.
|
| |
|
|
|
|
| |
Don't use CPP macros when you can use C enums.
|
| |
|
|
|
|
|
|
| |
Commit f78cddb4 introduced a regression: when the playlist reached its
end, MPD did not reset the "current song" pointer anymore after stop.
Add a "current = -1" code line.
|
|
|
|
| |
[mk: moved check out of the AC_ARG_WITH block]
|
|
|
|
|
| |
Append $FAAD_LIBS to $LIBS when detecting libmp4ff. $FAAD_LIBS may
contain an important -L flag.
|
|
|
|
|
| |
The old sticker.xml used elements which are not valid in DocBook. Now
that the file is valid, let's add it to $(DOCBOOK_FILES).
|
| |
|
|
|
|
|
|
|
|
| |
The M4 function AM_PATH_LAME (m4/lame.m4) defined a configure flag
named "--disable-lametest". This is redundant with configure.ac's
--disable-lame-encoder, and specifying both options may break the
build. Since AM_PATH_LAME is only called when the encoder plugin is
enabled, we can safely remove that --disable-lametest option.
|
|
|
|
| |
Check the validity of the audio_format during write operations.
|