Commit Graph

9905 Commits

Author SHA1 Message Date
Max Kellermann e5ab456df3 Win32Main: use FatalSystemError() 2014-12-05 00:21:48 +01:00
Max Kellermann 08bf4f74a9 system/FatalError: add FatalSystemError() overload with WIN32 error code 2014-12-05 00:19:07 +01:00
Max Kellermann a838a03412 system/FatalError: use FormatMessage() instead of g_win32_error_message() 2014-12-05 00:15:30 +01:00
Max Kellermann ad4e597f74 util/Error: use FormatMessage() instead of g_win32_error_message() 2014-12-05 00:10:44 +01:00
Max Kellermann ee3610a2d2 android/build.py: enable Vorbis and httpd
These do not require GLib anymore.
2014-12-04 23:35:02 +01:00
Max Kellermann 88b75b57d0 playlist, InotifySource, ...: update GLib comments 2014-12-04 23:33:08 +01:00
Max Kellermann aa4c7055f8 playlist/pls: custom INI parser
Don't use GLib.
2014-12-04 23:10:50 +01:00
Max Kellermann 4b70f9d213 util/DivideString: add option "strip" 2014-12-04 23:05:44 +01:00
Max Kellermann 79d2d1c201 decoder/sidplay: pass SidTuneMod to get_song_length()
Eliminate duplicate SidTune construction.
2014-12-04 21:58:09 +01:00
Max Kellermann 406bda9b95 decoder/sidplay: simplify the SidDatabase::length() call 2014-12-04 21:53:45 +01:00
Max Kellermann 405f1dd027 decoder/sidplay: include cleanup 2014-12-04 21:53:45 +01:00
Max Kellermann 51f349d504 decoder/sidplay: use class SidDatabase
Remove our own songlength database parser.
2014-12-04 21:40:38 +01:00
Max Kellermann 4f201d1e85 decoder/sidplay: use config_param::GetBlockPath() 2014-12-04 21:30:59 +01:00
Max Kellermann 03cfef100f decoder/sidplay: make "songlength_file" local 2014-12-04 21:30:59 +01:00
Max Kellermann ff89b491dd ConfigData: update API documentation 2014-12-04 21:30:59 +01:00
Max Kellermann 7552dff0e5 decoder/sidplay: pass parsed path to get_song_length()
Eliminates duplicate ParseContainerPath() call.
2014-12-04 21:21:49 +01:00
Max Kellermann 110589c0f3 decoder/sidplay: merge get_container_name() and get_song_num() 2014-12-04 21:11:33 +01:00
Max Kellermann 3400398230 doc/mpdconf.example: move sidplay documentation to the user manual 2014-12-04 21:06:21 +01:00
Max Kellermann 5c244e9a8c SongSticker: remove obsolete documentation 2014-12-04 20:53:48 +01:00
Max Kellermann 4e2f4e2091 util/StringUtil: add ToUpperASCII()
Replaces g_ascii_strup() and allows building the Vorbis encoder
without GLib.
2014-12-04 17:43:01 +01:00
Max Kellermann e69bef3ce3 util/SplitString: new utility class
Replaces GLib's g_strsplit().
2014-12-04 09:14:28 +01:00
Max Kellermann c1c0fc79bc output/jack: use usleep() instead of g_usleep() 2014-12-04 09:14:28 +01:00
Max Kellermann 02a77f6797 test/test_util: add unit test for DivideString 2014-12-04 07:23:06 +01:00
Max Kellermann 77b316cdfb test/TestCircularBuffer: include cleanup 2014-12-04 07:14:43 +01:00
Max Kellermann 2abfc7b87b test/test_util: move class UriUtilTest to UriUtilTest.hxx 2014-12-04 07:12:04 +01:00
Max Kellermann 050f0c3d8f util/SplitString: rename to DivideString 2014-12-03 21:38:06 +01:00
Max Kellermann 90e6c727da encoder/vorbis: convert pointers to references 2014-12-02 22:33:40 +01:00
Max Kellermann d3d9a04e62 output/ao: use class SplitString instead of g_strsplit() 2014-12-02 22:29:41 +01:00
Max Kellermann a66051216f TagId3: add "pure" attributes 2014-12-02 22:17:47 +01:00
Max Kellermann 0debba0f6e mixer/null: new mixer plugin 2014-12-02 18:20:44 +01:00
Max Kellermann f2bd2c318c MixerType: convert to strictly-typed enum 2014-12-02 18:20:44 +01:00
Max Kellermann 21c42819c7 MixerType: rename to CamelCase 2014-12-02 18:19:31 +01:00
Max Kellermann 5899a272ef decoder/gme: simplify ParseContainerPath()
Use simple string and path parsing functions instead of GLib's
g_pattern_match(), which was used in a very clumsy way.
2014-12-02 07:11:11 +01:00
Max Kellermann 27b4c62bc1 decoder/gme: merge get_container_name() and get_song_num()
There is duplicate code in the two.
2014-12-02 06:53:33 +01:00
Max Kellermann b227fddec7 fs/Path: add methods GetBase() and GetDirectoryName() 2014-12-02 06:45:57 +01:00
Max Kellermann 2c1f1de33c decoder/gme: get_song_num() returns unsigned 2014-12-01 23:28:21 +01:00
Max Kellermann c26622cf8f decoder/gme: move code to ScanMusicEmu() 2014-12-01 23:01:58 +01:00
Max Kellermann 9e91873428 decoder/gme: move code to ScanGmeInfo() 2014-12-01 22:56:48 +01:00
Max Kellermann 7363d50a1e output/httpd/IcyMetaDataServer: use CopyString() instead of g_strlcpy() 2014-12-01 22:33:57 +01:00
Max Kellermann 15213a041d output/httpd/IcyMetaDataServer: don't use GLib types 2014-12-01 22:31:29 +01:00
Max Kellermann fb70a34c80 output/httpd/IcyMetaDataServer: make variables more local 2014-12-01 22:28:14 +01:00
Max Kellermann fbf76c6d21 input/cdio_paranoia: use CopyString() instead of g_strlcpy() 2014-12-01 22:22:29 +01:00
Nix 811af02f56 Output: start with a null mixer.
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.
2014-12-01 22:14:09 +01:00
Max Kellermann bc00c38f9d lib/icu/Converter: add ICU-based backend 2014-12-01 21:56:48 +01:00
Max Kellermann 4658bd8208 test/TestIcu: new unit test for lib/icu/* 2014-12-01 20:55:05 +01:00
Max Kellermann 6eb1caa417 fs/Config: add HAVE_GLIB check 2014-11-30 20:35:26 +01:00
Max Kellermann 41efc1376e fs/Config: swap #if/#else 2014-11-30 20:34:32 +01:00
Max Kellermann 0f35016773 lib/icu/Converter: add TODO comment 2014-11-30 19:08:38 +01:00
Max Kellermann c641ca90a9 lib/icu/Collate: move code to Util.cxx 2014-11-30 10:53:05 +01:00
Max Kellermann 87c88fcb27 fs/Charset: move code to wrapper class IcuConverter
Prepare for a ICU-based backend without GLib.
2014-11-30 00:31:13 +01:00