mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 09:17:35 +00:00
LibCore+Userland: Make Promise's on_resolve fallible
This will be primarily necessary for BackgroundAction integration, but it already allows us to add proper error handling in LibIMAP :^)
This commit is contained in:
parent
dc318d3080
commit
8f4d0d3797
5 changed files with 24 additions and 20 deletions
|
@ -42,7 +42,8 @@ ErrorOr<NonnullRefPtr<Core::LocalServer>> Session::create_server(NonnullRefPtr<S
|
|||
server->on_accept = [this, promise](auto client_socket) {
|
||||
auto maybe_connection = adopt_nonnull_ref_or_enomem(new (nothrow) WebContentConnection(move(client_socket), m_client, session_id()));
|
||||
if (maybe_connection.is_error()) {
|
||||
promise->resolve(maybe_connection.release_error());
|
||||
// Use of MUST in this function is safe, as our promise callback can never error out.
|
||||
MUST(promise->resolve(maybe_connection.release_error()));
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -56,11 +57,11 @@ ErrorOr<NonnullRefPtr<Core::LocalServer>> Session::create_server(NonnullRefPtr<S
|
|||
if (m_current_window_handle.is_empty())
|
||||
m_current_window_handle = handle_name;
|
||||
|
||||
promise->resolve({});
|
||||
MUST(promise->resolve({}));
|
||||
};
|
||||
|
||||
server->on_accept_error = [promise](auto error) {
|
||||
promise->resolve(move(error));
|
||||
MUST(promise->resolve(move(error)));
|
||||
};
|
||||
|
||||
return server;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue