Commit Graph

17458 Commits

Author SHA1 Message Date
Max Kellermann 4d6ae6ffdd output/PipeWire: add nullptr check to SetVolume()
If the PipeWire output has not yet been enabled and no thread_loop has
been created yet, a nullptr dereference in SetVolume() was possible
because nullptr was passed to pw_thread_loop_lock().
2022-07-08 11:32:59 +02:00
Max Kellermann ecee6f415b mixer/MixerInternal: remember error details
If a mixer is not open, rethrow the original exception each time
setting the volume is requested.  This further improves error messages
sent to MPD clients.
2022-07-08 11:11:53 +02:00
Max Kellermann 47680f936b mixer/All: auto-open "global" mixers
If a mixer is "global", it is available even if the output isn't
open.  However, since the check was changed from IsEnabled() to
IsReallyEnabled(), enabled outputs have not yet been used have not
been "really" enabled yet, preventing using the mixer.

Fixes a regression by commit 35dbc1a90c
(part of https://github.com/MusicPlayerDaemon/MPD/pull/1480).

Closes https://github.com/MusicPlayerDaemon/MPD/issues/1563
2022-07-08 11:05:26 +02:00
Max Kellermann 2d7181105d output/MultipleOutputs: SetVolume() throws on error
This reveals more about the nature of an error instead of just
returning "problems setting volume".
2022-07-08 10:56:55 +02:00
Max Kellermann 9bdc75524b python/build/libs.py: update CURL to 7.84.0 2022-07-08 10:13:52 +02:00
Max Kellermann 2f6ceb4949 python/build/libs.py: update OpenSSL to 3.0.5 2022-07-08 10:10:42 +02:00
Max Kellermann cd933aa35f subprojects: update fmt and vorbis 2022-07-08 10:08:27 +02:00
Max Kellermann 138738075b libfmt 9 support
libfmt version 9 broke the API by removing fmt::make_args_checked().

Fixes https://bugs.debian.org/1014543
2022-07-08 10:06:53 +02:00
Max Kellermann 7dd65f3028 Merge branch 'v0.23.x' 2022-07-04 19:21:18 +02:00
Max Kellermann 2ee57f9b0d output/PipeWire: add nullptr check, fixing crash with PipeWire 0.3.53
Since PipeWire 0.3.53, control names can apparently be nulled, leading
to crashes in applications assertion that the string cannot be
nullptr.

Closes https://github.com/MusicPlayerDaemon/MPD/issues/1558
2022-07-04 19:20:08 +02:00
Max Kellermann bc56f8c2f0 util/ConstBuffer: remove obsolete library
Everything has been migrated to std::span.
2022-07-04 19:15:10 +02:00
Max Kellermann 596ff7e6bf output/*: use std::span instead of ConstBuffer 2022-07-04 19:14:12 +02:00
Max Kellermann e8667f99be util/OptionParser: use std::span instead of ConstBuffer 2022-07-04 19:04:16 +02:00
Max Kellermann 9b427b3171 command/*: use std::span instead of ConstBuffer 2022-07-04 18:58:13 +02:00
Max Kellermann baff5e5594 lib/yajl: use std::span instead of ConstBuffer 2022-07-04 18:37:36 +02:00
Max Kellermann 020c9b41cc lib/icu: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann e975e2e477 lib/ffmpeg: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann 4e1dc562f7 lib/curl: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann d097babe73 lib/chromaprint: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann 8fa212f04d lib/cdio: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann b9c9a5f1dd db/*: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann 4fb8b45111 song/Filter: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Max Kellermann 6c107443d3 input/qobuz: include cleanup 2022-07-04 18:37:35 +02:00
Max Kellermann 67c6d111a8 filter/*: use std::span instead of ConstBuffer 2022-07-04 18:37:35 +02:00
Marceline Cramer 18ebd42c52
.github: Add reminder to include backtrace in issue template 2022-07-04 10:32:58 -06:00
Max Kellermann 9675cc77e2 decoder/*: use std::span instead of ConstBuffer 2022-07-04 18:11:21 +02:00
Max Kellermann 4ce1dae673 pcm/*: use std::span instead of ConstBuffer 2022-07-04 18:11:21 +02:00
Max Kellermann d89136b09c util/ConstBuffer: hard-code std::span support 2022-07-04 18:09:32 +02:00
Max Kellermann d58c38943a util/StringView: remove obsolete class
Everything has been migrated to std::string_view.
2022-07-04 15:04:31 +02:00
Max Kellermann 66704ec879 util/UriExtract: use std::string_view instead of StringView 2022-07-04 15:04:31 +02:00
Max Kellermann 422c1e9288 util/TemplateString: remove StringView support 2022-07-04 15:04:31 +02:00
Max Kellermann 683f0da2e7 tag/*: use std::string_view instead of StringView 2022-07-04 15:04:31 +02:00
Max Kellermann c7a8fc91c0 storage/curl: use std::string_view instead of StringView 2022-07-04 15:04:31 +02:00
Max Kellermann cfd255a014 lib/xiph: use std::string_view instead of StringView 2022-07-04 15:04:31 +02:00
Max Kellermann 1c30b3d5a1 lib/dbus/UDisks2: use std::string_view instead of StringView 2022-07-04 15:04:31 +02:00
Max Kellermann 4964eda167 fs/StandardDirectory: use std::string_view instead of StringView 2022-07-04 15:04:31 +02:00
Max Kellermann 502e5f006a decoder/*: use std::string_view instead of StringView 2022-07-04 14:50:18 +02:00
Max Kellermann 23235e3194 db/upnp/Directory: use std::string_view instead of StringView 2022-07-04 14:50:18 +02:00
Max Kellermann 93834fe389 db/simple/Directory: use std::string_view instead of StringView 2022-07-04 14:50:18 +02:00
Max Kellermann bd32b229b5 config/Path: use std::string_view instead of StringView 2022-07-04 14:41:39 +02:00
Max Kellermann c7d2cb855a Permission: use std::string_view instead of StringView 2022-07-04 14:38:29 +02:00
Max Kellermann 04c924ae3b playlist/Registry: use std::string_view instead of StringView 2022-07-04 14:36:21 +02:00
Max Kellermann 6c8a85a391 playlist/{asx,cue,rss,xspf}: use std::string_view instead of StringView 2022-07-04 14:35:52 +02:00
Max Kellermann 74780131bd lib/zlib/GzipOutputStream: add SyncFlush() 2022-07-04 10:09:04 +02:00
Max Kellermann 2c092d2613 lib/zlib/GzipOutputStream: add exception API docs 2022-07-04 10:08:55 +02:00
Max Kellermann 171b31ae67 lib/zlib/GzipOutputStream: rename Flush() to Finish() 2022-07-04 10:08:54 +02:00
Max Kellermann 5b3abe2c9c lib/zlib/GzipOutputStream: grow Write() buffer to 64 kB 2022-07-04 10:08:53 +02:00
Max Kellermann 59186f1fb0 event/Loop: include cleanup 2022-07-04 09:55:48 +02:00
Max Kellermann 5e68531428 event/SocketEvent: move ssize_t to class BufferedSocket 2022-07-04 09:54:08 +02:00
Max Kellermann e7b15a9041 lib/curl/Request: remove obsolete method prototypes 2022-07-02 18:42:08 +02:00