aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* CommandLine: merge printf() callsMax Kellermann2014-12-081-9/+15
|
* CommandLine: use printf() instead of puts()Max Kellermann2014-12-081-41/+41
|
* ConfigGlobal: fix params not fully cleanedThomas Guillem2014-12-081-0/+1
|
* Merge tag 'v0.19.6'Max Kellermann2014-12-083-2/+8
|\
| * Merge tag 'v0.18.20' into v0.19.xMax Kellermann2014-12-082-2/+7
| |\
| | * decoder/ffmpeg: support FFmpeg 2.5Max Kellermann2014-12-081-0/+5
| | | | | | | | | | | | | | | | | | Version 2.5 fixed an API oddity, however it broke API compatibility, at least with C++. Disable the workaround when a libavformat version is detected that is recent enough.
| | * thread/Id: drop "::" prefix before pthread function namesMax Kellermann2014-12-081-2/+2
| | | | | | | | | | | | | | | | | | The "::" to explicitly refer to the global namespace appeared like a good idea in C++, but it breaks with C libraries that implement standard functions using macros (e.g. musl).
| * | Output: start with a null mixer.Nix2014-12-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are code paths (mostly error cases) in which it is possible to initialize an AudioOutput and then kill it without ever calling audio_output_new(). In such a case, its destructor will attempt to free a mixer that was never initialized, leading to an attempt to take out a lock on a mutex that was similarly never initialized, which hangs forever. Fix by always initializing the mixer appropriately.
* | | command: use ConstBuffer<const char *> for argument listMax Kellermann2014-12-0825-420/+417
| | |
* | | AllCommands: simplify the tokenizer loopMax Kellermann2014-12-081-17/+19
| | |
* | | AllCommands: assign current_command earlyMax Kellermann2014-12-081-5/+4
| | |
* | | AllCommands: remove redundant initializerMax Kellermann2014-12-081-1/+1
| | |
* | | CommandLine: show id3tag support in --versionMax Kellermann2014-12-071-0/+5
| | |
* | | AllCommands: make variables more localMax Kellermann2014-12-061-16/+13
| | |
* | | AllCommands: make the commands array "constexpr"Max Kellermann2014-12-061-1/+1
| | |
* | | playlist/soundcloud: drop support for libyajl1Max Kellermann2014-12-051-35/+4
| | | | | | | | | | | | Require the version 2 which has a more sane API.
* | | Win32Main: make the service table "constexpr"Max Kellermann2014-12-051-1/+1
| | |
* | | Win32Main: make variables more localMax Kellermann2014-12-051-3/+1
| | |
* | | configure.ac: require GLib 2.32 (if enabled)Max Kellermann2014-12-051-5/+0
| | | | | | | | | | | | | | | | | | Since version 2.32, g_thread_init() is deprecated and a no-op. Let's upgrade that (optional) dependency so we can remove all those g_thread_init() calls.
* | | Win32Main: use FatalSystemError()Max Kellermann2014-12-051-15/+3
| | |
* | | system/FatalError: add FatalSystemError() overload with WIN32 error codeMax Kellermann2014-12-052-10/+30
| | |
* | | system/FatalError: use FormatMessage() instead of g_win32_error_message()Max Kellermann2014-12-051-5/+6
| | |
* | | util/Error: use FormatMessage() instead of g_win32_error_message()Max Kellermann2014-12-051-2/+6
| | |
* | | playlist, InotifySource, ...: update GLib commentsMax Kellermann2014-12-046-8/+8
| | |
* | | playlist/pls: custom INI parserMax Kellermann2014-12-042-89/+107
| | | | | | | | | | | | Don't use GLib.
* | | util/DivideString: add option "strip"Max Kellermann2014-12-043-3/+18
| | |
* | | decoder/sidplay: pass SidTuneMod to get_song_length()Max Kellermann2014-12-041-14/+9
| | | | | | | | | | | | Eliminate duplicate SidTune construction.
* | | decoder/sidplay: simplify the SidDatabase::length() callMax Kellermann2014-12-041-4/+2
| | |
* | | decoder/sidplay: include cleanupMax Kellermann2014-12-041-2/+0
| | |
* | | decoder/sidplay: use class SidDatabaseMax Kellermann2014-12-041-51/+11
| | | | | | | | | | | | Remove our own songlength database parser.
* | | decoder/sidplay: use config_param::GetBlockPath()Max Kellermann2014-12-041-7/+12
| | |
* | | decoder/sidplay: make "songlength_file" localMax Kellermann2014-12-041-2/+1
| | |
* | | ConfigData: update API documentationMax Kellermann2014-12-041-1/+1
| | |
* | | decoder/sidplay: pass parsed path to get_song_length()Max Kellermann2014-12-041-4/+3
| | | | | | | | | | | | Eliminates duplicate ParseContainerPath() call.
* | | decoder/sidplay: merge get_container_name() and get_song_num()Max Kellermann2014-12-041-50/+38
| | |
* | | SongSticker: remove obsolete documentationMax Kellermann2014-12-041-2/+1
| | |
* | | util/StringUtil: add ToUpperASCII()Max Kellermann2014-12-043-4/+31
| | | | | | | | | | | | | | | Replaces g_ascii_strup() and allows building the Vorbis encoder without GLib.
* | | util/SplitString: new utility classMax Kellermann2014-12-044-28/+112
| | | | | | | | | | | | Replaces GLib's g_strsplit().
* | | output/jack: use usleep() instead of g_usleep()Max Kellermann2014-12-041-1/+2
| | |
* | | util/SplitString: rename to DivideStringMax Kellermann2014-12-035-13/+13
| | |
* | | encoder/vorbis: convert pointers to referencesMax Kellermann2014-12-021-67/+67
| | |
* | | output/ao: use class SplitString instead of g_strsplit()Max Kellermann2014-12-021-6/+4
| | |
* | | TagId3: add "pure" attributesMax Kellermann2014-12-021-1/+4
| | |
* | | mixer/null: new mixer pluginMax Kellermann2014-12-025-0/+77
| | |
* | | MixerType: convert to strictly-typed enumMax Kellermann2014-12-023-17/+17
| | |
* | | MixerType: rename to CamelCaseMax Kellermann2014-12-023-6/+6
| | |
* | | decoder/gme: simplify ParseContainerPath()Max Kellermann2014-12-021-32/+27
| | | | | | | | | | | | | | | Use simple string and path parsing functions instead of GLib's g_pattern_match(), which was used in a very clumsy way.
* | | decoder/gme: merge get_container_name() and get_song_num()Max Kellermann2014-12-021-54/+28
| | | | | | | | | | | | There is duplicate code in the two.
* | | fs/Path: add methods GetBase() and GetDirectoryName()Max Kellermann2014-12-023-1/+47
| | |
* | | decoder/gme: get_song_num() returns unsignedMax Kellermann2014-12-011-6/+9
| | |