1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 18:37:35 +00:00

Everywhere: Remove needless copies of Error / ErrorOr instances

Either take the underlying objects with release_* methods or move() the
instances around.
This commit is contained in:
Timothy Flynn 2023-02-09 13:26:53 -05:00 committed by Linus Groh
parent 52687814ea
commit 4a916cd379
28 changed files with 69 additions and 77 deletions

View file

@ -47,7 +47,7 @@ ErrorOr<NonnullRefPtr<ConfigFile>> ConfigFile::open(DeprecatedString const& file
// the same as if we had opened an empty file. This behavior is a little weird, but is required by
// user code, which does not check the config file exists before opening.
if (!(allow_altering == AllowWriting::No && maybe_file.error().code() == ENOENT))
return maybe_file.error();
return maybe_file.release_error();
} else {
buffered_file = TRY(Stream::BufferedFile::create(maybe_file.release_value()));
}

View file

@ -531,7 +531,7 @@ ErrorOr<void, File::CopyError> File::copy_directory(DeprecatedString const& dst_
DeprecatedString::formatted("{}/{}", src_path, filename),
RecursionMode::Allowed, link, AddDuplicateFileMarker::Yes, preserve_mode);
if (result.is_error())
return result.error();
return result.release_error();
}
auto my_umask = umask(0);

View file

@ -71,13 +71,13 @@ public:
auto tag_or_error = peek();
if (tag_or_error.is_error()) {
m_stack = move(previous_position);
return tag_or_error.error();
return tag_or_error.release_error();
}
auto length_or_error = read_length();
if (length_or_error.is_error()) {
m_stack = move(previous_position);
return length_or_error.error();
return length_or_error.release_error();
}
auto length = length_or_error.value();
@ -85,7 +85,7 @@ public:
auto bytes_result = read_bytes(length);
if (bytes_result.is_error()) {
m_stack = move(previous_position);
return bytes_result.error();
return bytes_result.release_error();
}
m_current_tag.clear();
@ -106,13 +106,13 @@ public:
auto tag_or_error = peek();
if (tag_or_error.is_error()) {
m_stack = move(previous_position);
return tag_or_error.error();
return tag_or_error.release_error();
}
auto length_or_error = read_length();
if (length_or_error.is_error()) {
m_stack = move(previous_position);
return length_or_error.error();
return length_or_error.release_error();
}
auto tag = tag_or_error.value();
@ -121,7 +121,7 @@ public:
auto value_or_error = read_value<ValueType>(class_override.value_or(tag.class_), kind_override.value_or(tag.kind), length);
if (value_or_error.is_error()) {
m_stack = move(previous_position);
return value_or_error.error();
return value_or_error.release_error();
}
m_current_tag.clear();
@ -146,7 +146,7 @@ private:
ErrorOr<ValueType> with_type_check(ErrorOr<DecodedType>&& value_or_error)
{
if (value_or_error.is_error())
return value_or_error.error();
return value_or_error.release_error();
if constexpr (IsSame<ValueType, bool> && !IsSame<DecodedType, bool>) {
return Error::from_string_literal("ASN1::Decoder: Trying to decode a boolean from a non-boolean type");
@ -162,10 +162,7 @@ private:
template<typename ValueType>
ErrorOr<ValueType> read_value(Class klass, Kind kind, size_t length)
{
auto data_or_error = read_bytes(length);
if (data_or_error.is_error())
return data_or_error.error();
auto data = data_or_error.value();
auto data = TRY(read_bytes(length));
if (klass != Class::Universal)
return with_type_check<ValueType>(data);

View file

@ -907,14 +907,14 @@ ErrorOr<IterationDecision> Parser::for_each_detailed_timing(Function<IterationDe
});
if (result.is_error()) {
dbgln("Failed to iterate DTDs in CEA861 extension block: {}", result.error());
extension_error = result.error();
extension_error = result.release_error();
return IterationDecision::Break;
}
return result.value();
}));
if (extension_error.has_value())
return extension_error.value();
return extension_error.release_value();
return result;
}
@ -948,7 +948,7 @@ ErrorOr<IterationDecision> Parser::for_each_short_video_descriptor(Function<Iter
return callback(block_id, is_native, vic);
});
if (result.is_error()) {
extension_error = result.error();
extension_error = result.release_error();
return IterationDecision::Break;
}
return result.value();
@ -985,14 +985,14 @@ ErrorOr<IterationDecision> Parser::for_each_display_descriptor(Function<Iteratio
});
if (result.is_error()) {
dbgln("Failed to iterate display descriptors in CEA861 extension block: {}", result.error());
extension_error = result.error();
extension_error = result.release_error();
return IterationDecision::Break;
}
return result.value();
}));
if (extension_error.has_value())
return extension_error.value();
return extension_error.release_value();
return result;
}

