Commit Graph

12203 Commits

Author SHA1 Message Date
John Regan e96513c8db GME Plugin: try loading m3u sidecar files 2017-09-22 19:58:17 +02:00
Max Kellermann da9657aac4 playlist/SoundCloud: move enum key into struct, make strictly-typed 2017-09-21 23:10:11 +02:00
Max Kellermann 2886766fb5 playlist/SoundCloud: use strcmp() instead of memcmp() to avoid buffer overflow 2017-09-21 23:08:27 +02:00
Max Kellermann 6e7f866288 input/alsa: migrate from DeferredMonitor to DeferEvent 2017-09-21 22:58:00 +02:00
Max Kellermann 6fa403edd9 lib/upnp/Discovery: migrate from DeferredMonitor to DeferEvent 2017-09-21 22:53:57 +02:00
Max Kellermann 431eb7bc8c lib/curl/{Global,Request}: migrate from DeferredMonitor to DeferEvent 2017-09-21 22:53:17 +02:00
Max Kellermann 9df4853e23 event/DeferredCall: rename to DeferEvent 2017-09-21 22:40:25 +02:00
Max Kellermann 18c4ef09d5 input/thread: use class HugeArray instead of the low-level function HugeAllocate() 2017-09-21 21:56:24 +02:00
Max Kellermann bc93c7a1fc input/thread: un-inline the constructor 2017-09-21 21:55:24 +02:00
Max Kellermann c8a2a557db util/HugeAllocator: remove obsolete class HugeAllocation 2017-09-21 21:52:08 +02:00
Max Kellermann 9f827c99cb input/async: use class HugeArray instead of HugeAllocation 2017-09-21 21:50:45 +02:00
Max Kellermann 7b2b965415 util/SliceBuffer: use class HugeArray 2017-09-21 21:48:08 +02:00
Max Kellermann c3cfa18ebe util/HugeAllocator: add template class HugeArray 2017-09-21 21:47:52 +02:00
Max Kellermann b46835e15e util/HugeAllocator: HugeAllocator() returns WritableBuffer<void> 2017-09-21 21:47:49 +02:00
Max Kellermann 3e5ce3c92c util/{Const,Writable}Buffer: add static method FromVoidFloor() 2017-09-21 21:45:39 +02:00
Max Kellermann e5c9b4cd75 util/{Const,Writable}Buffer: add operator==(nullptr_t) 2017-09-21 20:34:36 +02:00
Max Kellermann 8753e558f2 util/HugeAllocator: move MADV_DONTFORK setting to HugeForkCow()
Enforcing MADV_DONTFORK is a surprising limitation for this library
which aims to be generic.
2017-09-21 19:36:33 +02:00
Max Kellermann f6691579de Merge branch 'v0.20.x' 2017-09-20 23:57:28 +02:00
Max Kellermann 828f5f8384 lib/icu/CaseFold: disable broken strxfrm() callback 2017-09-20 23:55:14 +02:00
Max Kellermann 1295a1272a lib/icu/Compare: add fallback using strcasecmp() and strcasestr()
Our IcuCaseFold() fallback using strxfrm() is not actually case
insensitive.  This commit fixes the problem by switching to
strcasecmp().  That function is not guaranteed to support UTF-8, but
it's the best we can do in this sparse situation.

