diff options
author | Claudius Holeksa <mail@keldu.de> | 2023-05-14 12:46:49 +0200 |
---|---|---|
committer | Claudius Holeksa <mail@keldu.de> | 2023-05-14 12:46:49 +0200 |
commit | 14cb83d0d70aa33135090aed2d6b750f69e189f3 (patch) | |
tree | b12532e39a623ae7ed64e5985ad9c8a379d2da26 /src/io/io_unix.cpp | |
parent | 61e51d8d71c5dbf4a92798fca7c1c325935b87be (diff) |
c++: Fixing error handling in old source
Diffstat (limited to 'src/io/io_unix.cpp')
-rw-r--r-- | src/io/io_unix.cpp | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/io/io_unix.cpp b/src/io/io_unix.cpp index b5f17e5..e59fa66 100644 --- a/src/io/io_unix.cpp +++ b/src/io/io_unix.cpp @@ -496,10 +496,10 @@ error_or<size_t> unix_io_stream::read(void *buffer, size_t length) { if (read_bytes > 0) { return static_cast<size_t>(read_bytes); } else if (read_bytes == 0) { - return critical_error("Disconnected", error::code::Disconnected); + return make_error<err::disconnected>(); } - return recoverable_error("Currently busy"); + return make_error<err::resource_busy>(); } conveyor<void> unix_io_stream::read_ready() { @@ -523,10 +523,10 @@ error_or<size_t> unix_io_stream::write(const void *buffer, size_t length) { int error = errno; if (error == EAGAIN || error == EWOULDBLOCK) { - return recoverable_error("Currently busy"); + return make_error<err::resource_busy>(); } - return critical_error("Disconnected", error::code::Disconnected); + return make_error<err::disconnected>(); } conveyor<void> unix_io_stream::write_ready() { @@ -609,7 +609,7 @@ error_or<size_t> unix_datagram::read(void *buffer, size_t length) { if (read_bytes > 0) { return static_cast<size_t>(read_bytes); } - return recoverable_error("Currently busy"); + return make_error<err::resource_busy>(); } conveyor<void> unix_datagram::read_ready() { @@ -628,7 +628,7 @@ error_or<size_t> unix_datagram::write(const void *buffer, size_t length, if (write_bytes > 0) { return static_cast<size_t>(write_bytes); } - return recoverable_error("Currently busy"); + return make_error<err::resource_busy>(); } conveyor<void> unix_datagram::write_ready() { @@ -742,12 +742,12 @@ conveyor<own<io_stream>> unix_network::connect(network_address &addr) { assert(address.unix_address_size() > 0); if (address.unix_address_size() == 0) { - return conveyor<own<io_stream>>{critical_error("No address found")}; + return conveyor<own<io_stream>>{make_error<err::critical>()}; } int fd = address.unix_address(0).socket(SOCK_STREAM); if (fd < 0) { - return conveyor<own<io_stream>>{critical_error("Couldn't open socket")}; + return conveyor<own<io_stream>>{make_error<err::disconnected>()}; } own<unix_io_stream> io_str = @@ -780,8 +780,7 @@ conveyor<own<io_stream>> unix_network::connect(network_address &addr) { break; } else if (error != EINTR) { /// @todo Push error message from - return conveyor<own<io_stream>>{ - critical_error("Couldn't connect")}; + return conveyor<own<io_stream>>{make_error<err::disconnected>()}; } } else { success = true; @@ -790,7 +789,7 @@ conveyor<own<io_stream>> unix_network::connect(network_address &addr) { } if (!success) { - return critical_error("Couldn't connect"); + return conveyor<own<io_stream>>{make_error<err::disconnected>()}; } return conveyor<own<io_stream>>{std::move(io_str)}; @@ -888,7 +887,7 @@ error_or<async_io_context> setup_async_io() { return {{std::move(io_provider), loop_ref, prt_ref}}; } catch (std::bad_alloc &) { - return critical_error("Out of memory"); + return make_error<err::out_of_memory>(); } } } // namespace saw |