- 22 Nov, 2008 1 commit
-
-
Marc Pavot authored
The client may provide the names of idle events as arguments to the "idle" command to inform MPD that it is only interested in these events.
-
- 21 Nov, 2008 12 commits
-
-
Max Kellermann authored
Refuse to play audio formats which are not supported by MPD.
-
Max Kellermann authored
-
Max Kellermann authored
Pushing buffers with a zero length into the MPD core causes failures; don't let them pass beyond the decoder plugi API.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Removed the superfluous my_usleep() call.
-
Max Kellermann authored
-
Max Kellermann authored
When MPD quits in a non-clean way, the state file isn't written, and on the next start, MPD time warps to the previous clean shutdown. Save the state file every 5 minutes; this will probably be configurable at a later time. Note that we don't set a wakeup timer for that: when there is no MPD traffic, MPD won't wake up to save the state file. This minor bug is tolerated, because usually there is no change in MPD's state when the main thread is idle.
-
Max Kellermann authored
If the caller attempts to seek only a few bytes forward, chances are good that the offset is already in the buffer. In this case, simply fast-forward the buffer.
-
Max Kellermann authored
Added some assertions.
-
Max Kellermann authored
If someone calls seek() with an invalid (negative) offset, the curl implementation of that method returned false, but left this invalid offset in input_stream.offset. Move the calculation to a temporary variable.
-
- 20 Nov, 2008 16 commits
-
-
Monika Brinkert authored
Over the years, a lot of commands have been added to MPD which were documented only in the wiki (http://mpd.wikia.com/wiki/Protocol_Reference). Merge all missing commands from there.
-
Monika Brinkert authored
Correct lots of grammar and spelling errors. Unify some phrases.
-
Monika Brinkert authored
Wrapped keywords in DocBook tags where appropriate.
-
Viliam Mateicka authored
-
Max Kellermann authored
While waiting for the input stream to become ready, ignore all commands except STOP. This fixes seeking errors with (remote) songs which the decoder has already finished.
-
Max Kellermann authored
-
Laszlo Ashin authored
-
Konstantin Sobolev authored
skip_symlinks() expects an UTF-8 encoded file name, but updateDirectory() passed ent->d_name (in file system encoding) to it. Convert it to UTF-8 first.
-
Konstantin Sobolev authored
In map_directory_child_fs(), the result of utf8_to_fs_charset() was never used, because it passed the unmodified "name" parameter to pfx_dir().
-
Konstantin Sobolev authored
g_convert() wants the destination character set first. This was mixed up.
-
Max Kellermann authored
The ov_info() return value may be corrupt when ov_read() did not return a positive value. First check for success, then check ov_info().
-
Max Kellermann authored
HTTP servers respond with "416 Requested Range Not Satisfiable" when a client attempts to seek to the end of the file. Catch this special case in input_curl_seek(). This fixes a glitch in the ogg vorbis decoder plugin.
-
Max Kellermann authored
Since we are using curl_multi_info_read() / CURLMSG_DONE for detecting end-of-response, we can remove all running_handles==0 checks. For some reason, that has never worked correctly.
-
Max Kellermann authored
curl_multi_info_read() is the authoritative source of the "end-of-response" information. Always set c->eof when a CURLMSG_DONE message is received, and check the result (success/failure) after that.
-
Max Kellermann authored
Generate and install protocol.html if xmlto is available.
-
Max Kellermann authored
The attribute value must be lower case: <arg rep="repeat">
-
- 19 Nov, 2008 1 commit
-
-
Max Kellermann authored
The goal is to have one structured document which is the authoritative protocol specification. The documentation which currently resides in the wiki will be merged.
-
- 18 Nov, 2008 5 commits
-
-
Laszlo Ashin authored
Somehow we lost 600e1322 after renaming some variables in ed6f6046.
-
Max Kellermann authored
When a global audio format is configured (setting "audio_output_format"), decoder_data() overwrote the "length" parameter with the size of the output buffer (result of pcm_convert_size()). Declare a separate variable for the output buffer length.
-
Viliam Mateicka authored
The ffmpeg library provides some of the song metadata in the AVFormatContext struct. Pass it from there to MPD.
-
Viliam Mateicka authored
[mk: by definition, tag_new() cannot fail - removed check]
-
Max Kellermann authored
The chunk index passed to successor() must be valid, i.e. it must be smaller than num_chunks.
-
- 16 Nov, 2008 3 commits
-
-
Max Kellermann authored
Define the special value "-1" as "unknown size". Previously, there was no indicator for streams with unknown size, which might confuse some decoders.
-
Max Kellermann authored
With whence==AVSEEK_SIZE, the seek function should return the file size, not the current offset. Check the return value of input_stream_seek().
-
Max Kellermann authored
neaacdec.h declares all arguments as "unsigned long", but internally expects uint32_t pointers. This triggers gcc warnings on 64 bit architectures. To avoid that, make configure.ac detect whether we're using Debian's corrected headers or the original libfaad headers. In any case, pass a pointer to an uint32_t, conditionally casted to "unsigned long*".
-
- 15 Nov, 2008 2 commits
-
-
Max Kellermann authored
When the caller passes length==0, decoder_read() entered an endless loop. Check that condition before entering the "while" loop.
-
Laszlo Ashin authored
-