ladybird/Userland/Libraries/LibWeb/SVG
Aliaksandr Kalenik a41f23a0fc LibWeb: Fix document leak in SVGDecodedImageData
The SVGDecodedImageData creates a new Page and replaces its document
with a new one that contains SVG content. This change adds a destroy
call on the replaced document. Without this addition, all tasks
scheduled on the event loop during navigation, initiated while the
page's traversable is being created, will never execute, as the
initial replaced document will become inactive. This leads to a
document leak because the tasks use JS::Handle to hold document
pointer. Making the destroy call resolves the issue because it removes
all tasks associated with the destroyed document from the queue.
2023-09-25 14:31:20 +02:00
..
AttributeNames.cpp AK: Make "foo"_fly_string infallible 2023-08-07 16:03:27 +02:00
AttributeNames.h AK: Make "foo"_fly_string infallible 2023-08-07 16:03:27 +02:00
AttributeParser.cpp LibWeb: Flesh out SVGMaskElement a bit 2023-09-19 10:46:05 +02:00
AttributeParser.h LibWeb: Flesh out SVGMaskElement a bit 2023-09-19 10:46:05 +02:00
Default.css LibWeb: Include standard SVG user agent style sheet 2023-09-23 16:27:14 +02:00
SVGAnimatedLength.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGAnimatedLength.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGAnimatedLength.idl
SVGAnimatedNumber.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGAnimatedNumber.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGAnimatedNumber.idl
SVGCircleElement.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGCircleElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGCircleElement.idl
SVGClipPathElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGClipPathElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGClipPathElement.idl
SVGDecodedImageData.cpp LibWeb: Fix document leak in SVGDecodedImageData 2023-09-25 14:31:20 +02:00
SVGDecodedImageData.h LibWeb: Use CSSPixelFraction to represent aspect ratios 2023-09-04 12:40:17 +02:00
SVGDefsElement.cpp LibWeb: Layout SVG <mask> elements (but don't paint them) 2023-09-19 10:46:05 +02:00
SVGDefsElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGDefsElement.idl
SVGElement.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGElement.idl
SVGEllipseElement.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGEllipseElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGEllipseElement.idl
SVGForeignObjectElement.cpp LibWeb: Rename Element::attribute to Element::deprecated_attribute 2023-09-05 20:36:09 -04:00
SVGForeignObjectElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGForeignObjectElement.idl
SVGGElement.cpp
SVGGElement.h
SVGGeometryElement.cpp LibWeb: Remove exceptions from DOMPoint because allocate is unfailable 2023-09-01 20:58:13 +02:00
SVGGeometryElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGGeometryElement.idl
SVGGradientElement.cpp LibWeb: Flesh out SVGMaskElement a bit 2023-09-19 10:46:05 +02:00
SVGGradientElement.h LibWeb: Add support for the SVG gradient spreadMethod attribute 2023-08-20 20:04:10 +02:00
SVGGradientElement.idl
SVGGraphicsElement.cpp LibWeb: Resolve and paint simple SVG masks 2023-09-19 10:46:05 +02:00
SVGGraphicsElement.h LibWeb: Resolve and paint simple SVG masks 2023-09-19 10:46:05 +02:00
SVGGraphicsElement.idl
SVGLength.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGLength.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGLength.idl
SVGLinearGradientElement.cpp LibWeb: Add support for the SVG gradient spreadMethod attribute 2023-08-20 20:04:10 +02:00
SVGLinearGradientElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGLinearGradientElement.idl
SVGLineElement.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGLineElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGLineElement.idl
SVGMaskElement.cpp LibWeb: Flesh out SVGMaskElement a bit 2023-09-19 10:46:05 +02:00
SVGMaskElement.h LibWeb: Flesh out SVGMaskElement a bit 2023-09-19 10:46:05 +02:00
SVGMaskElement.idl LibWeb: Stub out SVGMaskElement 2023-08-10 11:36:17 +02:00
SVGPathElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGPathElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGPathElement.idl
SVGPolygonElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGPolygonElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGPolygonElement.idl
SVGPolylineElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGPolylineElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGPolylineElement.idl
SVGRadialGradientElement.cpp LibWeb: Add support for the SVG gradient spreadMethod attribute 2023-08-20 20:04:10 +02:00
SVGRadialGradientElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGRadialGradientElement.idl
SVGRectElement.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
SVGRectElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGRectElement.idl
SVGScriptElement.cpp LibWeb: Add IDL definition for SVGScriptElement 2023-09-23 11:41:57 +02:00
SVGScriptElement.h LibWeb: Add IDL definition for SVGScriptElement 2023-09-23 11:41:57 +02:00
SVGScriptElement.idl LibWeb: Add IDL definition for SVGScriptElement 2023-09-23 11:41:57 +02:00
SVGStopElement.cpp LibWeb: Make external StyleValue-parsing methods infallible 2023-08-19 17:34:22 +02:00
SVGStopElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGStopElement.idl
SVGStyleElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGStyleElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGStyleElement.idl LibWeb: Add Optional<String> overload for Element::set_attribute 2023-09-02 19:23:41 +01:00
SVGSVGElement.cpp LibWeb: Rename Element::attribute to Element::deprecated_attribute 2023-09-05 20:36:09 -04:00
SVGSVGElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGSVGElement.idl
SVGSymbolElement.cpp LibWeb: Replace OverflowStyleValue with ShorthandStyleValue 2023-09-25 00:46:21 +01:00
SVGSymbolElement.h LibWeb: Make sure that SVG use and symbol elements get paintables 2023-08-20 05:02:59 +02:00
SVGSymbolElement.idl
SVGTextContentElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTextContentElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTextContentElement.idl LibWeb: Split SVGTextContentElement into spec defined subclasses 2023-07-23 06:32:39 +02:00
SVGTextElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTextElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTextElement.idl LibWeb: Split SVGTextContentElement into spec defined subclasses 2023-07-23 06:32:39 +02:00
SVGTextPositioningElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTextPositioningElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTextPositioningElement.idl LibWeb: Split SVGTextContentElement into spec defined subclasses 2023-07-23 06:32:39 +02:00
SVGTitleElement.cpp LibWeb: Remove FrameLoader 2023-09-20 18:29:17 +02:00
SVGTitleElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTitleElement.idl
SVGTSpanElement.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTSpanElement.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
SVGTSpanElement.idl LibWeb: Add support for SVG <tspan> elements 2023-07-23 06:32:39 +02:00
SVGUseElement.cpp LibWeb: Rename Element::attribute to Element::deprecated_attribute 2023-09-05 20:36:09 -04:00
SVGUseElement.h LibWeb: Ensure transform of SVG <use> updates with x and y attributes 2023-08-31 11:10:30 +02:00
SVGUseElement.idl
TagNames.cpp AK: Make "foo"_fly_string infallible 2023-08-07 16:03:27 +02:00
TagNames.h LibWeb: Stub out SVGMaskElement 2023-08-10 11:36:17 +02:00
ViewBox.cpp
ViewBox.h