-
Notifications
You must be signed in to change notification settings - Fork 15.8k
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
Upgrade to Chrome 58 #9116
Upgrade to Chrome 58 #9116
Conversation
f83b19c
to
9a19e2b
Compare
@@ -277,7 +280,7 @@ bool Converter<blink::WebMouseWheelEvent>::FromV8( | |||
bool can_scroll = true; | |||
if (dict.Get("canScroll", &can_scroll) && !can_scroll) { | |||
out->hasPreciseScrollingDeltas = false; | |||
out->modifiers &= ~blink::WebInputEvent::ControlKey; | |||
out->setModifiers(out->modifiers() | blink::WebInputEvent::ControlKey); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this logic intentionally changed? It is not equivalent.
Before it keeps all flags except for ControlKey, and now it adds ControlKey flag
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is a mistake, thanks for finding it out!
The latter is removing some APIs we use.
I have updated Node to v7.9.0 and increased node module version. The tests of native modules are failing because of the bumping of node module version. This PR should be ready to merge, though I would expect to see unknown regressions due to Chrome and Node upgrade. |
I've updated this branch to build the spec modules against a local headers tarball instead of a published one so hopefully this shouldn't happen again going forward when we bump the node module version. |
Seeing some crashes from
Seems to occur possibly on the first GC in the main process, can reproduce pretty consistently by requiring a large library. Seeing it when running the specs on Windows against the release build when Will investigate further and try to narrow down. Here is another one:
|
Was able to track down the crash a bit more, here is a simpler reproduction: const crypto = require('crypto')
for (let i = 1; i < 10000; i++) {
crypto.randomBytes(i)
} This crashes for me each time |
For Buffers created in Node, they are usually allocated in Node and freed by Chromium's allocator, which will cause crashes when Node and Chromium are using different allocators. This commit makes Chromium use Node' allocator for ArrayBuffers.
I have pushed a fix for the crash in the main process, however when taking a heap snapshot in devtools, a crash would happen in renderer process:
It seems that some native classes were allocated in Chromium but freed in Node. |
Awesome work @zcbenz, specs no longer crash for me on Windows release builds, I've merged electron/libchromiumcontent#289 A new 58 release came out today and I've queued up the builds in electron/libchromiumcontent#290, I'll merge that into this branch once it completes. |
This has been released to beta in 1.7.0, please open new issues for any bugs you hit. |
Debug build compiles on:
Release build compiles on:
Tests passing on:
Merge: