Ckeditor5: Chrome 51: Uncaught TypeError: Iterator result undefined is not an object

Created on 1 Jun 2016  路  8Comments  路  Source: ckeditor/ckeditor5

Since Chrome 51 we've got these errors in couple of places in our code.

https://twitter.com/reinmarpl/status/737926748453670912

Apparently, there's something wrong with the new V8. We need a quick workaround to be able to continue working and we need to report this to the V8 team.

engine bug

Most helpful comment

I reported this to v8 bug tracker https://bugs.chromium.org/p/v8/issues/detail?id=5057.

All 8 comments

As for the workaround (6a0e21f5) I've got two comments:

  1. https://github.com/ckeditor/ckeditor5-engine/commit/6a0e21f5df743a61392b2ca6d220ddd318b0aefd#commitcomment-17693257
  2. We should leave comments in the code mentioning that this code is not optimal because of this issue. We can't be sure how long it will stay with us ;/

I've added more changes according to your suggestions.

It looks like delegating from one generator to iterable object throws in chrome v51:

'use strict';

const keys = getAttributeKeys();
for (let key of keys) {
    if (key === 'three') {
        break;
    }
    console.log(key);
}


function* getAttributeKeys() {
    yield* ['one', 'two', 'three'];
}

Delegating to another generator instead of array works ok.

I reported this to v8 bug tracker https://bugs.chromium.org/p/v8/issues/detail?id=5057.

Looks like the bug was fixed by V8 team: https://bugs.chromium.org/p/v8/issues/detail?id=5057#c18

We'll be able to revert our changes soon.

Chrome 51 is out, so it may be worth to try reverting all the changes that we've made.

Sorry, I can still reproduce the issue on the fiddle, so I guess Chrome 51 doesn't use that fixed V8 version yet.

Let's revert those changes :D

Was this page helpful?
0 / 5 - 0 ratings

Related issues

jodator picture jodator  路  3Comments

MCMicS picture MCMicS  路  3Comments

oleq picture oleq  路  3Comments

MansoorJafari picture MansoorJafari  路  3Comments

benjismith picture benjismith  路  3Comments