Max Kellermann
f49d4ef4ad
tag/Mask: switch to 64 bit because have we 34 tags now and 32 bits are not enough
2023-10-08 10:02:50 +02:00
Max Kellermann
2859845567
Merge branch 'v0.23.x'
2023-10-08 10:02:19 +02:00
Max Kellermann
f3c37e484e
tag/Mask: add static_assert on the size of the mask
2023-10-08 10:01:00 +02:00
Max Kellermann
e521b58b01
io/PeekReader: fix offset/size mixup
...
Regression by commit 7ccc4ddf0d
2023-10-08 09:55:59 +02:00
Max Kellermann
34182990ef
fs/FileInfo: add fstat() wrapper
2023-10-07 12:49:07 +02:00
Max Kellermann
1ca5d6baa6
io/FileReader: do not copy the path
2023-10-07 12:48:03 +02:00
Max Kellermann
9365f68454
io/FileReader: use GetFileInfoByHandle()
2023-10-07 12:47:57 +02:00
Max Kellermann
7b5f107341
fs/FileInfo: add GetFileInformationByHandleEx() wrapper
2023-10-07 12:37:49 +02:00
Max Kellermann
e9ec03f769
PlaylistFile: use uint_least64_t
2023-10-07 12:29:14 +02:00
Max Kellermann
579a6ee299
fs/FileInfo: un-inline the constructor to reduce header dependencies
2023-10-07 12:28:31 +02:00
Max Kellermann
7d31659137
PlaylistFile: add missing include
2023-10-07 12:28:31 +02:00
Max Kellermann
f549c611ab
fs/FileInfo: make constructor explicit
2023-10-07 12:24:05 +02:00
Max Kellermann
51c0a03e94
fs/FileInfo: add constexpr
and noexcept
2023-10-07 12:22:54 +02:00
Max Kellermann
19c73680cf
io/FileReader: use uint_least64_t
2023-10-07 08:49:04 +02:00
Max Kellermann
a9ba9a5f92
io/Reader: add [[nodiscard]]
2023-10-07 08:45:59 +02:00
Max Kellermann
3032792563
io/Reader: add method ReadFull()
2023-10-07 08:45:52 +02:00
Max Kellermann
7ccc4ddf0d
io/Reader: use std::span
2023-10-07 08:44:42 +02:00
Max Kellermann
b9704715fb
io/FileOutputStream: pass dfd=-1 for absolute /proc/self/fd/N path
2023-10-07 08:42:35 +02:00
Max Kellermann
86e7dff2fc
util/TextFile: add missing cast
2023-10-07 08:39:24 +02:00
Max Kellermann
c450f644e6
lib/xiph/OggSyncState: fix indent
2023-10-07 08:30:12 +02:00
Max Kellermann
496184b1bc
io/Reader: add method ReadT()
2023-10-07 08:27:13 +02:00
Max Kellermann
b81cac3305
lib/nfs/Error: include cleanup
2023-10-04 23:12:45 +02:00
Max Kellermann
bf9dd24536
lib/pcre/UniqueRegex: wrap Compile() options in struct
2023-10-04 17:32:12 +02:00
Max Kellermann
e5680c712b
util/IntrusiveList: add reverse_iterator
2023-10-04 16:51:17 +02:00
Max Kellermann
44daa6d3e6
util/IntrusiveForwardList: reset last_cache properly in clear()
2023-10-04 16:50:46 +02:00
Max Kellermann
5ddddbb16f
test/util/TestIntrusiveForwardList: add push_back() test
2023-10-04 16:50:38 +02:00
Max Kellermann
5aaa3f50aa
util/BindMethod: move SignatureHelper to return type
2023-10-04 16:50:25 +02:00
Max Kellermann
7d26cd74c1
util/BindMethod: add noexcept
2023-10-04 16:50:25 +02:00
Max Kellermann
7e6941acc8
util/BindMethod: add constexpr
2023-10-04 16:50:25 +02:00
Max Kellermann
63d865666e
util/StringBuffer: use using
instead of typedef
2023-10-04 16:50:25 +02:00
Max Kellermann
5dda4084df
util/BindMethod: use using
instead of typedef
2023-10-04 16:50:25 +02:00
Max Kellermann
19f9238ef0
util/BindMethod: fix indent
2023-10-04 16:50:25 +02:00
Max Kellermann
491cc8f54d
net/SocketDescriptor: add {Read,Write}NoWait()
...
It was surprising that Read() was non-blocking, but there was no
blocking version of it. Let's make the non-blocking behavior explicit
and change Read() to be blocking.
In order to find existing callers easily with compiler errors, this
also refactors Read()/Write() to take a std::span parameter.
2023-09-27 11:39:55 +02:00
Max Kellermann
cad35a83fb
io/FileDescriptor: add Read()/Write() overloads with std::span
2023-09-27 11:14:23 +02:00
Max Kellermann
5fbe5951ab
output/snapcast/Client: use SocketDescriptor::Send()
2023-09-27 10:39:48 +02:00
Max Kellermann
21590e60e6
event/FullyBufferedSocket: pass std::span to DirectWrite()
2023-09-27 10:36:56 +02:00
Max Kellermann
fe69ad0861
event/BufferedSocket: pass std::span to DirectRead()
2023-09-27 10:34:50 +02:00
Max Kellermann
9daf8f6de5
event/BufferedSocket: use std::byte
2023-09-27 10:30:09 +02:00
Max Kellermann
8ca6606323
net/SocketDescriptor: move code to Receive(), Send()
2023-09-27 10:16:21 +02:00
Max Kellermann
09a2da89a2
io/FileDescriptor: pass std::span to Full{Read,Write}()
2023-09-27 10:14:02 +02:00
Max Kellermann
9a0b3775d8
encoder/ToOutputStream: add API docs
2023-09-26 15:48:55 +02:00
Max Kellermann
2075a9a999
encoder/ToOutputStream: remove unnecessary cast
2023-09-26 15:48:22 +02:00
Max Kellermann
1090cc964a
event/Loop: relicense to BSD-2
...
This library has been initially developed at CM4all and eventually
published here:
https://github.com/CM4all/libcommon/tree/master/src/event/
On this copy of it, there were only minor modifications by people
other than me, and these are below the copyright threshold; only
non-epoll backends (which remain under the GPL) were developed by
somebody else.
2023-09-26 15:47:09 +02:00
Max Kellermann
39476bed85
Merge branch 'v0.23.x'
2023-09-26 15:36:26 +02:00
Max Kellermann
49130c2018
python/build/openssl: remove obsolete variable
2023-09-26 15:32:49 +02:00
Max Kellermann
94af199c49
python/build/openssl: add --cross-compile-prefix=...
2023-09-26 15:31:21 +02:00
Max Kellermann
2d25f6f57f
python/build/openssl: pass arch only if cross-compiling
2023-09-26 15:31:11 +02:00
Max Kellermann
cf179ec294
python/build/openssl: pass --libdir=lib to Configure
...
Without this, the AMD64 build installs to "lib64/" which then cannot
be found by CURL.
2023-09-26 15:30:51 +02:00
Max Kellermann
4d6f220a2f
python/build/cmake: write toolchain file only if cross-compiling
2023-09-26 15:29:45 +02:00
Max Kellermann
0ffbe5b5ea
python/build/autotools: add --host=... only if cross-compiling
2023-09-26 15:27:05 +02:00