Skip to content

Commit 325ee1e

Browse files
committed
fix internal slots check in methods of some more built-in types
1 parent 4a29d1f commit 325ee1e

File tree

5 files changed

+11
-5
lines changed

5 files changed

+11
-5
lines changed

CHANGELOG.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
## Changelog
22
##### Unreleased
3-
- Fixed requirements of internal slots in `Observable` / `Subscription` / `SubscriptionObserver`, [#1017](https://github.com/zloirock/core-js/issues/1017)
3+
- Fixed internal slots check in methods of some built-in types, [#1017](https://github.com/zloirock/core-js/issues/1017)
44
- Fixed `URLSearchParams` iterator `.next` that should be enumerable [by the spec](https://webidl.spec.whatwg.org/#es-iterator-prototype-object)
55
- Added NodeJS 17.2 compat data mapping
66

packages/core-js/internals/async-from-sync-iterator.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ var AsyncIteratorPrototype = require('../internals/async-iterator-prototype');
1010

1111
var Promise = getBuiltIn('Promise');
1212

13+
var ASYNC_FROM_SYNC_ITERATOR = 'AsyncFromSyncIterator';
1314
var setInternalState = InternalStateModule.set;
14-
var getInternalState = InternalStateModule.get;
15+
var getInternalState = InternalStateModule.getterFor(ASYNC_FROM_SYNC_ITERATOR);
1516

1617
var asyncFromSyncIteratorContinuation = function (result, resolve, reject) {
1718
var done = result.done;
@@ -22,6 +23,7 @@ var asyncFromSyncIteratorContinuation = function (result, resolve, reject) {
2223

2324
var AsyncFromSyncIterator = function AsyncIterator(iterator) {
2425
setInternalState(this, {
26+
type: ASYNC_FROM_SYNC_ITERATOR,
2527
iterator: anObject(iterator),
2628
next: iterator.next
2729
});

packages/core-js/internals/async-iterator-create-proxy.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,15 @@ var AsyncIteratorPrototype = require('../internals/async-iterator-prototype');
1313

1414
var Promise = getBuiltIn('Promise');
1515

16+
var ASYNC_ITERATOR_PROXY = 'AsyncIteratorProxy';
1617
var setInternalState = InternalStateModule.set;
17-
var getInternalState = InternalStateModule.get;
18+
var getInternalState = InternalStateModule.getterFor(ASYNC_ITERATOR_PROXY);
1819

1920
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
2021

2122
module.exports = function (nextHandler, IS_ITERATOR) {
2223
var AsyncIteratorProxy = function AsyncIterator(state) {
24+
state.type = ASYNC_ITERATOR_PROXY;
2325
state.next = aCallable(state.iterator.next);
2426
state.done = false;
2527
state.ignoreArgument = !IS_ITERATOR;

packages/core-js/internals/iterator-create-proxy.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,15 @@ var InternalStateModule = require('../internals/internal-state');
1010
var getMethod = require('../internals/get-method');
1111
var IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;
1212

13+
var ITERATOR_PROXY = 'IteratorProxy';
1314
var setInternalState = InternalStateModule.set;
14-
var getInternalState = InternalStateModule.get;
15+
var getInternalState = InternalStateModule.getterFor(ITERATOR_PROXY);
1516

1617
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
1718

1819
module.exports = function (nextHandler, IS_ITERATOR) {
1920
var IteratorProxy = function Iterator(state) {
21+
state.type = ITERATOR_PROXY;
2022
state.next = aCallable(state.iterator.next);
2123
state.done = false;
2224
state.ignoreArg = !IS_ITERATOR;

packages/core-js/modules/es.promise.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ var V8_VERSION = require('../internals/engine-v8-version');
3434
var SPECIES = wellKnownSymbol('species');
3535
var PROMISE = 'Promise';
3636

37-
var getInternalState = InternalStateModule.get;
37+
var getInternalState = InternalStateModule.getterFor(PROMISE);
3838
var setInternalState = InternalStateModule.set;
3939
var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
4040
var NativePromisePrototype = NativePromise && NativePromise.prototype;

0 commit comments

Comments
 (0)