View file

@ -65,7 +65,7 @@ ErrorOr<void> Program::link(GPU::Device& device)
if (linked_vertex_shader_or_error.is_error()) {
m_link_status = false;
m_info_log = linker.messages();
return linked_vertex_shader_or_error.error();
return linked_vertex_shader_or_error.release_error();
}
m_linked_vertex_shader = linked_vertex_shader_or_error.release_value();
@ -81,7 +81,7 @@ ErrorOr<void> Program::link(GPU::Device& device)
if (linked_fragment_shader_or_error.is_error()) {
m_link_status = false;
m_info_log = linker.messages();
return linked_fragment_shader_or_error.error();
return linked_fragment_shader_or_error.release_error();
}
m_linked_fragment_shader = linked_fragment_shader_or_error.release_value();

View file

@ -33,7 +33,7 @@ ErrorOr<void> Shader::compile()
if (object_file_or_error.is_error()) {
m_compile_status = false;
m_info_log = compiler.messages();
return object_file_or_error.error();
return object_file_or_error.release_error();
}
m_object_file = object_file_or_error.release_value();

View file

@ -53,7 +53,7 @@ ErrorOr<void> Heap::open()
if (file_size > 0) {
if (auto error_maybe = read_zero_block(); error_maybe.is_error()) {
m_file = nullptr;
return error_maybe.error();
return error_maybe.release_error();
}
} else {
initialize_zero_block();

View file

@ -85,7 +85,7 @@ void PlaybackManager::dispatch_fatal_error(Error error)
// FIXME: For threading, this will have to use a pre-allocated event to send to the main loop
// to be able to gracefully handle OOM.
VERIFY(&m_main_loop == &Core::EventLoop::current());
FatalPlaybackErrorEvent event { error };
FatalPlaybackErrorEvent event { move(error) };
m_event_handler.dispatch_event(event);
}

View file

@ -247,11 +247,11 @@ class FatalPlaybackErrorEvent : public Core::Event {
public:
explicit FatalPlaybackErrorEvent(Error error)
: Core::Event(FatalPlaybackError)
, m_error(error)
, m_error(move(error))
{
}
virtual ~FatalPlaybackErrorEvent() = default;
Error error() { return m_error; }
Error const& error() { return m_error; }
private:
Error m_error;

View file

@ -172,7 +172,7 @@ void ResourceLoader::load(LoadRequest& request, Function<void(ReadonlyBytes, Has
dbgln("ResourceLoader: Finished load of: \"{}\", Duration: {}ms", url_for_logging, load_time_ms);
};
auto const log_failure = [url_for_logging, id](auto const& request, auto const error_message) {
auto const log_failure = [url_for_logging, id](auto const& request, auto const& error_message) {
auto load_time_ms = request.load_time().to_milliseconds();
emit_signpost(DeprecatedString::formatted("Failed load: {}", url_for_logging), id);
dbgln("ResourceLoader: Failed load of: \"{}\", \033[31;1mError: {}\033[0m, Duration: {}ms", url_for_logging, error_message, load_time_ms);