WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 57746
HTMLOptionElement::text incorrectly normalize U+3000 to U+0020.
https://bugs.webkit.org/show_bug.cgi?id=57746
Summary
HTMLOptionElement::text incorrectly normalize U+3000 to U+0020.
Kent Tamura
Reported
2011-04-04 01:24:00 PDT
Reported in Chrome Help Forum (Japanese):
http://www.google.com/support/forum/p/chrome/thread?tid=1e819edbe70751b4&hl=ja
Specification:
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-button-element.html#dom-option-text
> must return the value of the textContent IDL attribute on the element with leading and > trailing space characters removed, and with any sequences of two or more space characters > replaced by a single U+0020 SPACE character.
> The space characters, for the purposes of this specification, are U+0020 SPACE, > U+0009 CHARACTER TABULATION (tab), U+000A LINE FEED (LF), U+000C FORM FEED (FF), > and U+000D CARRIAGE RETURN (CR).
We use isSpaceOrNewLine() for HTMLOptionElement::text.
Attachments
Patch
(28.04 KB, patch)
2011-07-25 05:19 PDT
,
Shinya Kawanaka
no flags
Details
Formatted Diff
Diff
Patch
(27.35 KB, patch)
2011-07-26 00:02 PDT
,
Shinya Kawanaka
no flags
Details
Formatted Diff
Diff
Patch
(28.10 KB, patch)
2011-07-27 04:52 PDT
,
Shinya Kawanaka
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Shinya Kawanaka
Comment 1
2011-07-25 05:19:37 PDT
Created
attachment 101863
[details]
Patch
Kent Tamura
Comment 2
2011-07-25 22:45:43 PDT
Comment on
attachment 101863
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=101863&action=review
> LayoutTests/fast/forms/option-strip-unicode-spaces.html:11 > +<script src="script-tests/option-strip-unicode-spaces.js"></script>
You don't need to have a separated JavaScript file. Please embed the JavaScript code here.
> LayoutTests/fast/forms/script-tests/option-strip-unicode-spaces.js:3 > +// see
http://www.whatwg.org/specs/web-apps/current-work/multipage/common-microsyntaxes.html#space-character
Start the comment with a capital letter. // See http:...
> LayoutTests/fast/forms/script-tests/option-strip-unicode-spaces.js:4 > +var spaces = [
The name should be 'HTMLSpaces' or something.
> LayoutTests/fast/forms/script-tests/option-strip-unicode-spaces.js:15 > +var nonSpaces = [
The name should be 'nonHTMLSpaces' or something.
> LayoutTests/fast/forms/script-tests/option-strip-unicode-spaces.js:47 > +debug('insert one space before/after/between the text');
A heading should be start with a capital letter.
> LayoutTests/fast/forms/script-tests/option-strip-unicode-spaces.js:67 > +debug('insert one non space before/after/between the text');
'one non space' is confusing. 'one non-HTML space' might be better.
> Source/WebCore/dom/OptionElement.cpp:38 > +// For removing whitespaces of text attribute in option element, only these 5 characters are treated as space. > +// See also
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-button-element.html#dom-option-text
> +static bool isOptionTextSpace(UChar c) > +{
We already have isHTMLSpace() in WebCore/html/parserHTMLParserIdioms.h.
Kent Tamura
Comment 3
2011-07-25 22:46:39 PDT
(In reply to
comment #2
)
> We already have isHTMLSpace() in WebCore/html/parserHTMLParserIdioms.h.
WebCore/html/parser/HTMLParserIdioms.h.
Shinya Kawanaka
Comment 4
2011-07-26 00:02:41 PDT
Created
attachment 101975
[details]
Patch
Kent Tamura
Comment 5
2011-07-26 00:57:02 PDT
Comment on
attachment 101975
[details]
Patch ok. Thank you for fixing this.
WebKit Review Bot
Comment 6
2011-07-26 02:10:33 PDT
Comment on
attachment 101975
[details]
Patch Clearing flags on attachment: 101975 Committed
r91746
: <
http://trac.webkit.org/changeset/91746
>
WebKit Review Bot
Comment 7
2011-07-26 02:10:37 PDT
All reviewed patches have been landed. Closing bug.
Csaba Osztrogonác
Comment 8
2011-07-26 07:15:40 PDT
Did you realized if you broke the Snow Leopard build? Are you working on fixing it now?
Csaba Osztrogonác
Comment 9
2011-07-26 08:06:01 PDT
Reopen, because it was rolled out by
http://trac.webkit.org/changeset/91756
Mihnea Ovidenie
Comment 10
2011-07-26 08:09:07 PDT
(In reply to
comment #9
)
> Reopen, because it was rolled out by
http://trac.webkit.org/changeset/91756
Hi, I fixed the build on my machine by adding the new functions to JavaScriptCore.exp: diff --git a/Source/JavaScriptCore/JavaScriptCore.exp b/Source/JavaScriptCore/JavaScriptCore.exp index 4a7a3db..d6995a6 100644 --- a/Source/JavaScriptCore/JavaScriptCore.exp +++ b/Source/JavaScriptCore/JavaScriptCore.exp @@ -584,9 +584,11 @@ __ZNK3WTF6String12toUIntStrictEPbi __ZNK3WTF6String13toInt64StrictEPbi __ZNK3WTF6String14threadsafeCopyEv __ZNK3WTF6String15stripWhiteSpaceEv +__ZNK3WTF6String15stripWhiteSpaceEPFbtE __ZNK3WTF6String16removeCharactersEPFbtE __ZNK3WTF6String17crossThreadStringEv __ZNK3WTF6String18simplifyWhiteSpaceEv +__ZNK3WTF6String18simplifyWhiteSpaceEPFbtE __ZNK3WTF6String19characterStartingAtEj __ZNK3WTF6String4utf8Eb __ZNK3WTF6String5asciiEv Regards,
Csaba Osztrogonác
Comment 11
2011-07-26 08:12:45 PDT
rs=me to land it again with this fix. Thanks for the fix.
Shinya Kawanaka
Comment 12
2011-07-27 04:52:54 PDT
Created
attachment 102127
[details]
Patch
Kent Tamura
Comment 13
2011-07-27 04:54:25 PDT
Comment on
attachment 102127
[details]
Patch ok
Shinya Kawanaka
Comment 14
2011-07-27 05:00:49 PDT
(In reply to
comment #9
)
> Reopen, because it was rolled out by
http://trac.webkit.org/changeset/91756
Csaba, Sorry for breaking the build. I have enhanced my workflow less likely to break the build. Anyway, I resubmit the patch which should be buildable in apple port on Snow Leopard.
WebKit Review Bot
Comment 15
2011-07-27 06:07:55 PDT
Comment on
attachment 102127
[details]
Patch Clearing flags on attachment: 102127 Committed
r91837
: <
http://trac.webkit.org/changeset/91837
>
WebKit Review Bot
Comment 16
2011-07-27 06:08:02 PDT
All reviewed patches have been landed. Closing bug.
Darin Adler
Comment 17
2011-07-27 12:13:31 PDT
Comment on
attachment 102127
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=102127&action=review
> Source/JavaScriptCore/wtf/text/StringImpl.cpp:319 > PassRefPtr<StringImpl> StringImpl::stripWhiteSpace() > { > + return stripWhiteSpace(isSpaceOrNewline); > +}
I think it will be a significant slowdown to call a function for every character, so I think this is not a good change for existing callers of this function.
Kent Tamura
Comment 18
2011-07-27 20:51:36 PDT
(In reply to
comment #17
)
> > PassRefPtr<StringImpl> StringImpl::stripWhiteSpace() > > { > > + return stripWhiteSpace(isSpaceOrNewline); > > +} > > I think it will be a significant slowdown to call a function for every character, so I think this is not a good change for existing callers of this function.
ok, let's address this slowdown issue in
Bug 65300
.
Kent Tamura
Comment 19
2011-10-11 02:24:09 PDT
***
Bug 38226
has been marked as a duplicate of this bug. ***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug