Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | tag/{riff,aiff}: convert to C++ | Max Kellermann | 2013-09-28 | 5 | -43/+26 |
| | |||||
* | playlist/lastfm: remove defunct Last.fm support | Max Kellermann | 2013-09-28 | 3 | -310/+0 |
| | | | | | | This plugin has been defunct ever since Last.fm changed their protocol. Since there is no volunteer willing to fix the plugin, I'm removing it now. | ||||
* | DecoderControl: use GLib forward declarations | Max Kellermann | 2013-09-27 | 9 | -6/+16 |
| | |||||
* | PlayerThread: convert struct player to a class | Max Kellermann | 2013-09-27 | 1 | -14/+17 |
| | |||||
* | PlayerThread: use strictly typed enum | Max Kellermann | 2013-09-27 | 1 | -14/+14 |
| | |||||
* | PlayerControl: use strictly typed enums | Max Kellermann | 2013-09-27 | 8 | -128/+129 |
| | |||||
* | DecoderControl: convert "enum decoder_state" to strictly-typed enum | Max Kellermann | 2013-09-27 | 4 | -47/+53 |
| | |||||
* | DecoderCommand: convert to strictly-typed enum | Max Kellermann | 2013-09-27 | 30 | -205/+201 |
| | |||||
* | OutputAll: add pure/const attributes | Max Kellermann | 2013-09-27 | 2 | -0/+6 |
| | |||||
* | PlayerControl: convert functions to methods | Max Kellermann | 2013-09-27 | 2 | -63/+73 |
| | |||||
* | DecoderControl: convert functions to methods | Max Kellermann | 2013-09-27 | 2 | -40/+52 |
| | |||||
* | PlayerThread: move code to player_control::CommandFinished() | Max Kellermann | 2013-09-27 | 2 | -21/+26 |
| | |||||
* | PlayerThread: use nullptr instead of NULL | Max Kellermann | 2013-09-27 | 1 | -37/+37 |
| | |||||
* | PlayerThread: unlock/lock in player_task() | Max Kellermann | 2013-09-26 | 1 | -8/+3 |
| | |||||
* | PlayerThread: move code into the player class | Max Kellermann | 2013-09-26 | 1 | -269/+277 |
| | |||||
* | PlayerThread: use player references | Max Kellermann | 2013-09-26 | 1 | -116/+115 |
| | |||||
* | PlayerThread: use {decoder,player}_control references | Max Kellermann | 2013-09-26 | 3 | -216/+216 |
| | |||||
* | PlayerThread: allocate decoder_control on the stack | Max Kellermann | 2013-09-26 | 1 | -5/+5 |
| | |||||
* | PlayerThread: move global MusicBuffer variable into the player object | Max Kellermann | 2013-09-26 | 1 | -24/+27 |
| | |||||
* | PlayerThread: simplify "buffer empty" assertion | Max Kellermann | 2013-09-26 | 2 | -7/+12 |
| | |||||
* | MusicChunk: remove obsolete prototypes | Max Kellermann | 2013-09-26 | 1 | -7/+1 |
| | |||||
* | MusicBuffer: expose the C++ API | Max Kellermann | 2013-09-26 | 11 | -118/+95 |
| | |||||
* | MusicPipe: expose the C++ API | Max Kellermann | 2013-09-26 | 15 | -244/+189 |
| | |||||
* | MusicChunk: use constexpr for CHUNK_SIZE | Max Kellermann | 2013-09-26 | 1 | -3/+1 |
| | |||||
* | *Plugin: remove redundant "line %i" from error messages | Max Kellermann | 2013-09-26 | 5 | -49/+32 |
| | | | | The MPD core will add this as a prefeix. | ||||
* | SongFilter: search for album artist falls back to the artist tag | Max Kellermann | 2013-09-26 | 1 | -9/+21 |
| | | | | Implement Mantis ticket 0003646. | ||||
* | IdTable, SongFilter: use std::fill_n() instead of std::fill() | Max Kellermann | 2013-09-26 | 2 | -2/+2 |
| | |||||
* | TagType: reduce the enum size to 1 byte | Max Kellermann | 2013-09-26 | 2 | -2/+13 |
| | | | | Reduce the TagItem overhead. | ||||
* | Tag: add "pure" attributes | Max Kellermann | 2013-09-26 | 1 | -0/+3 |
| | |||||
* | TagHandler: use a TagBuilder internally | Max Kellermann | 2013-09-26 | 8 | -47/+55 |
| | | | | Reduce heap allocator overhead. | ||||
* | Main: fix crash if no database was configured | Max Kellermann | 2013-09-26 | 1 | -0/+3 |
| | | | | Add nullptr check, and return early from glue_db_init_and_load(). | ||||
* | Main: use nullptr instead of NULL | Max Kellermann | 2013-09-26 | 1 | -11/+11 |
| | |||||
* | decoder/modplug: fix include directory | Max Kellermann | 2013-09-26 | 1 | -1/+3 |
| | | | | | | Since Debian package 1:0.8.8.4-4, the pkg-config file does not contain -I/usr/include/libmodplug anymore, and we need to add the "libmodplug/" prefix to the #include line. | ||||
* | input/curl: fix EventLoop stall after curl_easy_pause | Artem Savkov | 2013-09-26 | 1 | -0/+1 |
| | | | | | | | | When playing finite http streams, e.g. something from soundcloud, eventloop stalls after pausing writefunc. TimeoutMonitor is cancelled by the time resume happens, so when enough data is consumed writefunc is called only once. Calling InvalidateSockets() from input_curl_resume() seems to fix the issue. | ||||
* | ConfigPath: return early on "~" | Max Kellermann | 2013-09-12 | 1 | -3/+6 |
| | | | | Previously, the pointer was moved to undefined memory. | ||||
* | ConfigPath: skip the slash of "~/" | Max Kellermann | 2013-09-12 | 1 | -3/+3 |
| | | | | Increment the "path" earlier. | ||||
* | ConfigPath: remove the "~/" from the constructed path | Max Kellermann | 2013-09-12 | 1 | -6/+9 |
| | | | | | This was building broken paths like "/home/foo/~/bar". Bug found by Maarten de Vries. | ||||
* | ConfigPath: simplify the duplicate tilde check | Max Kellermann | 2013-09-12 | 1 | -5/+5 |
| | |||||
* | ConfigPath: convert "home" variable to Path object | Max Kellermann | 2013-09-12 | 1 | -9/+11 |
| | | | | | Use Path::FromUTF8() for the g_get_home_dir() return value instead of assuming it's already FS charset. | ||||
* | ConfigPath: move code to GetHome() | Max Kellermann | 2013-09-12 | 1 | -28/+48 |
| | |||||
* | ConfigPath: include cleanup | Max Kellermann | 2013-09-12 | 1 | -16/+0 |
| | |||||
* | Path: add FromUTF8() overload that returns an Error | Max Kellermann | 2013-09-12 | 4 | -8/+26 |
| | |||||
* | ConfigPath: move path_domain to system/Path.cxx | Max Kellermann | 2013-09-12 | 3 | -3/+5 |
| | |||||
* | Listen: Allow tilde paths for socket. | Maarten de Vries | 2013-09-12 | 3 | -2/+18 |
| | |||||
* | TagBuilder: add method Commit(Tag&) | Max Kellermann | 2013-09-05 | 2 | -8/+21 |
| | | | | For callers that already have a Tag instance. | ||||
* | TagBuilder: add method IsEmpty() | Max Kellermann | 2013-09-05 | 1 | -1/+9 |
| | |||||
* | Tag: remove the obsolete "bulk" mode | Max Kellermann | 2013-09-05 | 2 | -88/+3 |
| | | | | | Methods BeginAdd() and EndAdd() have been replaced by class TagBuilder. | ||||
* | db/proxy: use class TagBuilder | Max Kellermann | 2013-09-05 | 1 | -8/+6 |
| | |||||
* | SongSave: use class TagBuilder | Max Kellermann | 2013-09-05 | 1 | -24/+8 |
| | |||||
* | TagBuilder: new class for constructing Tag objects | Max Kellermann | 2013-09-05 | 2 | -0/+229 |
| | | | | Obsoletes Tag::BeginAdd() and the complicated "bulk add" code. |