Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | PlayerThread: Only drop 0 length packets without tags | Ben Boeckel | 2013-10-19 | 1 | -1/+1 |
| | | | | | | | | | | Fixes a regression from 752dfb3d95482c562e5d24c6ea839c4815de9a6d which caused the current chunk to be flushed as soon as new replaygain information was found. If this occurs on a tag chunk, it has no data (length 0) and is then skipped before pushing it to all of the outputs. This change allows 0-length chunks through if they contain a tag and they are now appearing in mplayer and mpv properly. | ||||
* | Util/CharUtil: new library replacing g_ascii_isX() | Max Kellermann | 2013-10-19 | 8 | -17/+134 |
| | |||||
* | playlist/(Ext)M3u: use strchug_fast() | Max Kellermann | 2013-10-19 | 2 | -7/+3 |
| | |||||
* | test/test_pcm: use C++11 random instead of GLib | Max Kellermann | 2013-10-19 | 5 | -20/+28 |
| | |||||
* | encoder/{opus,vorbis}: new serial generator replacing g_random_int() | Max Kellermann | 2013-10-19 | 6 | -3/+84 |
| | |||||
* | encoder/wave: include cleanup | Max Kellermann | 2013-10-19 | 1 | -2/+0 |
| | |||||
* | decoder/mikmod: Add loop configuration parameter | Sebastian Thorarensen | 2013-10-18 | 3 | -2/+14 |
| | | | | | | | This patch allows the user to configure the mikmod decoder plugin to loop modules. It adds a configuration parameter to the mikmod decoder called "loop" which can be "no" (the old behaviour, default) or "yes" to allow modules to use backward loops. | ||||
* | filter/route: merge the two loops, one-pass parsing | Max Kellermann | 2013-10-18 | 1 | -61/+42 |
| | |||||
* | filter/route: allocate "sources" statically | Max Kellermann | 2013-10-18 | 1 | -14/+6 |
| | | | | Worst-case allocation using MAX_CHANNELS. | ||||
* | filter/route: use int8_t instead of signed char | Max Kellermann | 2013-10-18 | 1 | -13/+11 |
| | |||||
* | util/StringUtil: rename strchug_fast_c() to strchug_fast() | Max Kellermann | 2013-10-18 | 5 | -9/+6 |
| | | | | Overload the name. | ||||
* | ZeroconfAvahi: convert avahiRunning to a "bool" | Max Kellermann | 2013-10-18 | 1 | -6/+6 |
| | |||||
* | ZeroconfAvahi: integrate into the EventLoop | Max Kellermann | 2013-10-18 | 5 | -29/+209 |
| | | | | Finally fixes the regression by commit c1f4f1fd. | ||||
* | test/run_avahi: new debug program | Max Kellermann | 2013-10-18 | 2 | -0/+58 |
| | |||||
* | test/run_inotify: use SignalMonitor | Max Kellermann | 2013-10-18 | 4 | -20/+90 |
| | |||||
* | SignalMonitor: add SignalMonitorGetEventLoop() | Max Kellermann | 2013-10-18 | 3 | -6/+16 |
| | | | | Eliminate the global variable "shutdown_loop". | ||||
* | input/curl: use MultiSocketMonitor constants instead of GLib | Max Kellermann | 2013-10-18 | 1 | -3/+6 |
| | |||||
* | valgrind.suppressions: add g_get_home_dir suppression | Max Kellermann | 2013-10-18 | 1 | -0/+8 |
| | |||||
* | PlaylistEdit, QueueSave: free the Song object after Append() | Max Kellermann | 2013-10-18 | 2 | -1/+7 |
| | | | | Fix for a major memory leak. | ||||
* | valgrind.suppressions: add libGnuTLS suppression | Max Kellermann | 2013-10-18 | 1 | -0/+8 |
| | |||||
* | fs/Path: rename to AllocatedPath | Max Kellermann | 2013-10-17 | 51 | -394/+621 |
| | | | | | | | The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object. | ||||
* | fs/Path: move definitions to struct PathTraits | Max Kellermann | 2013-10-17 | 18 | -111/+160 |
| | |||||
* | fs/Path: include clenaup | Max Kellermann | 2013-10-17 | 1 | -1/+1 |
| | |||||
* | fs/Charset: GetFSCharset() returns "utf-8" by default | Max Kellermann | 2013-10-17 | 3 | -9/+8 |
| | | | | | | If fs_charset is empty, i.e. we're using the default "utf-8", GetFSCharset() should return exactly that instead of an empty std::string. | ||||
* | fs/Charset: default filesystem charset is UTF-8 | Max Kellermann | 2013-10-17 | 3 | -6/+8 |
| | | | | | Implement a fast path for UTF-8 which leaves fs_charset empty, and don't assign a value to fs_charset if there's no configuration. | ||||
* | fs/Charset: don't allow nullptr arguments | Max Kellermann | 2013-10-17 | 3 | -7/+8 |
| | |||||
* | fs/Path: move configuration code to Config.cxx | Max Kellermann | 2013-10-17 | 11 | -140/+284 |
| | |||||
* | fs/Path: move path_domain to Domain.hxx | Max Kellermann | 2013-10-17 | 6 | -5/+52 |
| | |||||
* | fs/Path: make fs_charset static | Max Kellermann | 2013-10-17 | 1 | -1/+1 |
| | |||||
* | fs/Path: include cleanup | Max Kellermann | 2013-10-17 | 3 | -1/+2 |
| | |||||
* | fs/Limits: convert macro to "constexpr" | Max Kellermann | 2013-10-17 | 4 | -13/+12 |
| | |||||
* | fs/Path: move MPD_PATH_MAX to Limits.hxx | Max Kellermann | 2013-10-17 | 8 | -14/+46 |
| | |||||
* | *: use std::numeric_limits | Max Kellermann | 2013-10-17 | 5 | -23/+22 |
| | |||||
* | UpdateGlue: handle update id management | Max Kellermann | 2013-10-17 | 3 | -21/+33 |
| | | | | | Add UpdateQueueItem::id to keep track of the id in every item. Replaces thhe hack in update_queue_push(). | ||||
* | UpdateGlue: pass UpdateQueueItem around | Max Kellermann | 2013-10-17 | 1 | -20/+16 |
| | | | | Fixes a few kludges and avoids GLib allocation. | ||||
* | UpdateGlue: never pass null to update_enqueue() | Max Kellermann | 2013-10-17 | 3 | -5/+8 |
| | |||||
* | UpdateQueue: use std::string and std::queue | Max Kellermann | 2013-10-17 | 3 | -40/+35 |
| | |||||
* | Mapper: use std::string | Max Kellermann | 2013-10-17 | 1 | -16/+11 |
| | |||||
* | StickerDatabase: return std::string | Max Kellermann | 2013-10-17 | 5 | -23/+26 |
| | |||||
* | StickerDatabase: add pure/const attributes | Max Kellermann | 2013-10-17 | 1 | -0/+4 |
| | |||||
* | PlayerControl: GetError() returns an Error, not a char* | Max Kellermann | 2013-10-17 | 3 | -25/+26 |
| | |||||
* | Thread/Thread: replacement library for GThread | Max Kellermann | 2013-10-17 | 21 | -98/+310 |
| | |||||
* | util/Error: add method SetLastError() | Max Kellermann | 2013-10-17 | 2 | -0/+25 |
| | |||||
* | Main: use ThreadId instead of GThread* | Max Kellermann | 2013-10-17 | 3 | -6/+8 |
| | |||||
* | Makefile.am: move sources to libthread.a | Max Kellermann | 2013-10-17 | 1 | -9/+15 |
| | |||||
* | InputStream: use int64_t instead of goffset | Max Kellermann | 2013-10-17 | 20 | -64/+78 |
| | | | | Decouple some more from GLib. | ||||
* | input_plugin: rename struct to "InputPlugin" | Max Kellermann | 2013-10-17 | 23 | -32/+31 |
| | |||||
* | thread/{Cond,Mutex}: use "class" instead of "typedef" | Max Kellermann | 2013-10-17 | 19 | -21/+25 |
| | | | | Allows forward-declaration. | ||||
* | CueParser: use std::string | Max Kellermann | 2013-10-17 | 2 | -6/+5 |
| | |||||
* | InotifyUpdate: use class Path | Max Kellermann | 2013-10-17 | 1 | -58/+37 |
| |