Commit Graph

8565 Commits

Author SHA1 Message Date
Max Kellermann a62fe30546 SongPrint: let CPP concatenate string literals 2015-02-06 13:06:38 +01:00
Max Kellermann b3fe3e8b3d TagBuilder: allow adding duplicate tag types in Complement()
Build a table of pre-existing tag types before adding new items.  The
old way would check HasType() each time, which would return true after
the first instance of that tag type had been added, preventing
duplicate tag types to be merged.

This broke duplicate tag types loaded from the state file, because
this code path uses TagBuilder::Complement().
2015-02-06 12:25:34 +01:00
Max Kellermann 25ebb427da tag/Rva2: convert pointers to references 2015-02-04 15:57:32 +01:00
Max Kellermann c5bde10b4f tag/Rva2: rename struct rva2_data to CamelCase 2015-02-04 15:56:59 +01:00
Max Kellermann e582e893cc tag/Rva2: make enum rva2_channel strictly-typed 2015-02-04 15:56:01 +01:00
Max Kellermann 833ec3d3cd lib/upnp/Discovery: remove locking from ExpireDevices() 2015-02-03 23:48:11 +01:00
Max Kellermann 3d446d3266 lib/upnp/Discovery: apply naming convention 2015-02-02 21:12:19 +00:00
Max Kellermann e660229c40 output/sles: use AudioOutputWrapper::Create() 2015-02-01 22:24:19 +01:00
Max Kellermann ee6e0e16cb DecoderThread: make variables more local 2015-01-31 22:20:38 +01:00
Max Kellermann eb1733609a decoder/sndfile, ...: update API documentation 2015-01-31 22:17:15 +01:00
Max Kellermann e2e66404d5 decoder/DsdLib: fix integer overflow in ID3 size calculation 2015-01-30 23:22:49 +01:00
Max Kellermann 3ecb19d0f1 decoder/DsdLib: check size before seeking 2015-01-30 23:19:26 +01:00
Max Kellermann fd02c87fa2 decoder/DsdLib: don't use InputStream::GetOffset() after seeking
We already know the offset.
2015-01-30 23:00:22 +01:00
Max Kellermann 63ac81c8f5 decoder/DsdLib: pass offset_type t dsdlib_tag_id3() 2015-01-30 22:47:43 +01:00
Max Kellermann 557bee61d5 Merge branch 'v0.19.x' 2015-01-29 22:55:18 +01:00
Max Kellermann 3adca3c2fa db/update/Walk: use std::unique_ptr instead of std::auto_ptr
std::auto_ptr is deprecated, and std::unique_ptr is much better
anyway.
2015-01-29 08:37:23 +01:00
PHO 39abd3ecb4 Avoid integer overflow in MonotonicClock{S,MS,US}
This is Darwin specific: the previous implementation was causing an integer
overflow when base.numer is very large. On PPC Darwin, the timebase info is 1000000000/33330116 and this is too large for integer arithmetic.
2015-01-29 08:34:37 +01:00
Max Kellermann 7bf638b0de decoder/DsdLib: use new[] to allocate the ID3 buffer
Don't abort the process if there's not enough memory.  This buffer is
not important and can be large.
2015-01-29 08:24:34 +01:00
Max Kellermann 56662a703c decoder/DsdLib: free ID3 buffer right after id3_tag_parse()
Merge two free() calls.
2015-01-29 08:24:34 +01:00
Max Kellermann 8b5f47d3a3 decoder/DsdLib: raise ID3 tag limit to 1 MB
A bug report was submitted with a 600 kB ID3 tag that could not be
read by MPD.
2015-01-29 08:20:14 +01:00
Max Kellermann 8bfb88840b output/fifo: use template AudioOutputWrapper 2015-01-28 19:43:37 +01:00
Max Kellermann 593bb5a8a7 StickerDatabase: convert the struct name to upper case 2015-01-28 19:33:56 +01:00
Max Kellermann ae7e1a22cb Merge branch 'v0.19.x' 2015-01-26 20:57:29 +01:00
Max Kellermann a289dcb9ee Merge branch 'v0.18.x' into v0.19.x 2015-01-26 20:48:19 +01:00
PHO 023b9c1e7e Test the existence of strndup(3) before using it.
This can eliminate the ad-hoc "#ifdef WIN32" and can also support other platforms lacking it as well (including Darwin 9).
2015-01-26 20:39:49 +01:00
Max Kellermann ad1b6ef0ac {playlist,input}/despotify: remove defunct plugin 2015-01-26 09:55:31 +01:00
Max Kellermann 16944b5397 pcm/SoxrResampler: move quality recipe names to table 2015-01-25 10:01:50 +01:00
Max Kellermann ed5c6be2f1 util/list: disable gcc5 warning
This file has been removed in newer MPD versions, so don't care about
it now.
2015-01-23 16:50:31 +01:00
Max Kellermann 30cb082932 ClientProcess: cast enum to int before passing to printf()
Fixes gcc5 warning.
2015-01-23 16:50:31 +01:00
Max Kellermann 72e44d596f tag/Format: add %iso8601% 2015-01-22 19:10:15 +01:00
Max Kellermann 8f2ca8f085 ConfigFile: fix typo (parser breakage) 2015-01-22 19:08:09 +01:00
Max Kellermann 6725c2afa1 util/format: allow upper case, digits and underscore in names 2015-01-22 18:59:42 +01:00
Max Kellermann e9d4b73cc3 util/format: move code to is_name_char() 2015-01-22 18:59:01 +01:00
Max Kellermann 929ec70512 queue/PlaylistState: remove unused macro 2015-01-22 18:44:30 +01:00
Max Kellermann 6cd5d73607 pcm/SoxrResampler: allow multi-threaded resampling 2015-01-22 11:37:18 +01:00
Max Kellermann 80a7e1ea7d pcm/SoxrResampler: add a global soxr_runtime_spec_t variable 2015-01-22 11:37:09 +01:00
Max Kellermann 0d3b26b3aa Config: add section "resampler" 2015-01-22 11:04:28 +01:00
Max Kellermann e9b49a43e2 config/Block: add method IsEmpty() 2015-01-22 10:20:51 +01:00
Max Kellermann 4fa5538e2b config/Param: split block-specific attributes to new struct ConfigBlock
The old struct config_param remains only for top-level string options.
2015-01-21 23:56:33 +01:00
Max Kellermann 84e74173de config/File: move code to ReadConfigParam() 2015-01-21 23:51:04 +01:00
Max Kellermann 6cdb2a4896 fs/io/BufferedReader: count line numbers
Replaces the dirty code in config/ConfigFile.cxx.
2015-01-21 23:43:32 +01:00
Max Kellermann d8bef3270d config/File: use FileReader/BufferedReader instead of stdio 2015-01-21 23:36:57 +01:00
Max Kellermann a33db8fe6f config/Data: assign nullptr during iteration 2015-01-21 23:30:00 +01:00
Max Kellermann 1c3f5517fa config/Option: convert to strictly-typed enum 2015-01-21 23:30:00 +01:00
Max Kellermann 10972da060 input/curl: work around format warning on WIN32 2015-01-21 23:30:00 +01:00
Max Kellermann a38f02541d config/Param: make "line" signed 2015-01-21 22:19:36 +01:00
Max Kellermann fdba76ba47 ConfigFile: convert macros to constexpr 2015-01-21 22:12:16 +01:00
Max Kellermann f900ab0121 config/Data: add method Clear()
Move code from config_global_finish().
2015-01-21 21:50:02 +01:00
Max Kellermann f80ab6a7a2 ConfigData: rename header file 2015-01-21 21:49:09 +01:00
Max Kellermann 6ed209bbf3 config/Param: make constructor "explicit" 2015-01-21 21:32:26 +01:00