[Webkit-unassigned] [Bug 9179] Implement select.options.add() method
bugzilla-daemon at opendarwin.org
bugzilla-daemon at opendarwin.org
Mon Jul 3 18:02:17 PDT 2006
http://bugzilla.opendarwin.org/show_bug.cgi?id=9179
darin at apple.com changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #9174|review? |review+
Flag| |
------- Comment #17 from darin at apple.com 2006-07-03 18:02 PDT -------
(From update of attachment 9174)
The reason getNumber returns a boolean is so that you don't have to make a
separate call to isNumber. And we don't use the function call syntax for type
casts -- instead we use C++ cast syntax. So this:
+ if (value->isNumber()) {
+ double lengthValue;
+ value->getNumber(lengthValue);
+ if (lengthValue < 0.0)
+ return;
+ if (lengthValue > double(UINT_MAX))
+ newLength = UINT_MAX;
+ else
+ newLength = unsigned(lengthValue);
+ }
should be:
double lengthValue;
if (value->getNumber(lengthValue)) {
if (lengthValue < 0.0)
return;
if (lengthValue > static_cast<double>(UINT_MAX))
newLength = UINT_MAX;
else
newLength = static_cast<unsigned>(lengthValue);
}
I'd like to see tests that cover a few more of the branches, for example
setting length to infinity and NaN. The code makes infinite try to set it to
UINT_MAX, NaN sets it to 0, although -1 doesn't change the existing length. Is
that really the behavior we want? If so, then lets make sure tests exercise
those cases and perhaps try them in other browsers.
r=me
--
Configure bugmail: http://bugzilla.opendarwin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the webkit-unassigned
mailing list