Closes #111
2017-09-20 23:43:27 +02:00
Max Kellermann 66646d9276 SongFilter: use class IcuCompare 2017-09-20 23:43:26 +02:00
Max Kellermann d0497dba92 lib/icu/Compare: OO wrapper for IcuCaseFold() 2017-09-20 23:32:55 +02:00
Max Kellermann 42914e8227 lib/icu/CaseFold: add "noexcept" 2017-09-20 23:32:54 +02:00
Max Kellermann 59b49b7881 db/Selection: add missing config.h 2017-09-20 23:32:54 +02:00
Max Kellermann 5620f16330 lib/icu/Collate: move IcuCaseFold() to CaseFold.cxx 2017-09-20 23:11:58 +02:00
Max Kellermann be024d4ad7 lib/icu/Collate: remove unnecessary assert() 2017-09-20 23:05:31 +02:00
Max Kellermann cfc152d979 input/async: remove outdated API documentation 2017-09-19 19:56:37 +02:00
Max Kellermann 513212c5e8 input/async: use std::exchange() 2017-09-19 19:55:16 +02:00
Max Kellermann 99a447dff5 input/async: use C++11 initializers 2017-09-19 19:54:07 +02:00
Max Kellermann 56a9bf459d util/SliceBuffer: use C++11 initializers 2017-09-19 19:48:04 +02:00
Max Kellermann 11dbba3503 util/HugeAllocator: document std::bad_alloc 2017-09-19 19:45:52 +02:00
Max Kellermann 8662427d48 util/HugeAllocator: use std::exchange() 2017-09-19 19:42:21 +02:00
Max Kellermann 821480d329 util/HugeAllocator: make constructor explicit 2017-09-19 19:42:19 +02:00
Max Kellermann 5ce93d6fa8 output/sndio: refuse to build with libroarsndio
RoarAudio's sndio emulation has been a source for annoyances.  First,
their headers turned out to be broken with C++, due to their use of
the "new" keyword.  Then they used a preprocessor macro to rename
"sio_hdl" to something else, effectively disallowing the use of
forward declarations.  Enough is enough, and I'm removing support for
it.

RoarAudio users should better use the RoarAudio output plugin.
2017-09-19 19:38:43 +02:00
Max Kellermann 20a5ef2798 NEWS: mention the sndio mixer plugin 2017-09-19 19:38:43 +02:00
Max Kellermann 735eabb066 output/sndio: move #include below guard 2017-09-19 18:59:04 +02:00
Max Kellermann 412ff762bb output/sndio: use forward declarations 2017-09-19 18:58:13 +02:00
Max Kellermann 44bbf42a9f Merge branch 'v0.20.x' 2017-09-19 18:58:02 +02:00
Max Kellermann 75c740fe2b output/sndio: fix indent 2017-09-19 18:50:35 +02:00
Max Kellermann 6c8d86bb90 output/sndio: rename the "sio_hdl" variable to avoid clash with struct name 2017-09-19 18:49:33 +02:00
Charlie Waters b253a6b71e ffmpeg plugin: when decoded stream duration is unavailable, attempt fallback to container duration (fix MusicPlayerDaemon/MPD#110) 2017-09-18 10:39:27 +02:00
Christopher Zimmermann 030f87c90c Add sndio mixer plugin 2017-09-16 11:58:33 +02:00
Christopher Zimmermann ae941a7665 SndioOutput: Move class definition to header
no change in behaviour.
2017-09-16 09:14:56 +02:00
Christopher Zimmermann 4d563e08e1 Fix building on BSDs 2017-09-16 09:14:11 +02:00
Max Kellermann 8a81b986c0 net/AllocatedSocketAddress: pass SocketAddress by value to operator!= 2017-09-13 17:51:51 +02:00
Max Kellermann a6e62479be system/Error: include cleanup 2017-09-13 17:49:37 +02:00
Max Kellermann 6c825064ea system/Error: add more "noexcept" 2017-09-13 17:48:13 +02:00
Max Kellermann 13d02968bd system/FileDescriptor: Close() should not be called on undefined object
It does not do much harm - but it causes an unnecessary (failing)
system call.
2017-09-13 17:43:13 +02:00
Max Kellermann e576556149 system/UniqueFileDescriptor: remove duplicate "using" statements 2017-09-13 17:41:15 +02:00
Max Kellermann 66e74900df system/UniqueFileDescriptor: expose CheckDuplicate() 2017-09-13 17:40:33 +02:00