Ignore:
Timestamp:
Jul 16, 2004, 3:56:24 PM (21 years ago)
Author:
sullivan
Message:

Reviewed by Maciej.

  • fixed <rdar://problem/3714644> REGRESSION (125.8-146): bugzilla submit link hangs browser with javascript
  • kjs/array_object.cpp: (ArrayProtoFuncImp::call): Check for undefined type for args[0] the same way we were already checking for args[1]. In this case, args was zero-length, but we were treating args[0] like an integer anyway. Resulted in some code looping from a NAN value to 4, taking approximately forever.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/array_object.cpp

    r6347 r7047  
    581581    Object resObj = Object::dynamicCast(exec->lexicalInterpreter()->builtinArray().construct(exec,List::empty()));
    582582    result = resObj;
    583     double begin = args[0].toInteger(exec);
    584     if (begin < 0) {
    585       begin += length;
    586       if (begin < 0)
    587         begin = 0;
    588     } else {
    589       if (begin > length)
    590         begin = length;
     583    double begin = 0;
     584    if (args[0].type() != UndefinedType) {
     585        begin = args[0].toInteger(exec);
     586        if (begin < 0) {
     587            begin += length;
     588            if (begin < 0)
     589                begin = 0;
     590        } else {
     591            if (begin > length)
     592                begin = length;
     593        }
    591594    }
    592595    double end = length;
Note: See TracChangeset for help on using the changeset viewer.