summaryrefslogtreecommitdiff
path: root/asyncio/proactor_events.py
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2015-07-20 17:18:59 +0200
committerVictor Stinner <vstinner@redhat.com>2015-07-20 17:36:41 +0200
commit13b71a16ee9d5af4939a7e214e92fa89cb96f6a3 (patch)
treecb9525ce018206804591e7e255c5745a044018c6 /asyncio/proactor_events.py
parent9bb67431adc916d9d4b4e23ca257658c980d035d (diff)
downloadtrollius-git-closing.tar.gz
Add closing read-only property to transportsclosing
* Disallow write() on closing transports * Disallow aslo calling pause_writing() and resume_writing() on StreamReaderProtocol if the transport is closing
Diffstat (limited to 'asyncio/proactor_events.py')
-rw-r--r--asyncio/proactor_events.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/asyncio/proactor_events.py b/asyncio/proactor_events.py
index 9c2b8f1..3a0960b 100644
--- a/asyncio/proactor_events.py
+++ b/asyncio/proactor_events.py
@@ -34,7 +34,6 @@ class _ProactorBasePipeTransport(transports._FlowControlMixin,
self._write_fut = None
self._pending_write = 0
self._conn_lost = 0
- self._closing = False # Set when close() called.
self._eof_written = False
if self._server is not None:
self._server._attach()
@@ -225,6 +224,8 @@ class _ProactorBaseWritePipeTransport(_ProactorBasePipeTransport,
type(data))
if self._eof_written:
raise RuntimeError('write_eof() already called')
+ if self._closing:
+ raise RuntimeError('Cannot call write() after close()')
if not data:
return