Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | playlist/asx: make variables more local | Max Kellermann | 2014-01-09 | 1 | -7/+6 | |
| | ||||||
* | DetachedSong: fork of struct Song | Max Kellermann | 2014-01-09 | 66 | -745/+773 | |
| | | | | | | From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead. | |||||
* | SongUpdate: move code to handle_lsinfo() | Max Kellermann | 2014-01-08 | 5 | -20/+30 | |
| | | | | | Don't create a temporary Song object in handle_lsinfo(). Instead, print all tags while parsing the remote file. | |||||
* | SongSave: make variables more local | Max Kellermann | 2014-01-08 | 1 | -5/+4 | |
| | ||||||
* | Merge branch 'v0.18.x' | Max Kellermann | 2014-01-08 | 3 | -2/+4 | |
|\ | ||||||
| * | decoder/faad: fix memory leak | Max Kellermann | 2014-01-08 | 1 | -0/+2 | |
| | | ||||||
| * | playlist/pls: don't free stack buffer | Max Kellermann | 2014-01-08 | 1 | -1/+0 | |
| | | ||||||
| * | util/UriUtil: uri_get_suffix() fails if name begins with dot | Max Kellermann | 2013-12-29 | 1 | -1/+2 | |
| | | | | | | | | | | A file called ".jpg" is not a JPEG file with an empty name; it is merely a hidden file. | |||||
* | | playlist/pls: make variables more local | Max Kellermann | 2014-01-08 | 1 | -17/+9 | |
| | | ||||||
* | | playlist/pls: convert "while" loop to "for" loop | Max Kellermann | 2014-01-08 | 1 | -2/+1 | |
| | | ||||||
* | | playlist/pls: simplify error handler | Max Kellermann | 2014-01-08 | 1 | -11/+4 | |
| | | | | | | | | | | Don't pass a GError** to g_key_file_get_X(). We don't need to dispose something we didn't request in the first place. | |||||
* | | DespotifyUtils: return Tag, not pointer | Max Kellermann | 2014-01-08 | 4 | -12/+12 | |
| | | ||||||
* | | DespotifyUtils: pass const ds_track reference | Max Kellermann | 2014-01-08 | 4 | -17/+17 | |
| | | ||||||
* | | tag/TagBuilder: overload Commit() returning a Tag object | Max Kellermann | 2014-01-08 | 7 | -12/+24 | |
| | | ||||||
* | | tag/TagBuilder: rename Commit() to CommitNew() | Max Kellermann | 2014-01-08 | 20 | -23/+23 | |
| | | ||||||
* | | input/AlsaInputPlugin: remove unnecessary alsa s/w param setting to fix high ↵ | Steven O'Brien | 2014-01-08 | 1 | -9/+0 | |
| | | | | | | | | CPU load issue | |||||
* | | SongSticker: use Song references | Max Kellermann | 2014-01-08 | 4 | -31/+26 | |
| | | ||||||
* | | PlayerThread: use Song references | Max Kellermann | 2014-01-08 | 1 | -15/+13 | |
| | | ||||||
* | | DecoderThread: use Song references | Max Kellermann | 2014-01-08 | 1 | -10/+10 | |
| | | ||||||
* | | util/Alloc: new library replacing GLib's g_malloc() | Max Kellermann | 2014-01-07 | 19 | -57/+208 | |
| | | ||||||
* | | DecoderBuffer: use NewVarSize() | Max Kellermann | 2014-01-07 | 1 | -13/+10 | |
| | | ||||||
* | | tag/TagPool: use NewVarSize() to allocate TagPoolSlot | Max Kellermann | 2014-01-07 | 1 | -21/+27 | |
| | | ||||||
* | | tag/TagPool: rename struct slot to TagPoolSlot | Max Kellermann | 2014-01-07 | 1 | -14/+13 | |
| | | ||||||
* | | tag/TagPool: use gcc_packed instead of mpd_packed | Max Kellermann | 2014-01-07 | 1 | -1/+1 | |
| | | | | | | | | | | By accident, this declared a global variable instead of adding the "packed" attribute. | |||||
* | | Directory: make some code generic, move to VarSize.hxx | Max Kellermann | 2014-01-07 | 3 | -10/+93 | |
| | | ||||||
* | | Directory: use g_malloc() instead of g_malloc0() | Max Kellermann | 2014-01-07 | 1 | -3/+4 | |
| | | | | | | | | Explicit attribute initialization. | |||||
* | | playlist/soundcloud: parse URI without copying it | Max Kellermann | 2014-01-07 | 1 | -19/+11 | |
| | | ||||||
* | | playlist/soundcloud: change scheme check to assertion | Max Kellermann | 2014-01-07 | 1 | -18/+2 | |
| | | | | | | | | The MPD core takes care for checking the scheme. | |||||
* | | playlist/soundcloud: eliminate nullptr checks before g_free() | Max Kellermann | 2014-01-07 | 1 | -8/+4 | |
| | | ||||||
* | | pcm/Utils: remove unused function pcm_end_pointer() | Max Kellermann | 2014-01-07 | 1 | -12/+0 | |
| | | ||||||
* | | pcm/Volume: use number of samples instead of end pointer | Max Kellermann | 2014-01-07 | 1 | -25/+19 | |
| | | ||||||
* | | pcm/Format: change parameters/return values to ConstBuffer | Max Kellermann | 2014-01-06 | 3 | -259/+160 | |
| | | ||||||
* | | pcm/Format: use number of samples instead of end pointer | Max Kellermann | 2014-01-06 | 1 | -44/+34 | |
| | | ||||||
* | | DecoderBuffer: _read() returns ConstBuffer object | Max Kellermann | 2014-01-06 | 3 | -68/+55 | |
| | | ||||||
* | | DecoderBuffer: add "pure" attributes | Max Kellermann | 2014-01-06 | 1 | -0/+4 | |
| | | ||||||
* | | DecoderBuffer: add method _clear() | Max Kellermann | 2014-01-06 | 3 | -8/+12 | |
| | | ||||||
* | | decoder/faad: make variables more local | Max Kellermann | 2014-01-06 | 1 | -47/+31 | |
| | | ||||||
* | | decoder/faad: eliminate local variable "ret" | Max Kellermann | 2014-01-06 | 1 | -5/+2 | |
| | | ||||||
* | | event/Loop: cancel the WakeFD monitor in destructor | Max Kellermann | 2014-01-06 | 1 | -0/+4 | |
| | | ||||||
* | | input/AlsaInputPlugin.cxx: use I/O thread to poll for available data | Steven O'Brien | 2014-01-06 | 1 | -55/+289 | |
| | | | | | | | | [mk: modified to use MultiSocketMonitor instead of SocketMonitor] | |||||
* | | event/MultiSocketMonitor: add method ClearSocketList() | Max Kellermann | 2014-01-06 | 3 | -1/+17 | |
| | | ||||||
* | | event/SocketMonitor: don't close the socket automatically | Max Kellermann | 2014-01-06 | 12 | -21/+20 | |
| | | | | | | | | | | | | Users now have to call Close() explicitly. This simplifies using the class, as most users have automatic socket management already, and Steal() had to be used often. | |||||
* | | util/Cast: new utility library | Max Kellermann | 2014-01-06 | 3 | -2/+62 | |
| | | ||||||
* | | event/IdleMonitor: cancel in destructor only if active | Max Kellermann | 2014-01-06 | 1 | -1/+6 | |
| | | | | | | | | Debug-mode workaround for bogus assertion failure. | |||||
* | | event/MultiSocketMonitor: API documentation | Max Kellermann | 2014-01-06 | 1 | -0/+10 | |
| | | ||||||
* | | event/Loop: try to avoid the WakeFD when adding DeferredMonitor | Max Kellermann | 2014-01-05 | 2 | -2/+24 | |
| | | | | | | | | | | | | | | | | | | Add a flag that indicates whether the EventLoop is currently "busy". As long as that flag is set, it does not need to be woken up - we can simply add the DeferredMonitor to the list, and it will be caught by EventLoop very soon. This eliminates nearly all of the DeferredMonitor overhead when compared to IdleMonitor, rendering IdleMonitor mostly obsolete. | |||||
* | | event/Loop: combine multiple WakeFD::Write() calls | Max Kellermann | 2014-01-05 | 1 | -1/+6 | |
| | | | | | | | | Reduce DeferredMonitor overhead. | |||||
* | | event/Loop: add attribute "again" | Max Kellermann | 2014-01-05 | 2 | -2/+10 | |
| | | | | | | | | Improved support for added events. | |||||
* | | event/Loop: add thread-safety assertions | Max Kellermann | 2014-01-05 | 3 | -1/+30 | |
| | | ||||||
* | | output/httpd: move the clients.clear() call to the IOThread | Max Kellermann | 2014-01-05 | 1 | -1/+3 | |
| | | | | | | | | This call is not thread-safe. |