diff --git a/Sources/NIOPosix/Pool.swift b/Sources/NIOPosix/Pool.swift index 1ef4b1a279..47f6121493 100644 --- a/Sources/NIOPosix/Pool.swift +++ b/Sources/NIOPosix/Pool.swift @@ -165,9 +165,9 @@ extension PooledBuffer { // Here we set up our memory bindings. let storage = unsafeDowncast(baseStorage, to: Self.self) storage.withUnsafeMutablePointers { headPointer, tailPointer in - UnsafeRawPointer(tailPointer).bindMemory(to: IOVector.self, capacity: headPointer.pointee.spaceForIOVectors) - UnsafeRawPointer(tailPointer + headPointer.pointee.spaceForIOVectors).bindMemory(to: Unmanaged.self, capacity: headPointer.pointee.spaceForBufferOwners) - UnsafeRawPointer(tailPointer + headPointer.pointee.memorySentinelOffset).bindMemory(to: MemorySentinel.self, capacity: MemoryLayout.size) + UnsafeRawPointer(tailPointer + headPointer.pointee.iovectorOffset).bindMemory(to: IOVector.self, capacity: iovectorCount) + UnsafeRawPointer(tailPointer + headPointer.pointee.bufferOwnersOffset).bindMemory(to: Unmanaged.self, capacity: iovectorCount) + UnsafeRawPointer(tailPointer + headPointer.pointee.memorySentinelOffset).bindMemory(to: MemorySentinel.self, capacity: 1) } return storage