From 3762b659efcc67f8bb75e72f7a3f5ee8d270924e Mon Sep 17 00:00:00 2001 From: Basilisk-Dev Date: Wed, 25 Feb 2026 12:29:13 -0500 Subject: [PATCH] Issue #2925 followup - Restore previous GlobalFree behavior from before SCTP upgrade in sctp_bsd_addr.c --- netwerk/sctp/src/netinet/sctp_bsd_addr.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/netwerk/sctp/src/netinet/sctp_bsd_addr.c b/netwerk/sctp/src/netinet/sctp_bsd_addr.c index 3e0df08f13..eac2b62e4c 100644 --- a/netwerk/sctp/src/netinet/sctp_bsd_addr.c +++ b/netwerk/sctp/src/netinet/sctp_bsd_addr.c @@ -336,7 +336,8 @@ sctp_init_ifns_for_vrf(int vrfid) /* Get actual adapter information */ if ((Err = GetAdaptersAddresses(AF_INET, 0, NULL, pAdapterAddrs, &AdapterAddrsSize)) != ERROR_SUCCESS) { SCTP_PRINTF("GetAdaptersV4Addresses() failed with error code %d\n", Err); - FREE(pAdapterAddrs); + if (pAdapterAddrs) + GlobalFree(pAdapterAddrs); return; } /* Enumerate through each returned adapter and save its information */ @@ -361,7 +362,8 @@ sctp_init_ifns_for_vrf(int vrfid) } } } - FREE(pAdapterAddrs); + if (pAdapterAddrs) + GlobalFree(pAdapterAddrs); #endif #ifdef INET6 AdapterAddrsSize = 0; @@ -381,7 +383,8 @@ sctp_init_ifns_for_vrf(int vrfid) /* Get actual adapter information */ if ((Err = GetAdaptersAddresses(AF_INET6, 0, NULL, pAdapterAddrs, &AdapterAddrsSize)) != ERROR_SUCCESS) { SCTP_PRINTF("GetAdaptersV6Addresses() failed with error code %d\n", Err); - FREE(pAdapterAddrs); + if (pAdapterAddrs) + GlobalFree(pAdapterAddrs); return; } /* Enumerate through each returned adapter and save its information */ @@ -403,7 +406,8 @@ sctp_init_ifns_for_vrf(int vrfid) } } } - FREE(pAdapterAddrs); + if (pAdapterAddrs) + GlobalFree(pAdapterAddrs); #endif } #elif defined(__Userspace__)