RepoJournal
.NET

@dotnet

The .NET runtime, ASP.NET, and the C# tooling

Pick a date

The Wire · Showcase

MEMORY LEAK IN MACOS SSL CONTEXT THREATENS PRODUCTION DEPLOYMENTS

By RepoJournal · Filed · About .NET

A critical GCHandle leak in SafeDeleteSslContext on macOS has been silently draining handle table slots on every SSL connection, and the fix races with native callbacks in ways that demand immediate attention.

The runtime team shipped an emergency fix [1] for a GCHandle allocation that was never freed in the legacy macOS SecureTransport path, leaking one handle slot per SSL context. This is not theoretical: the team reproduced it as a reliable crash in SslStream tests. The fix itself carries risk because it races with in-flight Read/Write native callbacks, which means you need to test thoroughly before shipping to production. In parallel, the cDAC work continues to mature [2], with IsExceptionObject now properly walking method table hierarchies and validating against the legacy DAC. The async profiler test suite got hardened [3] to work on single-threaded WASM platforms by splitting multithreaded tests from basic ones and fixing Native AOT missing native IP issues. Across the dotnet ecosystem, codeflow PRs continue rolling in from aspnetcore [4], sourcelink [5], and efcore [6], keeping main synchronized. The Roslyn team tackled Razor integration test failures [7] by fixing DartLab deployment to use main VS installation instead of RoslynDev hive, eliminating file clashes and simplifying hive checks.

Action items

References

  1. [1] Fix GCHandle leak in OSX SafeDeleteSslContext (#128325) dotnet/runtime
  2. [2] [cDAC] Implement IsExceptionObject for cDAC ↗ dotnet/runtime
  3. [3] Make Async Profiler tests compatible with single threaded runtime. (#127762) dotnet/runtime
  4. [4] [main] Source code updates from dotnet/aspnetcore ↗ dotnet/dotnet
  5. [5] [main] Source code updates from dotnet/sourcelink ↗ dotnet/dotnet
  6. [6] [main] Source code updates from dotnet/efcore ↗ dotnet/dotnet
  7. [7] Fix Razor integration tests in DartLab ↗ dotnet/roslyn

FAQ

What changed in .NET on May 26, 2026?
A critical GCHandle leak in SafeDeleteSslContext on macOS has been silently draining handle table slots on every SSL connection, and the fix races with native callbacks in ways that demand immediate attention.
What should .NET teams do about it?
Test the macOS SafeDeleteSslContext fix [ref:1] against your SSL workloads before production deploy • Review async profiler test changes [ref:5] if you run WASM or Native AOT builds • Monitor codeflow PRs from main [ref:6] [ref:7] [ref:10] for breaking changes in your dependencies
Which .NET repositories shipped on May 26, 2026?
dotnet/runtime, dotnet/dotnet, dotnet/roslyn

For your repos

The showcase is a teaser.
Your wire is the product.

Same engine. Different stack. Below: what changes when the wire is yours.

Showcase wire

  • 14 famous open source orgs
  • One wire per day
  • Public, generic
  • Read on the web, when you remember

Your wire

  • Up to 1,500 of your repos - orgs, deps, vendors
  • Morning and evening briefs
  • Action items routed to your team
  • Slack delivery, email, breaking-news CVE alerts

Want a hands-on demo first? Ask a current user for an invite link.