Commit Graph

18693 Commits

Author SHA1 Message Date
Max Kellermann
9bb67ae7f0 subprojects: update sqlite to 3.43.0-1 2023-09-12 10:21:27 +02:00
Max Kellermann
c994fe4879 io/uring/meson.build: detect liburing with include_type=system
This avoids breakages due to `-Wgnu-anonymous-struct`.
2023-09-12 10:20:58 +02:00
Max Kellermann
32421fed89 subprojects: update liburing to 2.3-3 2023-09-12 10:17:03 +02:00
Max Kellermann
077add79cd subprojects: update fmt to 9.1.0-2 2023-09-12 10:16:56 +02:00
Max Kellermann
50f0163f5f time/SystemClock: pass by value 2023-09-12 09:56:06 +02:00
Max Kellermann
481c1b6f2e lib/dbus/ReadIter: add method GetBool() 2023-09-12 09:53:58 +02:00
Max Kellermann
474b6610fa lib/dbus/Error: add method GetName() 2023-09-12 09:53:15 +02:00
Max Kellermann
11c49da871 io/FileReader: remove unused method Close()
It's enough to have the destructor.
2023-09-12 09:53:06 +02:00
Max Kellermann
678828b56f io/FileOutputStream: remove obsolete maybe_unused 2023-09-12 09:43:14 +02:00
Max Kellermann
9e802ad721 util/StringCompare: add pure attribute 2023-09-12 09:34:52 +02:00
Max Kellermann
859ffddea3 io/BufferedReader: fix ReadFullT() after std::span migration 2023-09-12 09:32:20 +02:00
Max Kellermann
daf935d310 util/HexFormat: add non-const overload 2023-09-12 09:11:38 +02:00
Max Kellermann
6953800628 python/build/libs.py: update CURL to 8.2.1 2023-09-11 22:24:27 +02:00
Max Kellermann
7c65c4f485 python/build/libs.py: update OpenSSL to 3.1.2 2023-09-11 22:23:59 +02:00
Max Kellermann
8950fb9393 python/build/libs.py: update zlib to 1.3 2023-09-11 22:22:00 +02:00
Max Kellermann
b754f3dc34 python/build/libs.py: update Opus to 1.4 2023-09-11 22:21:04 +02:00
Max Kellermann
e8a25dc8d9 python/build/libs.py: update FLAC to 1.4.3 2023-09-11 22:19:41 +02:00
Max Kellermann
99765cc704 modplug: add patch to remove the deprecated register keyword 2023-09-11 22:17:45 +02:00
Max Kellermann
a868dbce3b android/AndroidManifest.xml: raise minSdkVersion to 24
This is needed to build libFLAC which uses ftello().
2023-09-11 22:14:23 +02:00
Max Kellermann
f68305bf00 util/NumberParser: remove obsolete __ANDROID_API__ check 2023-09-11 22:12:13 +02:00
Max Kellermann
517c234461 lib/zlib/GzipOutputStream: use MAX_WBITS 2023-09-11 22:02:04 +02:00
Max Kellermann
a58275591d util/StaticVector: add methods erase(), pop_front() 2023-09-11 21:59:28 +02:00
Max Kellermann
a2f4fb9ddb util/StaticVector: add method pop_back() 2023-09-11 21:59:21 +02:00
Max Kellermann
b2acf02af9 util/StaticVector: push_back(), emplace_back() return reference
Imitating std::vector since C++17.
2023-09-11 21:59:12 +02:00
Max Kellermann
d5b1ca1a52 util/StaticVector: use emplace_back() to implement push_back()
For this class, both are equal.
2023-09-11 21:58:56 +02:00
Max Kellermann
339b9f6e7b net/StaticSocketAddress: add method GetSteadyPart() 2023-09-11 21:27:12 +02:00
Max Kellermann
35cfa6efa3 net/StaticSocketAddress: add SocketAddress cast constructor 2023-09-11 21:27:12 +02:00
Max Kellermann
34ec024bf4 net/AllocatedSocketAddress: add method GetSteadyPart() 2023-09-11 21:27:12 +02:00
Max Kellermann
75aa08ed6b tag/Pool: use a power-of-2 hash table size
This is simpler to calculate and the advantage of using a prime is
negligible anyway.
2023-09-11 21:23:11 +02:00
Max Kellermann
c8dc1e0665 tag/Pool: use class IntrusiveHashSet intead of rolling a custom hash table 2023-09-11 21:15:28 +02:00
Max Kellermann
847ae7dd7c util/IntrusiveHashSet: add insert_check_if() 2023-09-11 21:15:28 +02:00
Max Kellermann
44f55e1866 util/IntrusiveList: add missing initializer to insert_after()
We must not call std::next() if the list head was not yet initialized.
This was missing in commit 7065425927
2023-09-11 21:15:28 +02:00
Max Kellermann
c391adad10 tag/Pool: move code from calc_hash() to util/djb_hash.cxx 2023-09-11 20:53:37 +02:00
Max Kellermann
f578b06d83 tag/Pool: move calc_hash() returns std::size_t 2023-09-11 20:51:44 +02:00
Max Kellermann
0748f75d9b tag/Pool: rename TagPoolSlot to TagPoolItem 2023-09-11 20:44:55 +02:00
Max Kellermann
7dff29bcd1 util/IntrusiveHashSet: add option zero_initialized 2023-09-11 20:34:17 +02:00
Max Kellermann
3e09f95b40 tag/Pool: enable option zero_initialized
Commit 44beae519d caused the MPD
executable to grow by more than 1 MB because the `slots` array
suddenly was not zero-initialized anymore, because the doubly-linked
list is circular, while the singly-linked list is zero-terminated.

