electron/docs
Darshan Sen 03e68e2efe
fix: fix a crash in safeStorage on Linux (#33913)
On Linux, `isEncryptionAvailable()` was crashing instead of returning a
boolean before the 'ready' event was emitted by the app. The reason of
the crash is that [`CreateKeyStorage()`](https://source.chromium.org/chromium/chromium/src/+/main:components/os_crypt/os_crypt_linux.cc;l=74;drc=35be6215ec8f09e50176f36753c68f26c63d1885;bpv=1;bpt=0)
expects the config to be set but the function responsible for setting the
config, [`SetConfig()`](https://source.chromium.org/chromium/chromium/src/+/main:components/os_crypt/os_crypt_linux.cc;l=237;drc=35be6215ec8f09e50176f36753c68f26c63d1885;bpv=1;bpt=0),
is called only after the app is ready inside [`PostCreateMainMessageLoop()`](https://github.com/electron/electron/blob/main/shell/browser/electron_browser_main_parts.cc#L499).
So this changes `IsEncryptionAvailable()` to return `false` when the app
is not ready on Linux and uses that instead of the raw API in other
places like `EncryptString()` and `DecryptString()`.

Fixes: https://github.com/electron/electron/issues/32206
Signed-off-by: Darshan Sen <raisinten@gmail.com>
2022-05-09 09:38:53 -04:00
..
api fix: fix a crash in safeStorage on Linux (#33913) 2022-05-09 09:38:53 -04:00
development chore: bump chromium to 102.0.4999.0 (main) (#33731) 2022-04-22 15:36:22 -07:00
fiddles fix: fiddle ipc code pattern 3 (#33262) 2022-03-16 11:01:29 -04:00
images docs: remove unused images (#33310) 2022-03-17 09:40:00 +01:00
tutorial docs: update security guide regarding ctx isolation (#33807) 2022-04-18 10:09:54 -04:00
breaking-changes.md docs: update security guide regarding ctx isolation (#33807) 2022-04-18 10:09:54 -04:00
experimental.md docs: document what experimental means explicitly (#22893) 2020-04-02 09:32:18 -07:00
faq.md docs: tidy up links (#26292) 2020-11-02 18:58:14 +09:00
glossary.md docs: update links to Chromium source (#33309) 2022-03-17 13:45:55 +01:00
README.md docs: consolidate info docs (#32964) 2022-02-28 11:46:52 -08:00
styleguide.md docs: type names changed from wrapper to primitive (#31752) 2021-11-15 22:13:18 -06:00

Official Guides

Please make sure that you use the documents that match your Electron version. The version number should be a part of the page URL. If it's not, you are probably using the documentation of a development branch which may contain API changes that are not compatible with your Electron version. To view older versions of the documentation, you can browse by tag on GitHub by opening the "Switch branches/tags" dropdown and selecting the tag that matches your version.

FAQ

There are questions that are asked quite often. Check this out before creating an issue:

Guides and Tutorials

Getting started

Learning the basics

Advanced steps

Detailed Tutorials

These individual tutorials expand on topics discussed in the guide above.


API References

Custom DOM Elements:

Modules for the Main Process:

Modules for the Renderer Process (Web Page):

Modules for Both Processes:

Development

See development/README.md