Felix Hädicke
70d0fbd715
python/makeproject: do not use hard-code absolute path to make
2023-05-21 20:41:38 +02:00
Felix Hädicke
302432e157
python/makeproject: set appropriate build jobs count depending on the number of CPUs
2023-05-21 20:41:34 +02:00
Felix Hädicke
4ab8a677dc
build/python: do not use absolute path for tar
2023-05-21 20:41:29 +02:00
Max Kellermann
52e4a4c904
build/python/build/project.py: lazy tarball extraction
2023-05-21 20:41:25 +02:00
Max Kellermann
a0f6932ebe
unix/SignalHandlers: shut down if parent process dies in --no-daemon mode
...
By default, if the parent of a process dies, the process gets SIGHUP
and is supposed to shut down. This however doesn't work for MPD,
because MPD redefines SIGHUP with a different meaning (like most
daemons do).
To work around this, we configure the kernel to send SIGTERM instead
of SIGHUP.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1706
2023-05-21 20:40:47 +02:00
Max Kellermann
6e700dab69
CommandLine: hard-code daemon=false if ENABLE_DAEMON is not set
2023-05-21 20:40:39 +02:00
Max Kellermann
35eaed7206
python/build/libs.py: update FFmpeg to 6.0
2023-05-21 20:40:39 +02:00
Max Kellermann
e7c963f2ce
python/build/libs.py: disable more unused FFmpeg features
2023-05-21 20:40:39 +02:00
Naïm Favier
949d72e368
output/PipeWire: lock thread loop in SendTag
2023-05-21 20:40:29 +02:00
Max Kellermann
8d2a184658
python/build/libs.py: update CURL to 7.88.1
2023-05-21 20:36:28 +02:00
Max Kellermann
c877a32d97
python/build/libs.py: update OpenSSL to 3.0.8
2023-05-21 20:36:23 +02:00
Max Kellermann
541468f0ca
input/async: check for errors in Seek()
...
Fixes a busy loop in BufferingInputStream::RunThreadLocked() because
the method never learns that seeking is ignored, even though the HTTP
stream is already broken and can never be read; nobody cared to check
for errors.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1727
2023-05-21 20:34:19 +02:00
Max Kellermann
d2797effa3
command/database: add missing include for UINT_MAX
2023-05-21 20:33:34 +02:00
Max Kellermann
1170fb1e1e
output/osx: change type to std::size_t to fix -Wc++11-narrowing
2023-05-21 20:33:03 +02:00
Max Kellermann
65b9b3195c
lib/dbus/AppendIter: add missing include
2023-05-21 20:33:03 +02:00
Max Kellermann
258830e913
increment version number to 0.23.13
2023-05-21 20:29:23 +02:00
Max Kellermann
c69b9780df
Merge branch 'reorder-decoder-plugins' of https://github.com/fuck-shithub/MPD
2023-05-15 21:03:35 +02:00
Max Kellermann
f869593ac8
TimePrint: minor fixup for libfmt 10
...
libfmt version 10 has difficulties formatting a `StringBuffer`, and we
need to help it by explicitly invoking the `c_str()` method.
2023-05-15 21:00:24 +02:00
Max Kellermann
181b96dd2d
command/player, SongPrint: use AudioFormatFormatter()
...
libfmt version 10 apparently doesn't know how to format a
`StringBuffer`, failing the MPD build. Since we have a formatter
specialization for `AudioFormat`, let's use that - it's better and
easier to use.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1807
2023-05-15 20:59:05 +02:00
latex
4e9f463bb6
reorder ffmpeg to be lower priority than gme
...
This should prevent ffmpeg from taking priority over the gme plugin.
The ffmpeg plugin is more buggy than gme.
One of the prominent bugs of preferring ffmpeg over gme is that ffmpeg
cannot seek SAP files while gme can. This should prevent that from
happening.
2023-05-12 00:28:56 +02:00
skidoo23
4345a656aa
output/httpd: fix libfmt icy-metaint replacement field
...
Since using libfmt (commit: dfc5b49 ) ICY MetaData was broken. Eg MP3 streams encoded with LAME were affected resulting in missing stream titles on VLC or strange noises on Sonos hardware. This commit fixes the icy-metaint field.
2023-05-04 18:15:13 +02:00
Max Kellermann
31dc8b73b7
db/update/Archive: validate directory names
...
Fixes assertion failure if the ZIP file contains a path that begins
with a slash.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1793
2023-04-30 08:46:52 +02:00
Max Kellermann
e84db4f411
db/update/Archive: ignore filenames with newline character
2023-04-30 08:45:34 +02:00
Max Kellermann
395bf34a91
db/update/Archive: move check to IsAcceptableFilename()
2023-04-30 08:42:16 +02:00
Max Kellermann
dcc7628b67
db/update/Archive: remove useless log message
2023-04-30 08:39:34 +02:00
Max Kellermann
f2a4ae15aa
db/update: pass filenames as std::string_view
2023-04-30 08:28:43 +02:00
Max Kellermann
434bcb08ee
db/simple/Song: pass std::string_view to Load{File,FromArchive}()
2023-04-30 08:21:20 +02:00
Max Kellermann
99885c4cbc
util/IntrusiveHashSet: add method remove_and_dispose()
2023-04-22 08:40:53 +02:00
Max Kellermann
90c3fe22f5
decoder/openmpt: check libopenmpt version at compile time, not at configure time
2023-04-21 17:29:20 +02:00
Simon Arlott
ad8117e7c8
decoder/openmpt: Fix build error with libopenmpt < 0.5
...
openmpt_at_end is a string, not an integer
Fixes build error:
src/decoder/plugins/OpenmptDecoderPlugin.cxx: In function 'void mod_decode(DecoderClient&, InputStream&)':
src/decoder/plugins/OpenmptDecoderPlugin.cxx:85:44: error: invalid cast from type 'std::string_view' {aka 'std::basic_string_view<char>'} to type 'unsigned in '
85 | mod.ctl_set("play.at_end", std::to_string((unsigned)openmpt_at_end));
| ^~~~~~~~~~~~~~~~~~~~~~~~
2023-04-21 17:24:42 +02:00
Benjamin Cremer
82568c0b52
Fix syntax error in mpdconf.example
2023-04-13 08:47:43 +02:00
datasone
838b19c2b5
db/SimpleDatabasePlugin: store in_playlist value of songs into database
...
Fixes hide_playlist_targets not working after server restart
Currently, `hide_playlists_targets` works by skipping songs with
`in_playlist` value set to true in
[`Directory::Walk`](https://github.com/MusicPlayerDaemon/MPD/blob/a57bcd02382947abbd961594cdf00302c0c7866a/src/db/plugins/simple/Directory.cxx#L237 ). But
`in_playlist` is not stored and only updated in
[`UpdateWalk::PurgeDanglingFromPlaylists`](https://github.com/MusicPlayerDaemon/MPD/blob/a57bcd02382947abbd961594cdf00302c0c7866a/src/db/update/Playlist.cxx#L139 ),
which will only be executed while updating DB.
This causes the problem that playlist target songs are correctly
hidden after database update, but will remain visible after mpd server
restarted. This pr solves the problem by storing `in_playlist` value
of songs into the `SimpleDatabase` file.
2023-04-12 05:18:21 +02:00
kaliko
0d2f67b523
check systemd unit dir from systemd.pc in meson
2023-04-11 21:06:53 +02:00
Max Kellermann
a57bcd0238
thread/Mutex: add RecursiveMutex
2023-04-06 21:32:18 +02:00
Max Kellermann
76497bd5f7
util/IntrusiveSortedList, event/TimerList: include cleanup
2023-04-06 10:24:53 +02:00
Max Kellermann
53ec02d5e9
net/SocketDescriptor: decouple from FileDescriptor on Windows
...
On Windows, a socket is not a file descriptor; it is a different beast
(and anyway, Windows doesn't have file descriptors).
2023-03-29 10:12:50 +02:00
Max Kellermann
7a5f485cf8
event/ServerSocket: use class UniqueSocketDescriptor in SupportsIPv6()
2023-03-29 10:06:48 +02:00
Max Kellermann
90565b1e36
test/run_{input,output}: add missing includes
2023-03-29 10:06:48 +02:00
Max Kellermann
6f7c7a2149
event/EpollBackend: add missing header guard
2023-03-21 11:00:41 +01:00
Max Kellermann
91123983ad
Revert "python/build/meson.py: keep Meson from executing Android-x86 test binaries"
...
This reverts commit 8ab2722300 . The
"needs_exe_wrapper" setting was already there, and the new one was
misplaced, it belongs in "[properties]".
2023-03-21 09:46:25 +01:00
Max Kellermann
2506edbffb
python/build/libs.py: update OpenSSL to 3.1.0
2023-03-21 09:39:28 +01:00
Max Kellermann
929520ecd2
python/build/libs.py: update CURL to 8.0.1
2023-03-21 09:38:22 +01:00
Max Kellermann
a20d467bf1
event/Loop: move quit_injected check to inside #ifdef HAVE_THREADED_EVENT_LOOP
2023-03-20 15:02:32 +01:00
Max Kellermann
102dc123e8
LogBackend: log to stderr (regression fix)
2023-03-14 20:25:28 +01:00
Max Kellermann
b4d0b23369
LogBackend: use fmt::print()
2023-03-14 20:24:14 +01:00
Max Kellermann
119a949bb5
ls: use fmt::print()
2023-03-14 20:20:46 +01:00
Max Kellermann
f5b22bf2c3
input/Offset: remove unused macro PRIoffset
2023-03-14 20:20:10 +01:00
Max Kellermann
5b7a89d714
mixer/plugins/volume_mapping: convert to C++
2023-03-14 20:18:41 +01:00
Max Kellermann
5b41857a22
mixer/plugins/volume_mapping: add SPDX header
2023-03-14 20:08:43 +01:00
Max Kellermann
688d9ff114
util/UriExtract: add uri_get_path_query_fragment()
...
Rename uri_get_path() to uri_get_path_query_fragment() and add a new
uri_get_path() function.
2023-03-14 20:03:17 +01:00