Max Kellermann
267ccc98d3
Win32Main: make the service table "constexpr"
2014-12-05 00:26:48 +01:00
Max Kellermann
cd3c2fdb49
Win32Main: make variables more local
2014-12-05 00:25:48 +01:00
Max Kellermann
5cbc319e96
configure.ac: require GLib 2.32 (if enabled)
...
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.
2014-12-05 00:21:48 +01:00
Max Kellermann
d435dcdca4
configure.ac: make GLib optional by default
...
Only very few (minor) features still depend on GLib.
2014-12-05 00:21:48 +01:00
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