Browse Source

LibWeb: Add a null-check for page() in ESO::is_scripting_enabled()

This could lead to a crash when spamming reload on a page with a
<script> element.
Simon Wanner 3 years ago
parent
commit
fe0f0b0acf
1 changed files with 1 additions and 1 deletions
  1. 1 1
      Userland/Libraries/LibWeb/HTML/Scripting/Environments.cpp

+ 1 - 1
Userland/Libraries/LibWeb/HTML/Scripting/Environments.cpp

@@ -247,7 +247,7 @@ bool EnvironmentSettingsObject::is_scripting_enabled() const
     // The user has not disabled scripting for settings at this time. (User agents may provide users with the option to disable scripting globally, or in a finer-grained manner, e.g., on a per-origin basis, down to the level of individual environment settings objects.)
     auto document = const_cast<EnvironmentSettingsObject&>(*this).responsible_document();
     VERIFY(document);
-    if (!document->window().page()->is_scripting_enabled())
+    if (!document->page() || !document->page()->is_scripting_enabled())
         return false;
 
     // FIXME: Either settings's global object is not a Window object, or settings's global object's associated Document's active sandboxing flag set does not have its sandboxed scripts browsing context flag set.