I'm trying to pass a Data of allocated size to a C function for it to fill in:
lib_example_call(_ params: UnsafePointer<lib_call_params_t>!, _ data: UnsafeMutableRawPointer!) ... { self.dataBuffer = Data(capacity: BufferSizeConstant) var params = lib_call_params_t(); params.data_capacity = BufferSizeConstant; self.dataBuffer?.withUnsafeMutableBytes { (inBuffer) -> Void in lib_example_call(¶ms, inBuffer) } } I later get called back by the library with a size value of the actual data it got. self.dataBuffer is a var. I set self.dataBuffer?.count = result size, which is a reasonable value. Unfortunately, the resulting buffer is all zeros. The data generated by the call is definitely not all zero, and a C example program using the same library works correctly. So, I think there's something wrong in the way I'm making the call. Can anyone please enlighten me? Thanks! -- Rick Mann rm...@latencyzero.com _______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users