Max Kellermann
7bc1c9925b
event/SocketEvent: add assert()
2020-12-02 15:12:30 +01:00
Max Kellermann
ce4c69dd95
test/util/TestException: new unit test
2020-12-02 15:09:47 +01:00
Max Kellermann
8eea825462
test/util/TestTemplateString: new unit test
2020-12-02 15:03:51 +01:00
Max Kellermann
49e1ce7c43
test/TestUtil: move to test/util/
2020-12-02 15:02:45 +01:00
Max Kellermann
618f94f589
util/TemplateString: add StringView cast operator
2020-12-02 15:00:49 +01:00
Max Kellermann
ad2c22844c
util/TemplateString: add FromLiteral()
2020-12-02 15:00:39 +01:00
Max Kellermann
b8df851414
io/FileDescriptor: use std::size_t
2020-12-02 14:56:00 +01:00
Max Kellermann
a584141cae
io/Open: add `flags` parameter to OpenReadOnly()
2020-12-02 14:52:51 +01:00
Max Kellermann
4e88f95f94
event/Loop: move the "again" check out of the mutex scope
2020-12-01 20:29:21 +01:00
Max Kellermann
790e540c19
event/Loop: use ClockCache
2020-12-01 20:25:42 +01:00
Max Kellermann
16074c565f
time/ClockCache: new library
2020-12-01 20:22:26 +01:00
Max Kellermann
2a1dd55b11
event/Loop: include cleanup
2020-12-01 20:19:40 +01:00
Max Kellermann
be20f760ab
event/Loop: disallow copying
2020-12-01 20:18:33 +01:00
Max Kellermann
8050394003
event/Loop: add `noexcept`
2020-12-01 20:10:53 +01:00
Max Kellermann
ff8b5bc61b
event/Loop: reorder methods
2020-12-01 20:09:25 +01:00
Max Kellermann
ef8797821f
event/Loop: inline field initializers
2020-12-01 20:07:35 +01:00
Max Kellermann
5f2797e7cc
event/Loop: add more assertions to dtor
2020-12-01 20:05:54 +01:00
Max Kellermann
e286702f4c
event/Loop: rename AddDeferred() to AddDefer()
2020-12-01 17:26:39 +01:00
Max Kellermann
c58aaf545f
event/IdleEvent: make a special case of DeferEvent
2020-12-01 17:14:24 +01:00
Max Kellermann
990f2dc1cf
event/DeferEvent: use class IntrusiveList instead of boost::intrusive::list
2020-12-01 17:14:24 +01:00
Max Kellermann
774b4313f2
event/DeferEvent: split the thread-safe version into new class InjectEvent
2020-12-01 17:14:24 +01:00
Max Kellermann
1ecbc2ff0f
event/DeferEvent: explicitly forbid copying
2020-12-01 17:14:24 +01:00
Max Kellermann
fd8e38f8cd
event/DeferEvent: use `using` instead of `typedef`
2020-12-01 17:14:24 +01:00
Max Kellermann
e86d4db55c
Merge branch 'v0.22.x'
2020-12-01 17:14:21 +01:00
Max Kellermann
d9583faf06
input/{tidal,qobus}: add missing includes for assert()
2020-12-01 17:14:11 +01:00
Max Kellermann
2788cf9330
input/tidal: add missing include for assert()
2020-12-01 17:13:13 +01:00
Max Kellermann
9420c74101
util/AllocatedArray: add nullptr constructor
2020-11-30 22:30:57 +01:00
Max Kellermann
b1bef9c21d
util/AllocatedArray: add method data()
2020-11-30 22:30:28 +01:00
Max Kellermann
5b0ef7ea98
util/AllocatedArray: add types pointer, const_pointer
2020-11-30 22:30:25 +01:00
Max Kellermann
ab53c414bc
util/StringView: add method SplitLast()
2020-11-30 22:29:38 +01:00
Max Kellermann
d547ace749
io/FileDescriptor: use std::size_t
2020-11-30 22:27:16 +01:00
Max Kellermann
b47e0cffdd
util/TemplateString: rename CharAsString() to FromChar()
2020-11-30 22:23:28 +01:00
Max Kellermann
3af35aee9e
util/TemplateString: add cast operators
2020-11-30 22:22:24 +01:00
Max Kellermann
02314ac7dd
util/TemplateString: rewrite as constexpr functions
...
Hooray C++17!
2020-11-30 22:19:57 +01:00
Max Kellermann
e7c4e87ac4
util/TemplateString: remove unnecessary implementation for static variable
...
This is obsolete since C++17.
2020-11-30 22:13:13 +01:00
Max Kellermann
de58bfbb7f
util/TemplateString: use std::size_t
2020-11-30 22:13:08 +01:00
Max Kellermann
0dda4c06b1
util/TemplateString: no indent after `namespace`
2020-11-30 22:13:04 +01:00
Max Kellermann
79fd6143ec
lib/dbus/Values: use T::Traits, not T
...
This template was never instantiated, so the problem never occurred.
2020-11-30 22:11:18 +01:00
Max Kellermann
8f89e3f7f4
lib/dbus/Values: use `using` instead of `typedef`
2020-11-30 22:11:14 +01:00
Max Kellermann
fc01d11b8d
odbus/Types: use `using` instead of `typedef`
2020-11-30 22:08:37 +01:00
Max Kellermann
0c28d8dcbe
time/ISO8601: support YYYY-MM (without day of month)
2020-11-30 21:55:12 +01:00
Max Kellermann
764eaadd25
time/Math: new library
2020-11-30 21:55:05 +01:00
Max Kellermann
273771ffec
net/SocketAddress: add CastTo()
2020-11-30 21:51:07 +01:00
Max Kellermann
32ce9ce919
net/IPv[46]Address: pass SocketAddress by value to Cast()
2020-11-30 21:49:07 +01:00
Max Kellermann
34a070f5a6
net/IPv[46]Address: add Cast(const sockaddr_in&)
2020-11-30 21:49:02 +01:00
Danilo Spinella
92bfdffa42
lib/ffmpeg/Filter: Add define required for avutil
2020-11-30 20:06:21 +01:00
Max Kellermann
ac4975cd7a
util/MimeType: relicense to BSD-2
2020-11-18 15:28:21 +01:00
Max Kellermann
fbbbfb9668
Merge branch 'v0.22.x'
2020-11-16 09:41:20 +01:00
Max Kellermann
38b41fc3fd
filter/ffmpeg: detect the output sample format
...
Some FFmpeg filters change the sample format, and since MPD assumes
this never happens, this results in loud noise instead of music. This
commit finally implements the TODO comment by sending one frame of
silence to the filter and checking the output frame's format.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1009
2020-11-16 09:39:34 +01:00
Max Kellermann
394f69bee1
output/Control: allow copy elision (fix -Wpessimizing-move)
2020-11-15 19:55:11 +01:00