Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | playlist_print: use playlist_open_any() | Max Kellermann | 2010-06-25 | 1 | -2/+2 | |
| | | | | | | | | | | Allow printing remote playlists with the commands "listplaylist" and "listplaylistinfo". | |||||
* | | playlist_queue: use playlist_open_any() | Max Kellermann | 2010-06-25 | 1 | -48/+2 | |
| | | ||||||
* | | playlist_any: new library to simplify opening playlist files | Max Kellermann | 2010-06-25 | 3 | -0/+110 | |
| | | | | | | | | | | | | The new function playlist_open_any() combines playlist_mapper_open(), playlist_list_open_uri() and playlist_list_open_stream(), providing an easy API for all of them. | |||||
* | | playlist_list: probe plugin without MIME attributes | Max Kellermann | 2010-06-25 | 1 | -3/+23 | |
| | | | | | | | | | | If the MIME type of a stream contains a semicolon, remove it and the text after it to probe for a playlist plugin. | |||||
* | | playlist_queue: simplify error handler | Max Kellermann | 2010-06-25 | 1 | -9/+8 | |
| | | | | | | | | Return early on error, save one level of indent. | |||||
* | | playlist_list: moved input_stream.ready loop to calling function | Max Kellermann | 2010-06-25 | 1 | -22/+11 | |
| | | | | | | | | | | | | Merged both loops into playlist_list_open_stream(). This is needed because playlist_list_open_stream() needs to know the MIME type, which is only known after the stream has become "ready". | |||||
* | | uri: really count dots in verify_uri_segment() | Max Kellermann | 2010-06-25 | 1 | -1/+4 | |
| | | | | | | | | | | | | This buggy implementation failed to allow "..." sequences, because the dot count was always zero. The usefulness of allowing "..." (or more dots) is debatable, but since it's a valid file name, we allow it. | |||||
* | | update .gitignore | Max Kellermann | 2010-06-25 | 1 | -0/+2 | |
| | | ||||||
* | | playlist/cue: last track ends at end of file | Max Kellermann | 2010-06-25 | 1 | -3/+2 | |
| | | | | | | | | | | | | | | | | libcue's track_get_length() returns 0 for the last track, because that information is not available in the CUE sheet. This makes MPD quit playing the last track immediately. If we set "song.end_ms=0", MPD will play the track until the end of the song file, which is what we want. | |||||
* | | test/dump_playlist: print open-ended range | Max Kellermann | 2010-06-25 | 1 | -1/+5 | |
| | | ||||||
* | | song_print: simplified start_ms/end_ms check | Max Kellermann | 2010-06-25 | 1 | -12/+10 | |
| | | ||||||
* | | playlist_list: wait for input stream to become ready | Aaron Griffith | 2010-06-25 | 1 | -0/+22 | |
| | | | | | | | | Fixes an assertion failure in the input_stream_seek() call. | |||||
* | | Modify version string to post-release version 0.16~git | Avuton Olrich | 2010-06-22 | 1 | -1/+1 | |
| | | ||||||
* | | mpd version 0.16~alpha1release-0.16_alpha1 | Avuton Olrich | 2010-06-22 | 1 | -1/+1 | |
| | | ||||||
* | | Makefile.am: append LIBWRAP_LDFLAGS to OUTPUT_LIBS | Max Kellermann | 2010-06-21 | 1 | -0/+1 | |
| | | | | | | | | This fixes test/run_output. | |||||
* | | autogen.sh: don't use "+" in sed expression | Andreas Vögele | 2010-06-19 | 1 | -1/+1 | |
| | | | | | | | | | | | | Replaces the expression [0-9]\+ by [0-9][0-9]* in autogen.sh. The special character \+ is not POSIX compatible and thus not supported by all sed implementations. | |||||
* | | Make get_remote_uid() work on BSD | Andreas Vögele | 2010-06-19 | 2 | -1/+8 | |
| | | | | | | | | | | | | I've attached a patch that will make file URIs work on operating systems that provide the getpeereid() function call to check the user ID of the peer connected to a UNIX domain socket. | |||||
* | | client: increase send_buf from 4kB to 16kB | Andrzej Rybczak | 2010-06-19 | 1 | -1/+1 | |
| | | | | | | | | | | | | this greatly improves performance of commands that return a lot of data, e.g. search results or recursive content of a directory, while being connected to local mpd via tcp/ip socket. | |||||
* | | playlist: check "queued" before calling playlist_update_queued_song() | Max Kellermann | 2010-06-19 | 1 | -1/+1 | |
| | | | | | | | | Workaround for an assertion failure. | |||||
* | | playlist: protect acess to player state in playlist_sync() | Max Kellermann | 2010-06-19 | 1 | -2/+7 | |
| | | ||||||
* | | playlist: move checks out of playlist_sync_with_queue() | Max Kellermann | 2010-06-19 | 1 | -20/+21 | |
| | | | | | | | | | | Rename the function to playlist_song_started(), which gets only called if the song has actually started. | |||||
* | | player_control: hold mutex in pc_play(), pc_pause() | Max Kellermann | 2010-06-19 | 1 | -9/+42 | |
| | | | | | | | | Race condition fix. | |||||
* | | Makefile.am: distribute refcount.h | Avuton Olrich | 2010-06-13 | 1 | -0/+1 | |
| | | ||||||
* | | Makefile.am: distribute open.h | Max Kellermann | 2010-06-08 | 1 | -0/+1 | |
| | | ||||||
* | | filter/route: fixed unsigned/signed comparison | Max Kellermann | 2010-06-06 | 1 | -1/+1 | |
| | | | | | | | | Fixes a clang warning. | |||||
* | | output/httpd: add libwrap support | Tim Phipps | 2010-06-06 | 1 | -0/+28 | |
| | | | | | | | | | | | | libwrap support is in MPD but only for the control port. This patch adds support for the http port. The code is copied from src/client_new.c | |||||
* | | directory_print: print a list of playlist files in "lsinfo" | Max Kellermann | 2010-06-01 | 1 | -0/+61 | |
| | | | | | | | | Print those files which can be handled by a playlist plugin. | |||||
* | | playlist_list: export playlist_suffix_supported() | Max Kellermann | 2010-06-01 | 2 | -1/+10 | |
| | | ||||||
* | | playlist_list: playlist_list_open_path() returns input_stream | Max Kellermann | 2010-06-01 | 6 | -16/+39 | |
| | | | | | | | | | | | | | | Memory leak fix. The input_stream object passed to playlist_list_open_stream_suffix() must be closed by the caller - this however never happens in playlist_list_open_path(), because it does not return it to the caller. | |||||
* | | playlist_list: move fallback g_uri_parse_scheme() to glib_compat.h | Max Kellermann | 2010-06-01 | 2 | -14/+16 | |
| | | ||||||
* | | playlist: emit IDLE_OPTIONS when resetting single mode | Max Kellermann | 2010-06-01 | 1 | -0/+2 | |
| | | ||||||
* | | single mode: at the end of the song, pause on the next song instead of stop | Romain Bignon | 2010-05-31 | 3 | -19/+13 | |
| | | ||||||
* | | directory_print: return void | Max Kellermann | 2010-05-31 | 2 | -7/+3 | |
| | | | | | | | | There is no useful return value here. | |||||
* | | fix crash when decoder is NULL | Romain Bignon | 2010-05-31 | 1 | -2/+2 | |
| | | ||||||
* | | decoder/mikmod: fix memory leak | Max Kellermann | 2010-05-31 | 2 | -2/+5 | |
| | | | | | | | | | | The return value of Player_LoadTitle() is allocated with malloc(), and must be freed by the caller. | |||||
* | | decoder/mikmod: duplicate the path only once | Max Kellermann | 2010-05-31 | 1 | -2/+2 | |
| | | ||||||
* | | decoder/mikdmod: moved local variable declarations in tag_dup() | Max Kellermann | 2010-05-31 | 1 | -12/+8 | |
| | | ||||||
* | | decoder/wildmidi: moved local variable declarations in tag_dup() | Max Kellermann | 2010-05-31 | 1 | -7/+3 | |
| | | ||||||
* | | decoder/gme: replace macro GME_BUF_SIZE | Max Kellermann | 2010-05-31 | 1 | -4/+5 | |
| | | | | | | | | | | Added macros with better names: GME_BUFFER_FRAMES, GME_BUFFER_SAMPLES (the former only used to calculate the latter). | |||||
* | | decoder/gme: added constants for sample rate and channels | Max Kellermann | 2010-05-31 | 1 | -6/+12 | |
| | | | | | | | | Move into enums. | |||||
* | | decoder/gme: pass the whole buffer to decoder_data() | Max Kellermann | 2010-05-31 | 1 | -2/+2 | |
| | | | | | | | | | | | | | | | | Pass sizeof(buf) to decoder_data(), not the number of samples (which is half the size). At the same time, pass GME_BUF_SIZE to gme_play() - libgme really wants to get the number of samples, not the number of stereo frames. Previously, this plugin had been using only the first half of the buffer. | |||||
* | | decoder/gme: allocate tag later, fixes memory leak | Max Kellermann | 2010-05-31 | 1 | -1/+1 | |
| | | | | | | | | Allocate the "tag" object after the file has been opened successfully. | |||||
* | | decoder/mp4ff: rename and move local variable | Max Kellermann | 2010-05-31 | 1 | -6/+5 | |
| | | | | | | | | | | Allocate the "tag" object after the file has been checked. That removes one tag_free() call in an error handler. | |||||
* | | decoder/mp4ff: merge code into mp4ff_input_stream_open() | Max Kellermann | 2010-05-31 | 1 | -17/+17 | |
| | | ||||||
* | | decoder/mp4ff: move mp4ff_callback_t into mp4ff_input_stream | Max Kellermann | 2010-05-31 | 1 | -12/+15 | |
| | | | | | | | | Allocate only one item on the stack. | |||||
* | | decoder/mp4ff: rename mp4_context to mp4ff_input_stream | Max Kellermann | 2010-05-31 | 1 | -9/+9 | |
| | | ||||||
* | | decoder/mp4ff: remove duplicate entries in the tag name table | Max Kellermann | 2010-05-31 | 1 | -9/+5 | |
| | | | | | | | | Reuse the function tag_name_parse_i(). | |||||
* | | decoder/mp4ff: moved code to mp4ff_tag_name_parse() | Max Kellermann | 2010-05-31 | 1 | -1/+7 | |
| | | ||||||
* | | tag_ape: remove duplicate entries in the tag name table | Max Kellermann | 2010-05-31 | 1 | -13/+5 | |
| | | | | | | | | Reuse the function tag_name_parse_i(). | |||||
* | | tag_ape: move code to tag_ape_name_parse() | Max Kellermann | 2010-05-31 | 1 | -1/+7 | |
| | |