Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | db_lock: add C++ helper class ScopeDatabaseLock | Max Kellermann | 2012-09-05 | 2 | -11/+21 |
| | |||||
* | decoder/ogg_codec: return UNKNOWN on error | Max Kellermann | 2012-09-04 | 2 | -1/+2 |
| | |||||
* | decoder/ogg_common: rename to ogg_codec.c | Max Kellermann | 2012-09-04 | 5 | -20/+20 |
| | |||||
* | decoder/ogg_common: pass decoder to _type_detect() | Max Kellermann | 2012-09-04 | 4 | -5/+5 |
| | | | | Allow the function to be cancelled. | ||||
* | decoder/ogg_common: apply coding style | Max Kellermann | 2012-09-04 | 2 | -6/+9 |
| | |||||
* | decoder/_ogg_common: rename to ogg_common.c | Max Kellermann | 2012-09-04 | 7 | -9/+8 |
| | |||||
* | Merge branch 'v0.17.x' | Max Kellermann | 2012-09-04 | 5 | -9/+27 |
|\ | |||||
| * | decoder/_ogg_common: fix buffer size check | Max Kellermann | 2012-09-04 | 1 | -1/+1 |
| | | | | | | | | Fixes potential access to uninitialised memory. | ||||
| * | decoder/_ogg_common: simplify the large "if" expression | Max Kellermann | 2012-09-04 | 1 | -6/+8 |
| | | |||||
| * | mpd.conf(5): Use the correct default value for max_playlist_length | Wieland Hoffmann | 2012-09-03 | 1 | -1/+1 |
| | | |||||
| * | AudioCompress: abort on out-of-memory | Max Kellermann | 2012-09-03 | 1 | -0/+7 |
| | | | | | | | | | | | | This library crashes on out-of-memory (NULL pointer dereference). There's not much useful MPD can do in such a situation, so let's explicitly abort instead, just like GLib does. | ||||
| * | update_walk: fix unsafe readlink() usage | Max Kellermann | 2012-09-03 | 2 | -2/+11 |
| | | |||||
* | | SongFilter: convert to a C++ class | Max Kellermann | 2012-08-29 | 20 | -241/+210 |
| | | |||||
* | | playlist_print: rename to PlaylistPrint.cxx | Max Kellermann | 2012-08-29 | 6 | -11/+13 |
| | | |||||
* | | DatabaseSelection: add method Match() | Max Kellermann | 2012-08-29 | 4 | -3/+34 |
| | | |||||
* | | locate: rename to SongFilter.cxx | Max Kellermann | 2012-08-29 | 9 | -16/+18 |
| | | |||||
* | | queue_print: rename to QueuePrint.cxx | Max Kellermann | 2012-08-29 | 2 | -2/+5 |
| | | |||||
* | | dbUtils.h: eliminate this header | Max Kellermann | 2012-08-29 | 6 | -61/+5 |
| | | |||||
* | | command: move code to *Commands.cxx | Max Kellermann | 2012-08-29 | 14 | -1289/+1854 |
| | | |||||
* | | Stats: stats_print() returns void | Max Kellermann | 2012-08-29 | 3 | -5/+6 |
| | | |||||
* | | decoder/mad, output_thread: add gcc_unlikely() | Max Kellermann | 2012-08-29 | 2 | -3/+3 |
| | | |||||
* | | Makefile.am: distribute DatabaseCommands.hxx | Max Kellermann | 2012-08-29 | 1 | -1/+1 |
| | | |||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-08-25 | 12 | -17/+89 |
|\| | | | | | | | | | Conflicts: src/queue_save.c | ||||
| * | playlist/cue: map "PERFORMER" to "artist" or "album artist" | Max Kellermann | 2012-08-25 | 2 | -1/+13 |
| | | | | | | | | Implements Mantis ticket 0003549. | ||||
| * | player_thread: disable cross-fading in "single" mode | Max Kellermann | 2012-08-25 | 5 | -8/+48 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit reimplements the core of the "single" mode. Instead of doing the detection in the playlist code from the outside, it is moved to the player thread, which gets a new option called "border_pause". It will now pause playback exactly at the beginning of the new song, making the feature more reliable. Now that the player thread knows what will happen, it can suppress cross-fading. Fixes mantis tickets 0003055 and 0003166. | ||||
| * | command: make "single" a bool | Max Kellermann | 2012-08-21 | 1 | -1/+1 |
| | | |||||
| * | queue_save: save song priorities | Max Kellermann | 2012-08-21 | 6 | -7/+27 |
| | | |||||
* | | test/test_queue_priority: fix SIGABRT | Max Kellermann | 2012-08-25 | 2 | -1/+15 |
| | | |||||
* | | Database*: fix nullptr dereference when no database is configured | Max Kellermann | 2012-08-22 | 5 | -8/+48 |
| | | |||||
* | | fd_util: make C++ safe | Max Kellermann | 2012-08-22 | 1 | -0/+8 |
| | | |||||
* | | Makefile.am: swap libdb_plugins.a and -lmpdclient order | Max Kellermann | 2012-08-22 | 1 | -2/+2 |
| | | | | | | | | | | With some linkers, it is important to specify the static library first, and then libmpdclient. Fixes linker failures. | ||||
* | | configure.ac: set VERSION_MINOR to 18 | Max Kellermann | 2012-08-21 | 1 | -1/+1 |
| | | | | | | | | Updates the WIN32 version number for the upcoming 0.18 release. | ||||
* | | ProxyDatabase: implement GetSong() | Max Kellermann | 2012-08-16 | 1 | -3/+26 |
| | | |||||
* | | ProxyDatabase: clear libmpdclient errors in CheckError() | Max Kellermann | 2012-08-16 | 1 | -1/+2 |
| | | | | | | | | Auto-recover from soft errors. | ||||
* | | DatabasePlugin: add method ReturnSong() | Max Kellermann | 2012-08-16 | 13 | -14/+85 |
| | | | | | | | | Allow the plugin to allocate the GetSong() return value. | ||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2012-08-16 | 3 | -2/+9 |
|\| | |||||
| * | playlist_print: fix memory leak | Max Kellermann | 2012-08-16 | 2 | -0/+4 |
| | | |||||
| * | playlist_song: pass const song to _check_load_song() | Max Kellermann | 2012-08-16 | 1 | -1/+1 |
| | | |||||
| * | playlist_song: fix user-after-free bug | Max Kellermann | 2012-08-16 | 2 | -1/+4 |
| | | |||||
* | | ProxyDatabase: pass "detached" objects to visitors | Max Kellermann | 2012-08-15 | 3 | -40/+49 |
| | | | | | | | | Fixes wrong object URIs with duplicate base names. | ||||
* | | queue: duplicate all song objects | Max Kellermann | 2012-08-15 | 3 | -5/+40 |
| | | | | | | | | | | Make sure the queue "owns" all song objects, so nobody else can free them. | ||||
* | | player_control: duplicate the song object | Max Kellermann | 2012-08-15 | 5 | -7/+58 |
| | | | | | | | | | | Make sure the player "owns" the next_song object, so nobody else can free it. | ||||
* | | decoder_control: duplicate the song object | Max Kellermann | 2012-08-15 | 3 | -3/+15 |
| | | | | | | | | | | Make sure the decoder "owns" the song object, so nobody else can free it. | ||||
* | | Song: add function song_dup_detached() | Max Kellermann | 2012-08-15 | 3 | -1/+81 |
| | | | | | | | | | | Initial support for "detached" songs that come from the database, but are private copies. | ||||
* | | Song: add function song_equals() | Max Kellermann | 2012-08-15 | 3 | -1/+37 |
| | | | | | | | | | | decoder_is_current_song() now recognizes different instances of the same physical song. | ||||
* | | Song: move trivial inline functions up | Max Kellermann | 2012-08-15 | 1 | -12/+12 |
| | | |||||
* | | DatabasePlugin: add method GetStats() | Max Kellermann | 2012-08-15 | 7 | -63/+148 |
| | | | | | | | | | | Optimize the ProxyDatabase by invoking "stats" on the peer, instead of visiting all songs. | ||||
* | | DatabasePlugin: add method VisitUniqueTags() | Max Kellermann | 2012-08-15 | 9 | -53/+216 |
| | | | | | | | | | | Optimize the ProxyDatabase by invoking "list" on the peer, instead of visiting all songs. | ||||
* | | ProxyDatabase: obey visitor return values | Max Kellermann | 2012-08-15 | 1 | -8/+11 |
| | | |||||
* | | ProxyDatabasePlugin: add OO wrapper for mpd_entity | Max Kellermann | 2012-08-15 | 1 | -11/+32 |
| | | | | | | | | Let the C++ compiler take care for freeing the objects safely. |