Skip to content
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

Fix memory leak when using webFrame and spell checker (4-0-x) #16772

Merged
merged 2 commits into from Feb 12, 2019

Conversation

Projects
None yet
4 participants
@zcbenz
Copy link
Member

zcbenz commented Feb 6, 2019

Backport #16770 to 4-0-x.

Notes: Fix memory leak when using webFrame and spell checker.

@zcbenz zcbenz requested a review from as a code owner Feb 6, 2019

@zcbenz zcbenz force-pushed the web-frame-refactor-4-0-x branch from 709a084 to ebebdbb Feb 6, 2019

// Find existing holder for the |render_frame|.
static SpellCheckerHolder* FromRenderFrame(
content::RenderFrame* render_frame) {
for (auto* holder : instances_) {

This comment has been minimized.

@shahzadlone

shahzadlone Feb 6, 2019

Contributor

perhaps const if not modified?

@zcbenz zcbenz force-pushed the web-frame-refactor-4-0-x branch 2 times, most recently from 5ea93f7 to 442cf94 Feb 6, 2019

zcbenz added some commits Feb 6, 2019

fix: do not create native api::WebFrame in webFrame
When reloading a page without restarting renderer process (for example
sandbox mode), the blink::WebFrame is not destroyed, but api::WebFrame
is always recreated for the new page context. This leaves a leak of
api::WebFrame.

@zcbenz zcbenz force-pushed the web-frame-refactor-4-0-x branch from 442cf94 to 9709745 Feb 6, 2019

@zcbenz

This comment has been minimized.

Copy link
Member Author

zcbenz commented Feb 7, 2019

The failing test is not related to this PR as it also happens on the target branch.

@jkleinsc jkleinsc merged commit 45a554f into 4-0-x Feb 12, 2019

9 checks passed

Absolute Zero
Semantic Pull Request ready to be merged or rebased
Details
appveyor: win-ia32-debug AppVeyor build succeeded
Details
appveyor: win-ia32-testing AppVeyor build succeeded
Details
appveyor: win-ia32-testing-pr AppVeyor build succeeded
Details
appveyor: win-x64-debug AppVeyor build succeeded
Details
appveyor: win-x64-testing AppVeyor build succeeded
Details
appveyor: win-x64-testing-pr AppVeyor build succeeded
Details
release-notes Release notes found
@release-clerk

This comment has been minimized.

Copy link

release-clerk bot commented Feb 12, 2019

Release Notes Persisted

Fix memory leak when using webFrame and spell checker.

@jkleinsc jkleinsc deleted the web-frame-refactor-4-0-x branch Feb 12, 2019

@vrbsm vrbsm referenced this pull request Feb 15, 2019

Merged

ELECTRON-1019: Enable spellchecker for popup window #571

1 of 2 tasks complete

@alexeykuzmin alexeykuzmin referenced this pull request Feb 27, 2019

Merged

chore: remove an unused header #17158

4 of 4 tasks complete

sergiughf added a commit to sergiughf/franz that referenced this pull request Mar 11, 2019

Update electron to 4.0.8
Update required in order to fix performance degradation due to memory leak issue electron/electron#16772.

@sergiughf sergiughf referenced this pull request Mar 11, 2019

Merged

Update electron to 4.0.8 #1337

2 of 4 tasks complete

adlk added a commit to meetfranz/franz that referenced this pull request Mar 18, 2019

Release/5.0.1 beta.1 (#1344)
* Add lerna

* Add theme

* Add forms

* Add misty config to build theme & forms

* reset packages version

* Publish

 - @meetfranz/forms@1.0.0
 - @meetfranz/theme@1.0.0

* Reset package version

* restructure packages

* try ci with lerna

* Fix missing packages in build

* move storybook to root + typescript

TODO: fix modules

* Add lerna instructions

* Merge

* wip

* Make packages work in electron, node and web

* Finalize packages & replace storybook with homegrown `uidev`

* Bring package-lock back in sync

* Publish

 - @meetfranz/forms@1.0.1
 - @meetfranz/theme@1.0.1

* fix webpack issue

* expose legacy styles

* Add toggle element to @meetfranz/forms

* start typings package

* Update package.json

* Add buttons

* Update theme

* add types

* Add mdi icons to buttons

* Publish

 - @meetfranz/forms@1.0.2
 - @meetfranz/theme@1.0.2
 - @meetfranz/typings@0.0.1

* Button, add missing success state

* Update lerna packages

* Try to disable automatic npm ci

* Try to get a working bundle

* Add href and type to button component

* Update packages

* update versions

* cleanup

* Update package versions

[ci skip]

* Update versions

* Add withTheme context to button

* Update & reuse electron-rebuild

* feat(Windows): Add option to quit Franz from Taskbar icon

* Add missing withTheme

* Fix package versions

* Update versions

* Add pageview event

* Simplify analytics calls

* Pin gulp-sass-variables to 1.1.1

* Add onFocus event

* Add modal overlay color

* remove legacy theme files

* remove code

* Add dialog to share franz on social media

* Fix service count

* remove ping

* replace ms time strings with ms module

* remove unused packages

* fix value setter

* new payment flow

* fix module reference

* feat(Spell check): Add en-gb spell check languages (#1306)

* move devmode info

* fix(Windows): Fix losing window when "Keep Franz in background" is enabled

* fix(Service): Fix service zoom (cmd/ctrl+ & cmd/ctrl-)

* fixes appveyor build issue

* feat(App): Update electron to 4.0.7

* ignore intellij idea project files

* Automatic i18n update (i18n.meetfranz.com)

* feat(App): Add security checks for external URLs

* setup react-intl translations managing script

* use same zooming logic for all os

* feat(Linux): Add auto updater for Linux AppImage builds

* Add ctrl+ for zoom in on Windows

* move translation scripts into src/i18n folder

* only manage en-US translations

* manage translations before git pushes

* Fix unused i18n strings

* Bump version to 5.0.1-beta.1

* fix(Service) shortcuts for activating prev/next service fixes #1298

* fix(Service): Fix shortcut for (un)muting notifications & audio

* add missing react-intl files

* correctly update services submenu on language change

* fix(Windows): Fix copy & paste in service context menus

Closes #1316

* fix(Linux): Fix minimized window focusing (#1304) (@skoruppa)

* trigger build

* Check if window is minimized before restoring it

* restore() should be executed only when window is minimized

* fix(Notifications): Fix notifications & notification click when icon is blob

* Fix/service webview unmounting (#1328)

* detach service when underlying webview unmounts

* disable no-param-reassign eslint rule

* Add notification debug events

* Update electron to 4.0.8

Update required in order to fix performance degradation due to memory leak issue electron/electron#16772.

* Automatic i18n update (i18n.meetfranz.com)

* Automatic i18n update (i18n.meetfranz.com)

* 5.0.1-beta.1

adlk added a commit to meetfranz/franz that referenced this pull request Mar 25, 2019

Release/5.0.1 (#1354)
* Add lerna

* Add theme

* Add forms

* Add misty config to build theme & forms

* reset packages version

* Publish

 - @meetfranz/forms@1.0.0
 - @meetfranz/theme@1.0.0

* Reset package version

* restructure packages

* try ci with lerna

* Fix missing packages in build

* move storybook to root + typescript

TODO: fix modules

* Add lerna instructions

* Merge

* wip

* Make packages work in electron, node and web

* Finalize packages & replace storybook with homegrown `uidev`

* Bring package-lock back in sync

* Publish

 - @meetfranz/forms@1.0.1
 - @meetfranz/theme@1.0.1

* fix webpack issue

* expose legacy styles

* Add toggle element to @meetfranz/forms

* start typings package

* Update package.json

* Add buttons

* Update theme

* add types

* Add mdi icons to buttons

* Publish

 - @meetfranz/forms@1.0.2
 - @meetfranz/theme@1.0.2
 - @meetfranz/typings@0.0.1

* Button, add missing success state

* Update lerna packages

* Try to disable automatic npm ci

* Try to get a working bundle

* Add href and type to button component

* Update packages

* update versions

* cleanup

* Update package versions

[ci skip]

* Update versions

* Add withTheme context to button

* Update & reuse electron-rebuild

* feat(Windows): Add option to quit Franz from Taskbar icon

* Add missing withTheme

* Fix package versions

* Update versions

* Add pageview event

* Simplify analytics calls

* Pin gulp-sass-variables to 1.1.1

* Add onFocus event

* Add modal overlay color

* remove legacy theme files

* remove code

* Add dialog to share franz on social media

* Fix service count

* remove ping

* replace ms time strings with ms module

* remove unused packages

* fix value setter

* new payment flow

* fix module reference

* feat(Spell check): Add en-gb spell check languages (#1306)

* move devmode info

* fix(Windows): Fix losing window when "Keep Franz in background" is enabled

* fix(Service): Fix service zoom (cmd/ctrl+ & cmd/ctrl-)

* fixes appveyor build issue

* feat(App): Update electron to 4.0.7

* ignore intellij idea project files

* Automatic i18n update (i18n.meetfranz.com)

* feat(App): Add security checks for external URLs

* setup react-intl translations managing script

* use same zooming logic for all os

* feat(Linux): Add auto updater for Linux AppImage builds

* Add ctrl+ for zoom in on Windows

* move translation scripts into src/i18n folder

* only manage en-US translations

* manage translations before git pushes

* Fix unused i18n strings

* Bump version to 5.0.1-beta.1

* fix(Service) shortcuts for activating prev/next service fixes #1298

* fix(Service): Fix shortcut for (un)muting notifications & audio

* add missing react-intl files

* correctly update services submenu on language change

* fix(Windows): Fix copy & paste in service context menus

Closes #1316

* fix(Linux): Fix minimized window focusing (#1304) (@skoruppa)

* trigger build

* Check if window is minimized before restoring it

* restore() should be executed only when window is minimized

* fix(Notifications): Fix notifications & notification click when icon is blob

* Fix/service webview unmounting (#1328)

* detach service when underlying webview unmounts

* disable no-param-reassign eslint rule

* Add notification debug events

* Update electron to 4.0.8

Update required in order to fix performance degradation due to memory leak issue electron/electron#16772.

* Automatic i18n update (i18n.meetfranz.com)

* Automatic i18n update (i18n.meetfranz.com)

* 5.0.1-beta.1

* Bump version to 5.0.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.