Max Kellermann
b5c569cd30
system/FileDescriptor: add IsPipe(), IsSocket()
2018-08-20 16:05:03 +02:00
Max Kellermann
1ba35e1fd4
release v0.20.21
...
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAlt3CwMQHG1heEBtdXNp
Y3BkLm9yZwAKCRAjbopYxttFEiQcD/0S7NzE9nLsuTJJB9ElzOW17XiKkLKuDErQ
P1r46APwa0agqfHFTUM5a+ifMCFQ4QTh0p+MiImYniBKmTnuKYBxZJFgHYojrPOS
jxJbPJI6R7vLfo07kIem1jw/3YjqF4BDJyn9FYLBLgWz3IiFC/H4XH4XYxoQhTYL
Xv0aGMCnil6gD2ENvx4by3tqsM9l5ktvPwR6bktRw4ImhgT5zHShpuPYZekas1ic
+A1oCXFO4UrlZQ0sHdcG7Up8NOEJvAiNR5+BCnb9aR8l6M2Mzu2u715zSSWvTBI+
SCa8lE/gkndJC2Q3BmPRp+OcWU/uwVIkWdJdCF8DgN5vmk3cLRJ/SpHGkR1iYSvF
MUW8QF0tc2Xctv0NHYXlDj6wVVJ+OWNUcNy6SWHAT7o5S0ppB+2nesAfTVqqGK/Z
yRmcW5CvYNH8dfN7WBkLehN57dpI6O1YkfF30xCPcT+fu4oBYv7owU4MqFVcJN2r
FEbTZCfRFGjF7Kmb6aF+mFMhTnqYNEZjFS0SljLJWjlimLaSfgTXdEv23IpxIMnV
i+CEy7B2RseR31tmCekyWxdLnNJPYC4Zqwer8dd7yrY/exEM/6x9JQDUbCaGccar
NlwmCj6uDKXxU3tkb9Mk77oX51dFL58BtpoQw/DfXRWSX+UsAxFioyAbJ9juJUrM
JO9WMABo0Q==
=2zvn
-----END PGP SIGNATURE-----
Merge tag 'v0.20.21'
release v0.20.21
2018-08-17 20:02:27 +02:00
Max Kellermann
98efb4f6d5
android: raise minSdkVersion to 21
...
The number of MPD installs on Android < 5.0 is negligible, and that
API version introduces lots of useful features for MPD.
2018-08-17 19:01:37 +02:00
Max Kellermann
4218f56f6c
system/SignalFD: add "noexcept"
2018-08-06 11:58:37 +02:00
Max Kellermann
dd18fe34a7
system/SignalFD: throw exception on error
2018-08-06 11:58:29 +02:00
Max Kellermann
5b09504a71
system/Event{FD,Pipe}: add "noexcept"
2018-08-06 11:57:40 +02:00
Max Kellermann
0c1a001622
system/Event{FD,Pipe}: throw exception on error
2018-08-06 11:49:38 +02:00
Max Kellermann
d4ce9c0df2
system/FileDescriptor: no-op implementation of *CloseOnExec() on Windows
...
Fixes the NFS client build, closes #305 .
2018-07-13 18:16:39 +02:00
Max Kellermann
13ac74e0a2
system/EPollFD: update API documentation
2018-01-29 21:49:27 +01:00
Max Kellermann
c2f23d92dc
system/EPollFD: add "noexcept"
2018-01-29 21:48:39 +01:00
Max Kellermann
6246d36fe6
Merge branch 'v0.20.x'
2017-12-16 20:56:06 +01:00
Max Kellermann
dfaf08743c
*: check defined(_WIN32) instead of defined(WIN32)
...
Only _WIN32 is defined by the compiler, and WIN32 is not standardized
and may be missing.
Closes #169
2017-12-12 10:22:20 +01:00
Max Kellermann
d9552d8a6d
android/build.py: support NDK r16
2017-12-12 10:01:47 +01:00
Max Kellermann
b177bffa6a
system/EventPipe: fix WSAEINPROGRESS on Windows
...
Apparently, connecting a socket to a loopback address can block on
Windows, and a non-blocking socket will return WSAEINPROGRESS. This
broken PoorSocketPair() in commit 2119e4fd3e
, which made the socket
non-blocking right from the start. This fix postpones the
ioctlsocket(FIONBIO) call until after the connect().
Closes #134
2017-10-24 20:09:11 +02:00
Max Kellermann
a6e62479be
system/Error: include cleanup
2017-09-13 17:49:37 +02:00
Max Kellermann
6c825064ea
system/Error: add more "noexcept"
2017-09-13 17:48:13 +02:00
Max Kellermann
13d02968bd
system/FileDescriptor: Close() should not be called on undefined object
...
It does not do much harm - but it causes an unnecessary (failing)
system call.
2017-09-13 17:43:13 +02:00
Max Kellermann
e576556149
system/UniqueFileDescriptor: remove duplicate "using" statements
2017-09-13 17:41:15 +02:00
Max Kellermann
66e74900df
system/UniqueFileDescriptor: expose CheckDuplicate()
2017-09-13 17:40:33 +02:00
Max Kellermann
aadc735d71
system/FileDescriptor: mention class UniqueFileDescriptor in API documentation
2017-09-13 17:39:29 +02:00
Max Kellermann
a13897cf6f
system/FileDescriptor: add CheckDuplicate()
2017-09-13 17:37:28 +02:00
Max Kellermann
b188ae0e5c
system/FileDescriptor: use _WIN32 instead of WIN32
2017-09-13 17:36:48 +02:00
Ryan Walklin
318f80d113
Fix EventPipe file descriptors
2017-08-17 12:21:01 +10:00
Max Kellermann
b57a272f67
system/EPollFD: throw exception instead of raising fatal error
2017-08-11 09:39:47 +02:00
Max Kellermann
33b4114534
system/fd_util: remove unused library
2017-08-11 09:20:15 +02:00
Max Kellermann
7a4457402f
system/EventPipe: use FileDescriptor::CreatePipeNonBlock()
2017-08-11 09:19:00 +02:00
Max Kellermann
9056dcaf7d
system/FileDescriptor: add method CreatePipeNonBlock()
2017-08-11 09:15:22 +02:00
Max Kellermann
2119e4fd3e
system/EventPipe: use class UniqueSocketDescriptor in PoorSocketPair()
2017-08-11 09:09:04 +02:00
Max Kellermann
bcd5190f1d
system/EventPipe: throw exception instead of raising fatal error
2017-08-11 09:09:04 +02:00
Max Kellermann
d705a92e43
net/IPv4Address: new class
2017-08-11 09:09:04 +02:00
Max Kellermann
699f41e114
system/EventPipe: use AtScopeExit() in PoorSocketPair()
2017-08-11 08:30:37 +02:00
Max Kellermann
7484bc31b4
system/FileDescriptor: implement CreatePipe() on Windows
2017-08-11 08:15:47 +02:00
Max Kellermann
5a495cc165
system/fd_util: remove unused function close_socket()
2017-08-10 19:47:57 +02:00
Max Kellermann
9ff4717738
system/fd_util: remove unused function accept_cloexec_nonblock()
2017-08-10 19:47:40 +02:00
Max Kellermann
0c1740982d
system/fd_util: remove unused function open_cloexec()
2017-08-10 19:46:23 +02:00
Max Kellermann
eb0ff32efb
system/FileDescriptor: add Open() overload with wchar_t path
2017-08-10 19:34:52 +02:00
Max Kellermann
0800d9427c
system/fd_util: remove unused function socket_cloexec_nonblock()
2017-08-10 17:40:14 +02:00
Max Kellermann
fb0dbce15b
system/EventFD: use class UniqueFileDescriptor
2017-08-10 12:14:56 +02:00
Max Kellermann
8333551331
system/SignalFD: use class UniqueFileDescriptor
2017-08-10 12:13:41 +02:00
Max Kellermann
292d794806
system/UniqueFileDescriptor: new auto-closing FileDescriptor wrapper
2017-08-10 12:01:17 +02:00
Max Kellermann
91ce76af9d
system/FileDescriptor: add methods EnableCloseOnExec(), DisableCloseOnExec()
2017-08-10 11:54:26 +02:00
Max Kellermann
33bd9e80bb
system/FileDescriptor: add method IsReadyForWriting()
2017-08-10 11:53:43 +02:00
Max Kellermann
d310f3e9b7
system/FileDescriptor: add method IsValid()
2017-08-10 11:52:22 +02:00
Max Kellermann
8c832f4c50
system/FileDescriptor: use std::exchange()
2017-08-10 09:55:11 +02:00
Max Kellermann
0a379fc514
system/ByteOrder: fix byte order detection on FreeBSD/aarch64
...
Patch from
https://svnweb.freebsd.org/ports/head/audio/musicpd/files/patch-src_system_ByteOrder.hxx?revision=441921&view=co
(with a tiny modification)
Closes #59
2017-05-29 20:37:14 +02:00
Max Kellermann
71f0ed8b74
*: add "noexcept" to many, many function prototypes
...
This eliminates some overhead, because the compiler doesn't need to
consider these functions throwing.
2017-05-08 14:44:49 +02:00
Max Kellermann
6eea56861b
AUTHORS, ...: update my email address
2017-01-17 11:54:55 +01:00
Max Kellermann
5900253b85
update copyright year
2017-01-03 20:48:59 +01:00
Max Kellermann
837134daef
system/Clock: remove obsolete MonotonicClock*() functions
...
We're using std::chrono::steady_clock now. No need to duplicate code.
2016-12-28 22:24:09 +01:00
Max Kellermann
4011899846
system/PeriodClock: use std::chrono::steady_clock
2016-12-28 22:23:45 +01:00