Max Kellermann
1417578b3d
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-05-21 20:57:38 +02:00
Max Kellermann
96befa138c
db/update/Archive: ignore filenames with newline character
2023-05-21 20:56:38 +02:00
Max Kellermann
16a99804de
db/update/Archive: move check to IsAcceptableFilename()
2023-05-21 20:56:32 +02:00
Max Kellermann
75a39ed279
db/update/Archive: remove useless log message
2023-05-21 20:55:59 +02:00
Benjamin Cremer
4d357ab77c
Fix syntax error in mpdconf.example
2023-05-21 20:51:57 +02:00
datasone
d4f3dd49b4
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`](a57bcd0238/src/db/plugins/simple/Directory.cxx (L237)
). But
`in_playlist` is not stored and only updated in
[`UpdateWalk::PurgeDanglingFromPlaylists`](a57bcd0238/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-05-21 20:51:47 +02:00
kaliko
4ec6d0555a
check systemd unit dir from systemd.pc in meson
2023-05-21 20:51:33 +02:00
Max Kellermann
a6a1182c4c
python/build/libs.py: update OpenSSL to 3.1.0
2023-05-21 20:50:03 +02:00
Max Kellermann
a59c9c602b
python/build/libs.py: update CURL to 8.0.1
2023-05-21 20:50:03 +02:00
Max Kellermann
0c4d824d64
subprojects/sqlite3.wrap: update to 3.41.0-1
2023-05-21 20:50:03 +02:00
Max Kellermann
a5281856c9
python/build/libs.py: update WildMidi to 0.4.5
2023-05-21 20:50:03 +02:00
Max Kellermann
0206a46d39
decoder/gme: require GME 0.6 or later
...
This allows dropping a few compile-time version checks and we can use
pkg-config to detect the library.
2023-05-21 20:50:03 +02:00
Max Kellermann
9475ef2202
fs/Charset: assign fs_charset
...
This got lost 8 years ago in commit 87c88fcb27
D'oh!
2023-05-21 20:50:03 +02:00
Max Kellermann
edae00e719
fs/Charset: remove useless log message
2023-05-21 20:50:03 +02:00
Max Kellermann
fb695bc55f
command/{file,storage}: remove stray "#pragma GCC diagnostic pop"
2023-05-21 20:50:03 +02:00
Max Kellermann
23a5b8fd3c
python/build/meson.py: remove unused import
2023-05-21 20:43:09 +02:00
Max Kellermann
273a93cfcf
build/python/cmake: set CMAKE_C_FLAGS_INIT, not CMAKE_C_FLAGS
...
According to
https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_FLAGS_INIT.html
the _INIT variables should be set in the toolchain file.
2023-05-21 20:43:05 +02:00
Max Kellermann
d105985d78
build/python/cmake: set CMAKE_OSX_SYSROOT on macOS
2023-05-21 20:43:00 +02:00
Max Kellermann
f8cfeb39e9
build/python/cmake: add "env" parameter
2023-05-21 20:42:51 +02:00
Max Kellermann
d5d3982d3c
build/python/build/project.py: add "lazy" parameter to make_build_path()
2023-05-21 20:42:27 +02:00
Max Kellermann
47341107ea
build/python/build/project.py: raise exception on regex mismatch
2023-05-21 20:42:18 +02:00
Max Kellermann
90eaa87a4d
python/build/zlib.py: use autotools to be more portable
...
Right now, zlib is only built for Windows, but we may eventually
changed that, so don't hard-code `win32/Makefile.gcc`.
2023-05-21 20:42:12 +02:00
Max Kellermann
b09a54b2c2
python/build/autotools.py: use toolchain.arflags
2023-05-21 20:42:04 +02:00
Max Kellermann
10aec174d5
python/{cmake,autotools}: build in verbose mode
...
Make sure all the gory details are visible in CI logs.
2023-05-21 20:41:49 +02:00
Max Kellermann
d32ed194e8
python/build/autotools.py: dump config.log on configure error
...
For better error logs on CI.
2023-05-21 20:41:44 +02:00
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