Bug 15172

Summary: object fallback - empty string for first argument of setAttributeNS does not work like null
Product: WebKit Reporter: Michael A. Puls II <shadow2531>
Component: DOMAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: ap
Priority: P2    
Version: 523.x (Safari 3)   
Hardware: PC   
OS: All   
Attachments:
Description Flags
XHTML TC
none
createElementNS test none

Michael A. Puls II
Reported 2007-09-10 11:04:01 PDT
Tested with WebKit-SVN-r25455. setAttributeNS takes a string for the first argument. Therefore, if you want to put an attribute in the null namespace, you would use "". This works fine in Opera and Firefox (so does null), but webkit requires null. If you do setAttributeNS("", "type", "application/x-unrecognized") on an object element and append it to the document, if the object has fallback content, it won't be shown unless you use null instead.
Attachments
XHTML TC (815 bytes, application/xhtml+xml)
2007-09-10 11:05 PDT, Michael A. Puls II
no flags
createElementNS test (427 bytes, text/html)
2007-10-29 22:52 PDT, Michael A. Puls II
no flags
Michael A. Puls II
Comment 1 2007-09-10 11:05:11 PDT
Created attachment 16246 [details] XHTML TC
Alexey Proskuryakov
Comment 2 2007-09-10 21:57:24 PDT
From DOM3Core: "Applications should use the value null as the namespaceURI parameter for methods if they wish to have no namespace. In programming languages where empty strings can be differentiated from null, empty strings, when given as a namespace URI, are converted to null." Also: "applications must use the value null as the namespaceURI parameter for methods if they wish to have no namespace." So, while null is the preferred form, both null and empty string should work.
Michael A. Puls II
Comment 3 2007-10-29 22:52:43 PDT
Created attachment 16943 [details] createElementNS test This affects createElementNS also and probably other ns functions. createElementNS("", "div") should do the exact same thing as createElementNS(null, "div"), but it doesn't in Safari. Works fine in Opera and FF.
Alexey Proskuryakov
Comment 4 2009-03-14 04:57:17 PDT
Michael A. Puls II
Comment 5 2009-03-14 21:23:16 PDT
Thanks!
Note You need to log in before you can comment on or make changes to this bug.