-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding lane crashes IE/Edge #746
Comments
Probably related to this forum report. |
As a sidenote, I noticed opening demo.bpmn.io on IE11 leads to a blank canvas. The console shows a syntax error related to unsupported class syntax usage in On Edge using the provided diagram example in the forum post, I can add lanes above and below without experiencing a crash and without the canvas being empty. Not shown in the gifs, but I tried convulsively adding lanes above and below - no crash or empty canvas. I can look into the IE11 case. |
This is about to be fixed in the update demo.
I cannot reproduce any of the issues on IE11. I tried:
Which one exactly can you still reproduce? |
I can reproduce both locally using the modeler example in I tried to do so on demo.bpmn.io after the syntax error fix you mentioned went live, but it doesn't happen there.
For the first case (Example diagram, opening, adding lane above / below):
The stack trace is as reported in the forum post you linked above. Note I was using
For the second case (editing the participant name in a newly created diagram), I simplified the steps from the forum post a bit:
Here, the stack trace is the same as that of the first case. On further interaction, more errors are logged to the console (Unable to get property 'childNodes' of undefined or null reference). Do any of these steps work for you? |
I forgot to mention, I didn't see the chinese characters while trying to reproduce these bugs locally but I do see them briefly when refreshing IE11 on https://demo.bpmn.io/new. |
I spent some more time on this but wasn't able to figure out the cause of the error. Here's what I managed to find: The stack trace points to a call to The bug is intermittent. Sometimes the repro steps work, sometimes they don't. Maybe an async issue? The unspecified error's code is 16389. While searching for that, I noticed it seems to be a generic error that IE throws whenever it encounters some JS code it doesn't like. That same error is thrown when I attempt to call try {
var element = document.createElement('div');
element.getBoundingClientRect();
} catch (e) {
console.log(e.number & 0xFFFF) // 16389
}
// https:///developer.mozilla.org/en-US/docs/Web/JavaScript/Microsoft_Extensions/Error.number#Example So then I thought perhaps it's because one of the elements passed as arguments to
That doesn't seem to be the problem.
My searches for Maybe what I've found is of some use and I've overlooked something. FWIW, Here's a gif of the error following the repro steps of the second case: |
We must ensure that we default to <null> as the reference node when using Node#insertBefore in our code base. Cf. https://developer.mozilla.org/en-US/docs/Web/API/Node/insertBefore This may be related to bpmn-io/bpmn-js#746
This may be related to the fact that we don't explicitly pass |
Right, that was another suspicion of mine but IE11 just inserts the Here's a jsbin snippet demonstrating that. |
Forget my previous comment; I reverted it as 😢 |
The check is unnecessary, as `Node#firstChild` defaults to null as per spec. Related to bpmn-io/bpmn-js#746
Good news is that I can reliably reproduce the issue you describe in your previous comment on my IE 11 (inside a VM)! |
Wonderful! Glad to hear it. |
We applied a MS IE / Edge fix just recently that may circumvent this issue. |
Thanks for the tip - I just reinstalled the modeler example's dependencies with bpmn-js at 3.2.1 but unfortunately I can still reproduce the issue in IE11 when changing the participant label. |
Did you update diagram-js, too? |
I did, yes. It's at 3.1.3. |
It's very likely that this is an issue with the second parameter of As MDN states:
Source: https://developer.mozilla.org/en-US/docs/Web/API/Node/insertBefore |
Which second parameter do you refer to? Which usage of |
I'm referring to |
Closed via 202eff5 |
Released as |
Adding a lane can result in either an empty canvas or IE/Edge crashing.
Forum: https://forum.bpmn.io/t/microsoft-edge-ie11-crahes-when-adding-a-lane/1968
Related to SUPPORT-5815
The text was updated successfully, but these errors were encountered: