Browse Source

LibWeb: Don't crash on content with SVG elements outside of <svg>

We'll have to do something more proper to support this scenario
eventually, but for now let's at least not crash just because somebody
put an SVG <path> inside an HTML element.
Andreas Kling 3 năm trước cách đây
mục cha
commit
0a533da22f
1 tập tin đã thay đổi với 3 bổ sung0 xóa
  1. 3 0
      Userland/Libraries/LibWeb/Painting/PaintContext.cpp

+ 3 - 0
Userland/Libraries/LibWeb/Painting/PaintContext.cpp

@@ -17,6 +17,9 @@ PaintContext::PaintContext(Gfx::Painter& painter, Palette const& palette, Gfx::I
 
 SVGContext& PaintContext::svg_context()
 {
+    // FIXME: This is a total hack to avoid crashing on content that has SVG elements embedded directly in HTML without an <svg> element.
+    if (!m_svg_context.has_value())
+        m_svg_context = SVGContext { {} };
     return m_svg_context.value();
 }