瀏覽代碼

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 年之前
父節點
當前提交
0a533da22f
共有 1 個文件被更改,包括 3 次插入0 次删除
  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()
 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();
     return m_svg_context.value();
 }
 }