gpui: Remove ExitProcess shutdown workaround (#61219)

The issue with aws-lc that necessitated this workaround has been fixed
upstream: https://github.com/aws/aws-lc/issues/3197.

Release Notes:

- N/A
This commit is contained in:
John Tur authored and GitHub committed 2026-07-17 19:16:49 +00:00
1 parent cd91c84675
commit 2e405c7c7a
2 files changed
+5 -15

No files matched your search

Generated
+5 -4
View File
@@ -1559,9 +1559,9 @@ dependencies = [
[[package]]
name = "aws-lc-rs"
version = "1.16.3"
version = "1.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ec6fb3fe69024a75fa7e1bfb48aa6cf59706a101658ea01bfd33b2b248a038f"
checksum = "4342d8937fc7e5dd9b1c60292261c0670c882a2cd1719cfc11b1af41731e32ad"
dependencies = [
"aws-lc-sys",
"untrusted 0.7.1",
@@ -1570,14 +1570,15 @@ dependencies = [
[[package]]
name = "aws-lc-sys"
version = "0.40.0"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f50037ee5e1e41e7b8f9d161680a725bd1626cb6f8c7e901f91f942850852fe7"
checksum = "6d9ceb1da931507a12f4fccea479dccd00da1943e1b4ae72d8e502d707361444"
dependencies = [
"cc",
"cmake",
"dunce",
"fs_extra",
"pkg-config",
]
[[package]]
-11
View File
@@ -423,17 +423,6 @@ impl Platform for WindowsPlatform {
self.inner
.with_callback(|callbacks| &callbacks.quit, |callback| callback());
// Bypass the CRT exit logic, which runs atexit handlers before calling ExitProcess.
// aws-lc registers an atexit handler that intentionally acquires a lock without releasing it.
// aws-lc also has thread_local objects which acquire this lock in their destructor.
// Destructors for thread_locals run under the loader lock, so there is a race condition
// where, if a thread exits after atexit handlers have run, the TLS destructors will block
// indefinitely on this lock while holding the loader lock. Since ExitProcess also requires
// the loader lock, process teardown will deadlock.
unsafe {
windows::Win32::System::Threading::ExitProcess(0);
}
}
fn quit(&self) {