Max Kellermann
815b248990
*/Registry: use constinit
2023-03-07 12:04:16 +01:00
Max Kellermann
42f6a0441c
use [[gnu::...]] attributes
2023-03-06 16:14:15 +01:00
Max Kellermann
148aca23be
use SPDX IDs, replacing the long copyright headers
2023-03-06 14:59:48 +01:00
Max Kellermann
d7de8b1453
Merge branch 'iss-1546' of https://github.com/sp1ff/MPD
2022-12-29 08:37:25 +01:00
Max Kellermann
fa58db798b
lib/fmt/RuntimeError: new library
...
Replacing FormatRuntimeError().
2022-11-29 14:10:34 +01:00
Michael Herstine
1adc2c0c51
playlist_load_into_queue: log on failure to load song.
...
Log at level error when failing to load a song. Limit the number
of log messages produced to avoid flooding the log file when attempting
to load a large, broken playlist.
Closes #1546
2022-11-26 08:28:10 -08:00
Max Kellermann
1429d6bfb9
playlist/cue/Parser: use Split()
2022-10-15 08:33:51 +02:00
Max Kellermann
ced6a5ae07
playlist/cue/Parser: remove always-failing assert()
...
Not the assert() here fails, but the illegal src[-1] call. Yet
another regression from commit 21e4c25e61
2022-10-15 08:32:37 +02:00
Max Kellermann
a966cfeb1f
playlist/cue/CueParser: fix nullptr dereference
...
Regression from commit 21e4c25e61
2022-08-18 17:06:51 +02:00
Rosen Penev
3f133dd586
use data() instead of &[0]
...
No need for C pointer manipulation.
Removed data() for string_view as [] can be used without.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-07-20 13:50:48 -07:00
Max Kellermann
254ee00c37
fs/Path: rename GetSuffix() to GetExtension()
...
The "extension" is the name after the dot, but the "suffix" is the
string including the dot.
2022-07-14 18:12:00 +02:00
Max Kellermann
cc0def15c4
Copyright year 2022
2022-07-14 17:59:35 +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
d882c3361d
playlist/PlaylistPlugin: use std::string_view
2022-07-01 11:31:31 +02:00
Max Kellermann
21e4c25e61
playlist/cue/CueParser: more std::string_view
2022-07-01 11:29:10 +02:00
Max Kellermann
c9723ee4b7
playlist/SoundCloud: use std::string_view
2022-07-01 11:16:42 +02:00
Max Kellermann
c34f3c9b94
tag/Handler: use StringIsEqualIgnoreCase()
2022-06-30 10:50:56 +02:00
Max Kellermann
232084c2f9
playlist/cue/CueParser: use std::string_view in public API
2022-06-30 10:50:53 +02:00
Max Kellermann
ec66ee3bfb
tag/Handler: use std::string_view instead of StringView
2022-06-29 17:22:17 +02:00
Rosen Penev
250011f016
return by braced init list
...
shorter
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-11-22 23:28:08 -08:00
Max Kellermann
771c46032f
meson.build: add missing libfmt dependencies
...
Fixes https://github.com/MusicPlayerDaemon/MPD/discussions/1281
The problem occurred when there was libfmt-dev installed, but it was
too old (e.g. on Debian Buster), and Meson used the wrap fallback.
Those internal MPD libraries where the libfmt dependency was not
declared were still using the old system libfmt headers, which are not
ABI-compatible with MPD's own libfmt build.
2021-10-15 14:26:59 +02:00
Max Kellermann
bf656af555
playlist/SoundCloud: use AllocatedString for concatenation
2021-10-13 12:47:57 +02:00
Max Kellermann
d2b8852d19
playlist/SoundCloud: move code to TranslateSoundCloudUri()
2021-10-13 12:23:15 +02:00
Max Kellermann
f510564d9d
more [[gnu::...]] attributes
2021-10-13 12:07:05 +02:00
James D. Smith
acc1bd6297
playlist/PlaylistSong: Remove dots from playlist file paths.
2021-10-07 13:15:40 +02:00
Max Kellermann
bdd8c34c67
Merge branch 'move' of git://github.com/neheb/MPD
2021-08-29 06:47:05 +02:00
Rosen Penev
0b774df375
prevent use after move
...
These should be equivalent anyway.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-08-26 13:38:36 -07:00
Rosen Penev
53ffcf455c
make several member functions const
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-08-26 13:15:52 -07:00
Rosen Penev
da1783cdff
clang-tidy: remove pointless const
...
Found with readability-const-return-type
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-08-21 00:51:21 -07:00
Rosen Penev
30e3ef4c8e
constexpr/std::array conversions
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-08-16 21:05:56 -07:00
Max Kellermann
bd893e6336
release v0.22.10
...
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAmENYHwQHG1heEBtdXNp
Y3BkLm9yZwAKCRAjbopYxttFEpGtD/9ToU27x36NAAFpChicSqbu3h2wtJ29lowT
ivV80XB26pQeGK0DSXADSs38MVXo42i3vqg0zGWV9TRbcDs5VErXANVLN16qsKCu
U0v1BDY11UiYp6ATiUjIahyG1UsmbRVZlfDyVIhYvmFpGLFw6+03HH6w2k/v85ns
FxyXkYDYcUokPJPEQcChE1eIwKsGM6MjbdVIkJAEo3wGhL/Hhy2KUskrFcCo1PDj
7xxGrwauG+8wSjAWMA5vzl3udRaDauuXztm5QbQIDdsbRaCiBAdgkzC0PvIxTOr0
bR4WHVB0KSiM96yIXNtg/WZxO0XrxppmX/E4eZSgz0JGKMrAHcoTJAUCIDu3X719
gJnJLg7r2X5dTchXezv09YoJolKbw1bOooyAuE4FCDWMsOa2GRuBZC+8w7DNTZuo
PTh+Z40fnfpNBofe+e/WZrXr6i2TKk8CqHEidq2GHlOkvTR7g6m8MjOLvZNHotMb
9ECr9MhzXH+nvEX8IaxvjWsfLJiDbUgnVsQ+6akGtkbragaDN/Wgr/XdkELoLlsK
LZFY5ngnZmDXOu4tjBLJtfrTkZB2/Hld4xtF1qlsy9fvZBRKeKlpABTLaa8r/vnR
Ta0rB2O3/dculZbHZRUnZvLS4Xv4g322vW9Wso9IBoWRn9fC8b2zR93k7breAqcn
pKbYGg/j6g==
=/954
-----END PGP SIGNATURE-----
Merge tag 'v0.22.10'
release v0.22.10
2021-08-06 18:21:59 +02:00
Max Kellermann
1761fb14af
fs/Traits: add PathTraitsUTF8::IsAbsoluteOrHasScheme()
2021-08-05 20:09:06 +02:00
Rosen Penev
9ef1cf15a9
clang-tidy: default virtual destructors
...
Found with cppcoreguidelines-special-member-functions
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-05-30 22:46:46 -07:00
Max Kellermann
c729f16dcd
song/DetachedSong: copy the AudioFormat from LightSong
...
Enables the "Format" row in "playlistinfo" responses.
https://github.com/MusicPlayerDaemon/MPD/issues/1094
2021-02-18 22:16:11 +01:00
Rosen Penev
594dfe572b
clang-tidy: mark a bunch of variables constexpr
...
Found with cppcoreguidelines-interfaces-global-init
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-01-16 18:35:31 -08:00
Max Kellermann
abbd980671
Merge branch 'v0.22.x'
2021-01-01 19:59:15 +01:00
Max Kellermann
5348f8c9c8
copyright year 2021
2021-01-01 19:54:28 +01:00
Max Kellermann
51e5b56b3a
playlist/registry: remove duplicate function ExtractMimeTypeMainPart()
...
This is the same as GetMimeTypeBase(), which has already been applied.
2020-11-04 21:20:43 +01:00
Max Kellermann
bb07fd42ce
util/MimeType: migrate GetMimeTypeBase() to std::string_view
2020-11-04 21:20:03 +01:00
Max Kellermann
35a232105e
util/UriExtract: uri_get_suffix() returns std::string_view
...
No need to copy it to a buffer.
2020-11-04 21:08:26 +01:00
Max Kellermann
19dd1a25d7
{decoder,archive,playlist}/plugin: pass std::string_view to SupportsMimeType()
2020-11-04 21:00:49 +01:00
Max Kellermann
92a218b7a9
playlist/registry: add option "as_directory"
...
This allows users to disable the "CUE files as directories" feature
without having to disable the CUE playlist plugin completely. This
feature has been annoying some users.
2020-11-04 16:13:12 +01:00
Max Kellermann
bb009daf66
playlist/registry: simplify ExtractMimeTypeMainPart()
2020-11-04 13:34:04 +01:00
Max Kellermann
6682cf749f
playlist/cue/parser: use lambda to fix ambiguous overload
...
On Windows, there is an IsWhitespaceOrNull() overload with TCHAR, and
the compiler doesn't know which one to pass to std::find_if().
2020-10-05 21:15:10 +02:00
Max Kellermann
492607ecbe
playlist/cue/parser: use StringView internally
...
Don't copy the input StringView.
2020-10-05 21:04:49 +02:00
Max Kellermann
e0c75da266
playlist/cue/parser: pass StringView to Feed()
2020-10-05 20:33:58 +02:00
Max Kellermann
34bb53a29f
playlist/cue/parser: add noexcept
2020-10-05 20:33:50 +02:00
Max Kellermann
cb4fdac469
playlist/cue/parser: fix nullptr dereference
...
Closes https://github.com/MusicPlayerDaemon/MPD/issues/974
2020-10-05 20:26:42 +02:00
Max Kellermann
ac46a84391
playlist/cue/parser: fix off-by-one buffer overflow
...
cue_next_word() can return a pointer one past the end of the string if
the word is followed by the terminating null byte.
2020-10-05 20:26:02 +02:00