aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-10-19decoder/modplug: Add "loop_count" parameterSebastian Thorarensen1-1/+16
The "loop_count" configuration parameter allows the user to set how many times a module with backward loops shall loop. "0" (the default) means a module is not allowed to use backward loops at all. "-1" enables inifinite looping.
2013-10-19ConfigData: Add support for signed integersSebastian Thorarensen2-0/+27
Now config_param::GetBlockValue() can be used to get signed integers from the configuration.
2013-10-19PlayerThread: Only drop 0 length packets without tagsBen Boeckel1-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.
2013-10-19Util/CharUtil: new library replacing g_ascii_isX()Max Kellermann8-17/+134
2013-10-19playlist/(Ext)M3u: use strchug_fast()Max Kellermann2-7/+3
2013-10-19encoder/{opus,vorbis}: new serial generator replacing g_random_int()Max Kellermann4-3/+77
2013-10-19encoder/wave: include cleanupMax Kellermann1-2/+0
2013-10-18decoder/mikmod: Add loop configuration parameterSebastian Thorarensen1-2/+3
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.
2013-10-18filter/route: merge the two loops, one-pass parsingMax Kellermann1-61/+42
2013-10-18filter/route: allocate "sources" staticallyMax Kellermann1-14/+6
Worst-case allocation using MAX_CHANNELS.
2013-10-18filter/route: use int8_t instead of signed charMax Kellermann1-13/+11
2013-10-18util/StringUtil: rename strchug_fast_c() to strchug_fast()Max Kellermann5-9/+6
Overload the name.
2013-10-18ZeroconfAvahi: convert avahiRunning to a "bool"Max Kellermann1-6/+6
2013-10-18ZeroconfAvahi: integrate into the EventLoopMax Kellermann3-25/+202
Finally fixes the regression by commit c1f4f1fd.
2013-10-18SignalMonitor: add SignalMonitorGetEventLoop()Max Kellermann3-6/+16
Eliminate the global variable "shutdown_loop".
2013-10-18input/curl: use MultiSocketMonitor constants instead of GLibMax Kellermann1-3/+6
2013-10-18PlaylistEdit, QueueSave: free the Song object after Append()Max Kellermann2-1/+7
Fix for a major memory leak.
2013-10-17fs/Path: rename to AllocatedPathMax Kellermann50-394/+620
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.
2013-10-17fs/Path: move definitions to struct PathTraitsMax Kellermann17-111/+159
2013-10-17fs/Path: include clenaupMax Kellermann1-1/+1
2013-10-17fs/Charset: GetFSCharset() returns "utf-8" by defaultMax Kellermann3-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.
2013-10-17fs/Charset: default filesystem charset is UTF-8Max Kellermann2-6/+7
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.
2013-10-17fs/Charset: don't allow nullptr argumentsMax Kellermann3-7/+8
2013-10-17fs/Path: move configuration code to Config.cxxMax Kellermann10-140/+282
2013-10-17fs/Path: move path_domain to Domain.hxxMax Kellermann5-5/+51
2013-10-17fs/Path: make fs_charset staticMax Kellermann1-1/+1
2013-10-17fs/Path: include cleanupMax Kellermann3-1/+2
2013-10-17fs/Limits: convert macro to "constexpr"Max Kellermann4-13/+12
2013-10-17fs/Path: move MPD_PATH_MAX to Limits.hxxMax Kellermann7-14/+45
2013-10-17*: use std::numeric_limitsMax Kellermann5-23/+22
2013-10-17UpdateGlue: handle update id managementMax Kellermann3-21/+33
Add UpdateQueueItem::id to keep track of the id in every item. Replaces thhe hack in update_queue_push().
2013-10-17UpdateGlue: pass UpdateQueueItem aroundMax Kellermann1-20/+16
Fixes a few kludges and avoids GLib allocation.
2013-10-17UpdateGlue: never pass null to update_enqueue()Max Kellermann3-5/+8
2013-10-17UpdateQueue: use std::string and std::queueMax Kellermann3-40/+35
2013-10-17Mapper: use std::stringMax Kellermann1-16/+11
2013-10-17StickerDatabase: return std::stringMax Kellermann5-23/+26
2013-10-17StickerDatabase: add pure/const attributesMax Kellermann1-0/+4
2013-10-17PlayerControl: GetError() returns an Error, not a char*Max Kellermann3-25/+26
2013-10-17Thread/Thread: replacement library for GThreadMax Kellermann20-98/+301
2013-10-17util/Error: add method SetLastError()Max Kellermann2-0/+25
2013-10-17Main: use ThreadId instead of GThread*Max Kellermann3-6/+8
2013-10-17InputStream: use int64_t instead of goffsetMax Kellermann20-64/+78
Decouple some more from GLib.
2013-10-17input_plugin: rename struct to "InputPlugin"Max Kellermann23-32/+31
2013-10-17thread/{Cond,Mutex}: use "class" instead of "typedef"Max Kellermann14-21/+20
Allows forward-declaration.
2013-10-17CueParser: use std::stringMax Kellermann2-6/+5
2013-10-17InotifyUpdate: use class PathMax Kellermann1-58/+37
2013-10-17PlaylistSave: eliminate the last g_warning() callMax Kellermann1-1/+2
2013-10-17Song: GetURI() returns std::stringMax Kellermann10-86/+62
2013-10-17ArchiveLookup: in-place editing, avoid string copyMax Kellermann1-29/+24
2013-10-17ArchiveLookup: declare local variables laterMax Kellermann1-5/+4