This option moves the array back to the `bss` section.
2023-09-11 20:32:26 +02:00
Max Kellermann
7065425927 util/IntrusiveList: add option zero_initialized 2023-09-11 20:30:38 +02:00
Max Kellermann
f01793ad4a util/Intrusive*: move constant_time_size to an options struct
This makes it easier to add more options later.
2023-09-11 19:18:36 +02:00
Max Kellermann
1f495efb46 test/LoadDatabase: ignore tag/charset mismatches
This program shouldn't fail just because the configuration doesn't
match - it has no configuration, it's just a dumb test program.
2023-09-07 09:54:03 +02:00
Max Kellermann
38d8359384 test/LoadDatabase: new test program (for benchmarking the database loader) 2023-09-06 16:17:24 +02:00
Max Kellermann
2c01e79b47 SongSave: omit FixTagString() for strings from the database file
Strings in the database should have been sanitized already, so let's
not waste CPU on this.
2023-09-06 16:12:20 +02:00
Max Kellermann
a573d57de8 tag/Builder: remove unnecessary explicit AddItem() overload 2023-09-06 16:10:31 +02:00
Max Kellermann
2f4e2935a3 db/upnp, playlist/pls: use AddItem(std::string_view) 2023-09-06 16:08:42 +02:00
Max Kellermann
44beae519d tag/Pool: use doubly-linked list
This adds some memory overhead but eliminates the linear search from
tag_pool_put_item().
2023-09-06 16:00:25 +02:00
Max Kellermann
b896711fc6 tag/Pool: fix crash in tag_pool_put_item()
Regression by commit 76bdfabcc5
2023-09-06 15:53:17 +02:00
Max Kellermann
76bdfabcc5 tag/Pool: use class IntrusiveForwardList 2023-09-06 15:33:26 +02:00
Max Kellermann
b35e8a588f util/IntrusiveForwardList: add operator++(int) 2023-09-06 15:31:07 +02:00
Max Kellermann
6c48f5ac63 tag/Pool: use std::array 2023-09-06 15:10:47 +02:00
Max Kellermann
1448f52eac util/VarSize: convert static_assert to concept check 2023-09-06 15:05:26 +02:00