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

zcbenz
Copy link
Member

@zcbenz 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 a team February 6, 2019 08:51
// Find existing holder for the |render_frame|.
static SpellCheckerHolder* FromRenderFrame(
content::RenderFrame* render_frame) {
for (auto* holder : instances_) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 Compare February 6, 2019 13:35
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
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
@release-clerk
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 February 12, 2019 16:36
adlk added a commit to meetfranz/franz that referenced this pull request Mar 18, 2019
* 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
* 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
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants