ObjFW  Check-in [321fa12f9a]

Overview
Comment:OFStream: Always cancel async requests on close

This avoids accidentally trying to remove a closed file descriptor from
a kernel event observer.

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 321fa12f9ad0b42fe908b798e2890e362e0e0aedb158a4d64c94286be8c9eaef
User & Date: js on 2020-01-07 20:36:33
Other Links: manifest | tags
Context
2020-01-07
22:59
OFKernelEventObserver: Fix read buffers, select() check-in: 23ff70bec4 user: js tags: trunk
20:36
OFStream: Always cancel async requests on close check-in: 321fa12f9a user: js tags: trunk
20:28
OFKernelEventObserver: Remove queueing of actions check-in: 24eff635db user: js tags: trunk
Changes

Modified src/OFStream.m from [749b5fd798] to [2c231bfb94].

1905
1906
1907
1908
1909
1910
1911




1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927







+
+
+
+












	[self freeMemory: _readBufferMemory];
	_readBuffer = _readBufferMemory = readBuffer;
	_readBufferLength += length;
}

- (void)close
{
#ifdef OF_HAVE_SOCKETS
	[self cancelAsyncRequests];
#endif

	[self freeMemory: _readBufferMemory];
	_readBuffer = _readBufferMemory = NULL;
	_readBufferLength = 0;

	[self freeMemory: _writeBuffer];
	_writeBuffer = NULL;
	_writeBufferLength = 0;
	_writeBuffered = false;

	_waitingForDelimiter = false;
}
@end