aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ProxyDatabase: implement GetSong()Max Kellermann2012-08-161-3/+26
|
* ProxyDatabase: clear libmpdclient errors in CheckError()Max Kellermann2012-08-161-1/+2
| | | | Auto-recover from soft errors.
* DatabasePlugin: add method ReturnSong()Max Kellermann2012-08-1613-14/+85
| | | | Allow the plugin to allocate the GetSong() return value.
* Merge branch 'v0.17.x'Max Kellermann2012-08-162-2/+7
|\
| * playlist_print: fix memory leakMax Kellermann2012-08-161-0/+3
| |
| * playlist_song: pass const song to _check_load_song()Max Kellermann2012-08-161-1/+1
| |
| * playlist_song: fix user-after-free bugMax Kellermann2012-08-161-1/+3
| |
* | ProxyDatabase: pass "detached" objects to visitorsMax Kellermann2012-08-153-40/+49
| | | | | | | | Fixes wrong object URIs with duplicate base names.
* | queue: duplicate all song objectsMax Kellermann2012-08-151-5/+6
| | | | | | | | | | Make sure the queue "owns" all song objects, so nobody else can free them.
* | player_control: duplicate the song objectMax Kellermann2012-08-155-7/+58
| | | | | | | | | | Make sure the player "owns" the next_song object, so nobody else can free it.
* | decoder_control: duplicate the song objectMax Kellermann2012-08-153-3/+15
| | | | | | | | | | Make sure the decoder "owns" the song object, so nobody else can free it.
* | Song: add function song_dup_detached()Max Kellermann2012-08-153-1/+81
| | | | | | | | | | Initial support for "detached" songs that come from the database, but are private copies.
* | Song: add function song_equals()Max Kellermann2012-08-153-1/+37
| | | | | | | | | | decoder_is_current_song() now recognizes different instances of the same physical song.
* | Song: move trivial inline functions upMax Kellermann2012-08-151-12/+12
| |
* | DatabasePlugin: add method GetStats()Max Kellermann2012-08-157-63/+148
| | | | | | | | | | Optimize the ProxyDatabase by invoking "stats" on the peer, instead of visiting all songs.
* | DatabasePlugin: add method VisitUniqueTags()Max Kellermann2012-08-158-53/+215
| | | | | | | | | | Optimize the ProxyDatabase by invoking "list" on the peer, instead of visiting all songs.
* | ProxyDatabase: obey visitor return valuesMax Kellermann2012-08-151-8/+11
| |
* | ProxyDatabasePlugin: add OO wrapper for mpd_entityMax Kellermann2012-08-151-11/+32
| | | | | | | | Let the C++ compiler take care for freeing the objects safely.
* | ProxyDatabasePlugin: move tag table to the global name spaceMax Kellermann2012-08-151-25/+25
| |
* | db_visitor: delete obsolete headerMax Kellermann2012-08-155-60/+0
| |
* | DatabasePrint: remove bogus "nonnull" attributesMax Kellermann2012-08-151-2/+2
| |
* | Merge branch 'v0.17.x'Max Kellermann2012-08-155-7/+11
|\| | | | | | | | | Conflicts: src/player_thread.c
| * player_thread: add local variable "start_ms"Max Kellermann2012-08-151-1/+3
| | | | | | | | Just in case "song" becomes invalid at some point.
| * playlist: fix unprotected player_control accessMax Kellermann2012-08-151-1/+5
| |
| * filter/volume: include cleanupMax Kellermann2012-08-152-2/+0
| |
| * mapper: fix potential crash in file permission checkMax Kellermann2012-08-151-3/+3
| |
* | decoder_control: add function _is_current_song()Max Kellermann2012-08-153-15/+42
| | | | | | | | Replaces _current_song().
* | decoder_control: add assertion to dc_get_error()Max Kellermann2012-08-151-0/+1
| |
* | decoder_thread: create GError for mapper failureMax Kellermann2012-08-151-0/+3
| | | | | | | | Fixes crash.
* | Merge branch 'v0.17.x'Max Kellermann2012-08-151-53/+28
|\|
| * decoder/fluidsynth: add "sample_rate" settingMax Kellermann2012-08-151-6/+14
| |
| * decoder/fluidsynth: add "soundfont" settingMax Kellermann2012-08-151-6/+7
| | | | | | | | Replaces the old global "soundfont" which never worked.
| * configure.ac: auto-detect libfluidsynthMax Kellermann2012-08-151-9/+0
| | | | | | | | | | Now that the libfluidsynth API was sanitized, we can enable the plugin automatically if libfluidsynth is installed.
| * decoder/fluidsynth: stop playback at end of fileMax Kellermann2012-08-151-5/+4
| | | | | | | | Use libfluidsynth's new function fluid_player_get_status().
| * decoder/fluidsynth: don't duplicate pathMax Kellermann2012-08-151-6/+1
| | | | | | | | The libfluidsynth now accepts const strings.
| * decoder/fluidsynth: check if file is really a MIDIMax Kellermann2012-08-151-4/+1
| | | | | | | | Use fluid_is_midifile() to verify the file format.
| * decoder/fluidsynth: remove throttle (requires libfluidsynth 1.1)Max Kellermann2012-08-151-17/+1
| | | | | | | | | | The libfluidsynth API is now sane, and does not require real-time decoding.
* | Merge branch 'v0.17.x'Max Kellermann2012-08-1410-126/+261
|\|
| * log: store duplicated path stringMax Kellermann2012-08-143-31/+32
| | | | | | | | | | | | | | Don't free the string right after calling log_init_file(). Add a new function log_deinit() that frees the string on shutdown. This fixes cycling the log file after SIGHUP (Mantis ticket 0003524).
| * output/jack: implement method delay()Max Kellermann2012-08-141-4/+11
| | | | | | | | Eliminate the g_usleep() call.
| * output/pulse: implement method delay()Max Kellermann2012-08-141-7/+21
| | | | | | | | Reduce command latency while paused.
| * output/pulse: simplify _wait_stream()Max Kellermann2012-08-141-55/+16
| | | | | | | | One large loop and only one pa_stream_get_state() call.
| * output/httpd: move delay from _pause() to _delay()Max Kellermann2012-08-141-1/+5
| |
| * output/httpd: fix throttling bug after resuming playbackMax Kellermann2012-08-141-0/+8
| | | | | | | | | | | | Reset the timer when paused and no client is connected. This fixes Mantis ticket 0003527.
| * output/httpd: move code to _has_clients()Max Kellermann2012-08-141-11/+27
| |
| * timer: use monotonic clock if availableMax Kellermann2012-08-143-13/+140
| |
| * input/ffmpeg: remove fallback AV_VERSION_INT definitionMax Kellermann2012-08-141-4/+1
| | | | | | | | This is part of libavutil.
* | Merge branch 'v0.17.x'Max Kellermann2012-08-148-76/+103
|\| | | | | | | | | Conflicts: src/mapper.h
| * mapper: fix non-UTF8 music directory nameMax Kellermann2012-08-144-37/+73
| | | | | | | | | | | | Duplicate the music_dir variable: one encoded in UTF-8, and another one using the configured filesystem character set. This fixes an ancient MPD bug.
| * playlist_song: use map_to_relative_path()Max Kellermann2012-08-141-4/+4
| |