Jinoh Kang (@iamahuman) commented about dlls/ntdll/heap.c:
- /* paired with ReadAcquire in heap_allocate_block_lfh. */
- WriteRelease( &bin->enabled, TRUE );
+}
+static void heap_thread_detach_bin_groups( struct heap *heap ) +{
- ULONG i, affinity = NtCurrentTeb()->HeapVirtualAffinity;
- if (!heap->bins) return;
- for (i = 0; i < BLOCK_SIZE_BIN_COUNT; ++i)
- {
struct bin *bin = heap->bins + i;
struct group *group;
if (!(group = InterlockedExchangePointer( (void *)bin_get_affinity_group( bin, affinity ), NULL ))) continue;
RtlInterlockedPushEntrySList( &bin->groups, (SLIST_ENTRY *)&group->entry );
[redundant-cast-v10] ```suggestion:-0+0 RtlInterlockedPushEntrySList( &bin->groups, &group->entry ); ```