mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-26 01:35:08 +02:00
LibWeb: Add missing visit_edges() for ImageStyleValue
ImageStyleValue has a visit_edges() method, although it is not a GC-allocated object. This is necessary because it owns a GC-allocated ImageRequest that we want to visit, instead of using JS::Handle, to avoid leaks. In the future, we might want to make StyleValue be GC-allocated. For now, this change adds missing visit_edges() calls for objects that own ImageStyleValue.
This commit is contained in:
committed by
Andreas Kling
parent
b43b3d2f8d
commit
32be413f4e
Notes:
sideshowbarker
2024-07-17 07:19:27 +09:00
Author: https://github.com/kalenikaliaksandr Commit: https://github.com/SerenityOS/serenity/commit/32be413f4e Pull-request: https://github.com/SerenityOS/serenity/pull/21247
@@ -307,6 +307,17 @@ NodeWithStyle::NodeWithStyle(DOM::Document& document, DOM::Node* node, CSS::Comp
|
||||
m_font = Platform::FontPlugin::the().default_font();
|
||||
}
|
||||
|
||||
void NodeWithStyle::visit_edges(Visitor& visitor)
|
||||
{
|
||||
Base::visit_edges(visitor);
|
||||
for (auto& layer : m_computed_values.background_layers()) {
|
||||
if (layer.background_image && layer.background_image->is_image())
|
||||
layer.background_image->as_image().visit_edges(visitor);
|
||||
}
|
||||
if (m_list_style_image && m_list_style_image->is_image())
|
||||
m_list_style_image->as_image().visit_edges(visitor);
|
||||
}
|
||||
|
||||
// https://www.w3.org/TR/css-values-4/#snap-a-length-as-a-border-width
|
||||
static CSSPixels snap_a_length_as_a_border_width(double device_pixels_per_css_pixel, CSSPixels length)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user