On Thu, 26 Feb 2026 01:12:34 GMT, Sergey Bylokhov <[email protected]> wrote:

> CDesktopPeer.m creates dispatch semaphores via dispatch_semaphore_create in 
> both _lsOpenURI and _lsOpenFile but never releases them. Since the JDK is 
> compiled without ARC, each call to Desktop.open(), browse(), mail(), edit(), 
> or print() leaks around 80 bytes.
> 
> The issue is similar to 
> [JDK-8376233](https://bugs.openjdk.org/browse/JDK-8376233)
> 
> The fix adds dispatch_release(semaphore) after dispatch_semaphore_wait in 
> both functions, paired with dispatch_retain before the async block to prevent 
> use-after-free on the timeout path.

This pull request has now been integrated.

Changeset: d52e5bd0
Author:    Sergey Bylokhov <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/d52e5bd0357a074f74757f7a8256ed14a2e0eaee
Stats:     6 lines in 1 file changed: 6 ins; 0 del; 0 mod

8378727: [macOS] Missing dispatch_release for semaphores in CDesktopPeer

Reviewed-by: honkar, kizune, azvegint, dmarkov

-------------

PR: https://git.openjdk.org/jdk/pull/29927

Reply via email to