Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | stored_playlist: don't close NULL file on error | Max Kellermann | 2009-04-24 | 1 | -5/+1 |
| | | | | | spl_append_song() can crash when fopen() fails, because it attempts to close the invalid file handle (NULL) in the error handler. | ||||
* | alsa_output: don't use atexit() to clean up the ALSA library | Max Kellermann | 2009-04-21 | 1 | -7/+3 |
| | | | | | Call snd_config_update_free_global() manually in our finish() method, don't use atexit(). | ||||
* | alsa_mixer: call snd_config_update_free_global() in finish() | Max Kellermann | 2009-04-21 | 1 | -1/+3 |
| | | | | | | | | snd_config_update_free_global() frees cached ALSA configuration. This keeps valgrind a little bit more quiet. This patch moves the call from the open() method into the finish() method, which seems more natural: it allows the use of the config cache, and improves the cleanup phase. | ||||
* | output_control: close mixer on pause | Max Kellermann | 2009-04-21 | 1 | -0/+6 |
| | | | | | For non-global mixers (only "pulse" currently), close the mixer when MPD playback is paused. | ||||
* | client: free the fifo buffer | Max Kellermann | 2009-04-17 | 1 | -0/+2 |
| | | | | | This patch fixes a memory leak: the fifo_buffer object was not freed when the client connection was closed. | ||||
* | icy_server: don't export icy_server_metadata_string() | Max Kellermann | 2009-04-13 | 2 | -4/+1 |
| | | | | | icy_server_metadata_string() is only called by icy_server_metadata_page(). | ||||
* | httpd: use C99 "bool" instead of GLib's gboolean | Max Kellermann | 2009-04-13 | 1 | -7/+7 |
| | | | | Plain "bool" consumes only one byte instead of four. | ||||
* | httpd: use g_ascii_strncasecmp() to compare headers | Max Kellermann | 2009-04-13 | 1 | -1/+1 |
| | | | | In HTTP, header names are case insensitive. | ||||
* | Implemented basic icy support for the httpd output | Hagen Schink | 2009-04-13 | 6 | -12/+409 |
| | | | | | | [mk: folded with patch "Put icy related functions in extra source files"; moved icy_server.c from HAVE_CURL to ENABLE_HTTPD_OUTPUT; removed an unused variable] | ||||
* | decoder_api: submit the song tag to the music pipe | Max Kellermann | 2009-04-13 | 3 | -6/+24 |
| | | | | | | When a new song starts playing, send its tag (song->tag) to the music pipe. This allows output plugins to render tags for all songs, not only those with embedded tags understood by the decoder plugin. | ||||
* | log: removed "unused" attribute from log_level parameter | Max Kellermann | 2009-04-10 | 1 | -1/+1 |
| | |||||
* | decoder: prefer wildmidi over fluidsynth | Avuton Olrich | 2009-04-06 | 1 | -4/+4 |
| | |||||
* | vorbis: move #define out of function to top of sources | Avuton Olrich | 2009-04-02 | 1 | -1/+1 |
| | |||||
* | decoder: Rename all main decoder plugins functions to *decoder_plugin. | Avuton Olrich | 2009-04-02 | 5 | -12/+12 |
| | |||||
* | configure.ac: renamed --enable-mod to --enable-mikmod | Max Kellermann | 2009-04-01 | 1 | -1/+1 |
| | |||||
* | httpd: don't pass uninitialized page to httpd_client_check_queue() | Max Kellermann | 2009-04-01 | 1 | -1/+1 |
| | | | | | The httpd_client_check_queue() callback function does not use its "user_data" argument. Don't pass any, and fix the gcc warning. | ||||
* | configure.ac: renamed --enable-oggvorbis to --enable-vorbis | Max Kellermann | 2009-04-01 | 1 | -1/+1 |
| | |||||
* | command: added command "sticker find" | Max Kellermann | 2009-04-01 | 1 | -0/+41 |
| | | | | | This command allows clients to search for stickers with a specified name. | ||||
* | Move db_get_song into sub-handlers. (FReq 2112) | Eric Wollesen | 2009-04-01 | 1 | -9/+27 |
| | | | | | | | | db_get_song was being called once for all sub-handlers, but with the addition of the find command, we don't have a URI coming in, so doing db_get_song once won't work anymore. [mk: fixed initialization order] | ||||
* | song_sticker: added song_sticker_find() | Max Kellermann | 2009-04-01 | 2 | -0/+76 |
| | | | | This is a wrapper for sticker_find(), which looks up the song object. | ||||
* | sticker: added sticker_find() | Max Kellermann | 2009-04-01 | 2 | -0/+85 |
| | | | | sticker_find() finds stickers with the specified name. | ||||
* | directory: added directory_lookup_song() | Max Kellermann | 2009-04-01 | 3 | -25/+41 |
| | | | | Moved code from db_get_song(). | ||||
* | directory: renamed directory_get_directory() | Max Kellermann | 2009-04-01 | 3 | -6/+13 |
| | | | | | Renamed directory_get_directory() to directory_lookup_directory(). Added API documentation. | ||||
* | sticker_print: new library for sending stickers to a client | Max Kellermann | 2009-04-01 | 3 | -10/+85 |
| | |||||
* | sticker: pass const sticker to sticker_foreach() | Max Kellermann | 2009-04-01 | 2 | -4/+4 |
| | |||||
* | client, event_pipe: explicitly ignore the write() result | Max Kellermann | 2009-04-01 | 2 | -2/+2 |
| | | | | | | | | | | On both locations, the result of write() can be ignored safely. In event_pipe_emit_fast(), that can only be "EAGAIN", which means that the pipe buffer is full - no further notification required. In client_init(), that would be a fatal connection error, which would be caught by the next event. This patch fixes gcc warnings. | ||||
* | socket_util: fixed format warning | Max Kellermann | 2009-04-01 | 1 | -1/+1 |
| | | | | | g_set_error() is a printf-like function, and expects a format string. Using the return value of gai_strerror() is unsafe. | ||||
* | flac: fixed "unused variable" warning without libcue | Max Kellermann | 2009-04-01 | 1 | -2/+2 |
| | | | | Move the declaration of "i" into the "for" loop. | ||||
* | Tag subtracks according to "cuesheet" vorbis comment value | Jochen Keil | 2009-03-31 | 1 | -4/+32 |
| | | | | | | | Cuesheets are often saved as vorbis comment flac files (CUESHEET=.. case doesn't matter). We can parse this now and use the information to tag the subtracks (from the embedded cuesheets). | ||||
* | track length is computed correctly now | Jochen Keil | 2009-03-31 | 1 | -2/+1 |
| | |||||
* | free previously allocated flac metadata object | Jochen Keil | 2009-03-31 | 1 | -0/+1 |
| | |||||
* | remove old commented code | Jochen Keil | 2009-03-31 | 1 | -8/+0 |
| | |||||
* | Build tags from information in cue sheets | Jochen Keil | 2009-03-31 | 2 | -0/+296 |
| | | | | | | | | With these methods a tag struct can be created from the cdtext information in a cue sheet. The methods depend on a cue parsing library. Reading from strings (char*) as well as from a file (FILE*) is supported. | ||||
* | do not consider single mode with "next" command | Romain Bignon | 2009-03-31 | 1 | -0/+7 |
| | | | | | | This is a little ugly, but as nextSongInPlaylist is both called when queued is update (in case playlist ended) and for user "next" command, there isn't any other (simple) solution | ||||
* | client: group static function declarations together. | Avuton Olrich | 2009-03-30 | 1 | -6/+5 |
| | |||||
* | queue_print: queue_print_song_info() is not necessry for export. | Avuton Olrich | 2009-03-30 | 2 | -13/+9 |
| | |||||
* | queue: queue_generate_id() is not necessary for export. | Avuton Olrich | 2009-03-30 | 2 | -7/+4 |
| | |||||
* | player_control: remove unused function playerCurrentDecodeSong(). | Avuton Olrich | 2009-03-30 | 2 | -10/+0 |
| | |||||
* | conf: config_param_free() not necessary for export. | Avuton Olrich | 2009-03-30 | 2 | -3/+1 |
| | |||||
* | command: command_error() is not necessary for export. | Avuton Olrich | 2009-03-30 | 2 | -4/+1 |
| | |||||
* | client: client_write() does not necessary for export. | Avuton Olrich | 2009-03-30 | 2 | -6/+4 |
| | |||||
* | implemented the 'consume' mode | Romain Bignon | 2009-03-30 | 7 | -15/+82 |
| | | | | Consume mode removes each song played | ||||
* | Bugfix for time/offset in flac plugin | Jochen Keil | 2009-03-28 | 1 | -3/+3 |
| | | | | | | Previous cast to float didn't have any effect because one value is uint and the other is a floating type but the number itself is even.. This caused some tracks to end before they were really at an end. | ||||
* | mixer: assert that the new volume value is valid | Max Kellermann | 2009-03-27 | 3 | -7/+2 |
| | | | | | Added an assertion in mixer_set_volume(). Removed the range checks from the ALSA and OSS plugins. | ||||
* | mpcdec: changed plugin name to "mpcdec" | Max Kellermann | 2009-03-27 | 1 | -3/+3 |
| | | | | The "mpcdec" plugin is based on the libmpcdec library. | ||||
* | mpcdec: support the new libmpcdec SV8 API | Max Kellermann | 2009-03-27 | 1 | -14/+90 |
| | |||||
* | mpcdec: no CamelCase | Max Kellermann | 2009-03-27 | 1 | -57/+65 |
| | | | | Renamed variables and functions. | ||||
* | tag_pool: use memcmp() instead of strcmp() for non-terminated string | Max Kellermann | 2009-03-27 | 1 | -1/+3 |
| | | | | | | The strings passed to tag_pool_get_item() are not null-terminated, and the caller passes the string length. Don't assume it is null-terminated anyway by using strcmp(). | ||||
* | tag_pool: use size_t for string length | Max Kellermann | 2009-03-27 | 2 | -4/+4 |
| | |||||
* | event_pipe can only be non-blocking if !WIN32 | Sean McNamara | 2009-03-27 | 1 | -0/+2 |
| |