Ignore:
Timestamp:
Dec 1, 2015, 1:06:25 AM (10 years ago)
Author:
[email protected]
Message:

[Streams API] streams should not directly use Number and related methods
https://bugs.webkit.org/show_bug.cgi?id=151499

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • runtime/CommonIdentifiers.h: Adding isNaN as private symbol.
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init): Adding @isNaN function.

Source/WebCore:

Covered by updated test.

Using @Number, @isFinite and @isNaN in place of Number, Number.isFinite and Number.isNaN.

  • Modules/streams/ReadableStreamInternals.js:

(enqueueInReadableStream):

  • Modules/streams/StreamInternals.js:

(validateAndNormalizeQueuingStrategy):
(enqueueValueWithSize):

LayoutTests:

Added a non-regression test.

  • streams/streams-promises-expected.txt:
  • streams/streams-promises.html:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/runtime/JSGlobalObject.cpp

    r192855 r192874  
    501501    JSFunction* privateFuncFloor = JSFunction::create(vm, this, 0, String(), mathProtoFuncFloor, FloorIntrinsic);
    502502    JSFunction* privateFuncIsFinite = JSFunction::create(vm, this, 0, String(), globalFuncIsFinite);
     503    JSFunction* privateFuncIsNaN = JSFunction::create(vm, this, 0, String(), globalFuncIsNaN);
    503504
    504505    JSFunction* privateFuncGetTemplateObject = JSFunction::create(vm, this, 0, String(), getTemplateObject);
     
    528529        GlobalPropertyInfo(vm.propertyNames->floorPrivateName, privateFuncFloor, DontEnum | DontDelete | ReadOnly),
    529530        GlobalPropertyInfo(vm.propertyNames->isFinitePrivateName, privateFuncIsFinite, DontEnum | DontDelete | ReadOnly),
     531        GlobalPropertyInfo(vm.propertyNames->isNaNPrivateName, privateFuncIsNaN, DontEnum | DontDelete | ReadOnly),
    530532        GlobalPropertyInfo(vm.propertyNames->arrayIterationKindKeyPrivateName, jsNumber(ArrayIterateKey), DontEnum | DontDelete | ReadOnly),
    531533        GlobalPropertyInfo(vm.propertyNames->arrayIterationKindValuePrivateName, jsNumber(ArrayIterateValue), DontEnum | DontDelete | ReadOnly),
Note: See TracChangeset for help on using the changeset viewer.