mirror of
				https://github.com/LadybirdBrowser/ladybird.git
				synced 2025-10-31 13:20:59 +00:00 
			
		
		
		
	LibWeb: Make HTMLScriptElement.src getter resolve to absolute URL
The src IDL attribute was previously implemented as an inline getter that returned the raw attribute value. This broke spec semantics and sites like Telegram Web that rely on document.currentScript.src to compute Webpack’s publicPath. According to the HTML Standard: https://html.spec.whatwg.org/multipage/common-dom-interfaces.html#reflecting-content-attributes-in-idl-attributes For URL-reflecting attributes: 1. If contentAttributeValue is null, then return the empty string. 2. Let urlString be the result of encoding-parsing-and-serializing a URL given contentAttributeValue, relative to element’s node document. 3. If urlString is not failure, then return urlString. This patch moves the getter to HTMLScriptElement.cpp and implements these steps.
This commit is contained in:
		
							parent
							
								
									f44e42d27c
								
							
						
					
					
						commit
						4ff7c9043b
					
				
				
				Notes:
				
					github-actions[bot]
				
				2025-10-07 19:56:07 +00:00 
				
			
			Author: https://github.com/shlyakpavel
Commit: 4ff7c9043b
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/6255
Reviewed-by: https://github.com/gmta ✅
Reviewed-by: https://github.com/shannonbooth
Reviewed-by: https://github.com/tete17
			
					 4 changed files with 51 additions and 1 deletions
				
			
		|  | @ -62,7 +62,7 @@ public: | |||
|     TrustedTypes::TrustedScriptOrString text() const { return child_text_content(); } | ||||
|     WebIDL::ExceptionOr<void> set_text(TrustedTypes::TrustedScriptOrString); | ||||
| 
 | ||||
|     TrustedTypes::TrustedScriptURLOrString src() const { return Utf16String::from_utf8(get_attribute_value(AttributeNames::src)); } | ||||
|     TrustedTypes::TrustedScriptURLOrString src() const; | ||||
|     WebIDL::ExceptionOr<void> set_src(TrustedTypes::TrustedScriptURLOrString); | ||||
| 
 | ||||
|     Variant<GC::Root<TrustedTypes::TrustedScript>, Utf16String, Empty> text_content() const; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Pavel Shliak
						Pavel Shliak