mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 19:22:45 +00:00 
			
		
		
		
	LibWeb: Don't resolve CSS property values for unconnected elements
While it's possible to getComputedStyle() on an unconnected element, the resulting object is not supposed to have any values, since we can't resolve style without a document root anyway. This fixes a crash on https://bandcamp.com
This commit is contained in:
		
							parent
							
								
									4005793e79
								
							
						
					
					
						commit
						89ba7246dd
					
				
					 3 changed files with 23 additions and 0 deletions
				
			
		|  | @ -666,6 +666,11 @@ ErrorOr<RefPtr<StyleValue const>> ResolvedCSSStyleDeclaration::style_value_for_p | |||
| 
 | ||||
| Optional<StyleProperty> ResolvedCSSStyleDeclaration::property(PropertyID property_id) const | ||||
| { | ||||
|     // https://www.w3.org/TR/cssom-1/#dom-window-getcomputedstyle
 | ||||
|     // NOTE: This is a partial enforcement of step 5 ("If elt is connected, ...")
 | ||||
|     if (!m_element->is_connected()) | ||||
|         return {}; | ||||
| 
 | ||||
|     if (CSS::property_affects_layout(property_id)) { | ||||
|         const_cast<DOM::Document&>(m_element->document()).update_layout(); | ||||
|     } else { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling