Max Kellermann
c94eee6199
Merge branch 'master' of https://github.com/lerenwe/MPD-Windows-With-Libsample
2023-02-23 14:44:06 +01:00
Sweet Blue
2a75222fe2
Added libsamplerate to win32 build script
2023-02-23 14:26:32 +01:00
Sweet Blue
7d9d173c9f
Updated libs.py to integrate libsamplerate 0.2.2
2023-02-23 14:25:11 +01:00
Dave Hocker
f248fe2dec
Resolve deprecation warnings by replacing use of sprintf with FmtBuffer
2023-02-06 11:56:49 +01:00
Brad Smith
e0df0b6d74
oss: Remove use of the soundcard.h header, OpenBSD no longer uses OSS
2023-02-03 18:38:20 -05:00
Sean DuBois
a41414e0e0
Decoder/FluidSynth: Allow gain to be adjusted
2023-02-01 12:00:19 -05:00
Max Kellermann
f1cea1f152
util/IntrusiveHashSet: add unlink(), is_linked()
2023-01-31 13:07:26 +01:00
Max Kellermann
02f5698868
event/Loop: remove unnecessary include
...
Not used since a3b32819b1
2023-01-31 13:04:25 +01:00
Bryan Waite
e25816fc05
Provide alternative ways to check for
...
https://superuser.com/questions/287371/obtain-kernel-config-from-currently-running-linux-system/287372#287372
2023-01-31 08:21:39 +00:00
Max Kellermann
5b07c8fc6c
util/CharUtil: add IsLowerAlphaNumericASCII()
2023-01-29 09:39:40 +01:00
Max Kellermann
b45afd1cab
util/StringBuffer: add `constexpr`
2023-01-29 09:38:40 +01:00
Max Kellermann
8b73257a86
storage/meson.build: move MemoryDirectoryReader.cxx to storage_api.a
...
This library is required by the plugins, so this fixes a dependency issue.
2023-01-29 08:21:58 +01:00
Max Kellermann
def6fffcf1
event/Loop: fixup for NO_FINE_TIMER_EVENT
2023-01-29 08:07:03 +01:00
Max Kellermann
78b13577ef
test/net/TestIPv[46]Address: add more tests
2023-01-28 08:15:41 +01:00
Max Kellermann
1f5d50ccce
lib/curl/Setup: include cleanup
2023-01-28 08:06:10 +01:00
Max Kellermann
ebf65572dd
util/ByteOrder: remove unnecessary operator=
...
The compiler can just use the uint32_t constructor instead. This was
redundant code.
2023-01-28 07:48:03 +01:00
Max Kellermann
c30c293d6f
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-01-28 07:44:59 +01:00
Max Kellermann
9ee1be6fba
command/database: add missing include for UINT_MAX
2023-01-23 15:50:49 +01:00
Max Kellermann
76177dbc79
win32/HResult: use [[gnu::const]]
2023-01-23 15:35:36 +01:00
Max Kellermann
6cc532c9a0
win32/HResult: remove unused function FormatHResultError()
2023-01-23 15:35:36 +01:00
Max Kellermann
3cc770a00b
remove obsolete Boost dependency
...
Boost makes building a piece of software much more difficult than
necessary. It's a huge library, and just uncompressing it takes a
considerable amount of time. MPD only used a tiny fraction of it, yet
its header bloat made the MPD build very slow. Locating Boost was
difficult due to its arcane build system and its resistance to use
pkg-config; it's always a special case. MPD could never use features
of newer Boost versions because Linux distributions always shipped old
Boost versions. Boost made everything complicated and slow.
So, finally, after getting rid of GLib (commit ccdb94b06c
), switching
to C++ and using Boost (commit 0801b3f495
), we've finally get rid of
it 8 years later.
Unfortunately, I had to reimplement parts of it along the way
(e.g. IntrusiveList). Kind of NIH, but on the other hand, compiling
MPD has become much easier for users.
2023-01-23 15:06:58 +01:00
Max Kellermann
7ef0bfbdf1
event/meson.build: disable Boost
2023-01-23 14:58:38 +01:00
Max Kellermann
bafde1900b
lib/nfs/Manager: use IntrusiveList instead of boost::intrusive::set
...
MPD usually has only one NFS connection, maybe two, so managing them
in a tree seems like overkill, and since we want to get rid of Boost
anyway...
2023-01-23 14:58:09 +01:00
Max Kellermann
5844242cfb
input/cache/Manager: use IntrusiveHashSet instead of boost::intrusive::set
2023-01-23 14:19:22 +01:00
Max Kellermann
7e7cdf73b9
input/InputStream: add method GetUriView()
2023-01-23 14:15:18 +01:00
Max Kellermann
5ca74acd8d
input/InputStream: allow emplacing the URI
2023-01-23 14:15:18 +01:00
Max Kellermann
cd2aaac0c2
output/osx: fix typo
2023-01-23 14:15:18 +01:00
Max Kellermann
ff8a7225fc
output/osx: change type to std::size_t to fix -Wc++11-narrowing
2023-01-23 14:06:56 +01:00
Max Kellermann
c6eac285ea
test/util/TestRingBuffer: add "U" literal suffix to work around -Wsign-compare
2023-01-23 14:05:55 +01:00
Max Kellermann
d0be122fc6
output/osx: use class RingBuffer instead of boost::lockfree::spsc_queue
2023-01-23 13:55:50 +01:00
Max Kellermann
01e5a7b1b5
output/wasapi: use class RingBuffer instead of boost::lockfree::spsc_queue
2023-01-23 13:44:54 +01:00
Max Kellermann
0b42018377
output/PipeWire: use class RingBuffer instead of boost::lockfree::spsc_queue
2023-01-23 13:44:54 +01:00
Max Kellermann
7cb6c70bc2
output/alsa: use class RingBuffer instead of boost::lockfree::spsc_queue
2023-01-23 13:44:54 +01:00
Max Kellermann
f31ae7c556
util/RingBuffer: replacement for boost::lockfree::spsc_queue
2023-01-23 13:44:54 +01:00
Max Kellermann
5728c514d1
output/wasapi: use std::hardware_destructive_interference_size
2023-01-23 13:44:53 +01:00
Max Kellermann
debac0dfd4
win32/ComWorker: use std::queue/Mutex/Cond instead of boost::lockfree::spsc_queue/WinEvent
2023-01-23 13:25:07 +01:00
Max Kellermann
80b1f49af7
lib/dbus/AppendIter: add missing include
2023-01-22 12:29:54 +01:00
Max Kellermann
868958e159
util/IntrusiveHashSet: fix find_if() concept
2023-01-22 12:25:55 +01:00
Max Kellermann
52af03a5a6
util/IntrusiveHashSet: implement remove_and_dispose_if() with constant_time_size
2023-01-22 12:24:50 +01:00
Max Kellermann
7475e971bc
util/IntrusiveList: remove_and_dispose_if() returns the number of removed items
2023-01-22 12:24:43 +01:00
Max Kellermann
c65b1fee8d
util/IntrusiveHashSet: check key equivalence in remove_and_dispose_if()
2023-01-22 12:24:41 +01:00
Max Kellermann
e2abade6aa
util/IntrusiveList: add postfix operator++
2023-01-22 12:24:33 +01:00
Max Kellermann
57673136d8
util/IntrusiveHashSet: add method expire_find_if()
2023-01-22 12:24:30 +01:00
Max Kellermann
49e122a81d
util/IntrusiveHashSet: add method remove_and_dispose_if(key)
2023-01-22 12:24:23 +01:00
Max Kellermann
74976d3199
event: make FineTimerEvent optional
...
Several applications don't need it, so let's eliminate the code from
the executable.
2023-01-22 12:21:46 +01:00
Max Kellermann
a750e4afa7
event/Loop: move code to GetEarlierTimeout()
2023-01-22 12:19:07 +01:00
Max Kellermann
c122e990a3
Merge branch 'master' of https://github.com/faceless2/MPD
2023-01-17 19:03:49 +01:00
Max Kellermann
b1422fbda4
release v0.23.12
...
-----BEGIN PGP SIGNATURE-----
iQJBBAABCgArFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAmPG4OcNHG1heEBibGFy
Zy5kZQAKCRAjbopYxttFElGQD/4lXFixr2fJuAWFYyFT4ebr2w7sPyhXwjlt5uCL
HTaMxTgQbhMmkHbGEO96UbF7gROGfq+dyvYTEmjWcVPTr/US3M8/mjT9T/DCLj6+
kF7rZM5ft6npqVxqikg/TQcUgoiSsgfI7dEK/vcXELPyx78bCaq0M0sd2GZvwiiM
vK9cxxDJ/RkF2dtfXRfGTJlihgQxaiuBZx8Bi3wJjbjvi/Lg85cu3iot9zFy5iDN
gNzC39dnPYv261lAT/LLNpzLYQzIFE5ul+8ucRNPo+mMS/odSPRdL9XYFDtarsqP
3Va83DChg7S6/GWfDeW81mQYPDuZ+1rPqbV5zEGimPsDWP9RugzPpZiFJlZrh8w7
MJp66RYxUWQpracRZIW4zMRiSzGSI3OXbvhx6qBmsn1CuQ19TkovWuRleD4lpfFv
dFzKHrdatJivM3xvq6CSg8ws+Q6f/j5sw1gzfvOofPlpybtvIrCvlvw78sKLW5n1
Ecwc+xN38bIVL3E2Ae6zeYQwArpB4+gKT3Wb+r3bjXz7YQYpETI3IbX0vixbl8pP
9O4ZKot/khOCaQBiZ5hHmiDmF5kxofLnJE4qgGX/c87ZaMUsu7hoKzksy9v7Z9wj
PNTshhWk1WrSwM1JnVjD5Ahz+Oe43UsKsGZ8Kturbuu+61uTX4QcmYpbaNilGnwk
J0cLyw==
=MW7q
-----END PGP SIGNATURE-----
Merge tag 'v0.23.12'
release v0.23.12
2023-01-17 18:58:04 +01:00
Max Kellermann
d91da96798
release v0.23.12
2023-01-17 18:54:47 +01:00
Max Kellermann
b3897df682
decoder/mad: add assert()
2023-01-17 18:53:18 +01:00