Sfoglia il codice sorgente

LibWeb: Make factory method of Fetch::HeadersIterator fallible

Kenneth Myhra 2 anni fa
parent
commit
a2381a672d

+ 2 - 2
Userland/Libraries/LibWeb/Fetch/HeadersIterator.cpp

@@ -23,9 +23,9 @@ void Intrinsics::create_web_prototype_and_constructor<HeadersIteratorPrototype>(
 
 
 namespace Web::Fetch {
 namespace Web::Fetch {
 
 
-JS::NonnullGCPtr<HeadersIterator> HeadersIterator::create(Headers const& headers, JS::Object::PropertyKind iteration_kind)
+WebIDL::ExceptionOr<JS::NonnullGCPtr<HeadersIterator>> HeadersIterator::create(Headers const& headers, JS::Object::PropertyKind iteration_kind)
 {
 {
-    return headers.heap().allocate<HeadersIterator>(headers.realm(), headers, iteration_kind).release_allocated_value_but_fixme_should_propagate_errors();
+    return MUST_OR_THROW_OOM(headers.heap().allocate<HeadersIterator>(headers.realm(), headers, iteration_kind));
 }
 }
 
 
 HeadersIterator::HeadersIterator(Headers const& headers, JS::Object::PropertyKind iteration_kind)
 HeadersIterator::HeadersIterator(Headers const& headers, JS::Object::PropertyKind iteration_kind)

+ 1 - 1
Userland/Libraries/LibWeb/Fetch/HeadersIterator.h

@@ -16,7 +16,7 @@ class HeadersIterator final : public Bindings::PlatformObject {
     WEB_PLATFORM_OBJECT(HeadersIterator, Bindings::PlatformObject);
     WEB_PLATFORM_OBJECT(HeadersIterator, Bindings::PlatformObject);
 
 
 public:
 public:
-    static JS::NonnullGCPtr<HeadersIterator> create(Headers const&, JS::Object::PropertyKind iteration_kind);
+    static WebIDL::ExceptionOr<JS::NonnullGCPtr<HeadersIterator>> create(Headers const&, JS::Object::PropertyKind iteration_kind);
 
 
     virtual ~HeadersIterator() override;
     virtual ~HeadersIterator() override;