You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2018/03/02 18:20:13 UTC
[trafficserver] branch 7.1.x updated: Free Http2Stream directly
when HttpSM is already gone or not allocated
This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch 7.1.x
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/7.1.x by this push:
new 9c70b6e Free Http2Stream directly when HttpSM is already gone or not allocated
9c70b6e is described below
commit 9c70b6e8dd0f49af628d9f9143a38898fbe53d64
Author: Masaori Koshiba <ma...@apache.org>
AuthorDate: Wed Feb 28 14:57:26 2018 +0900
Free Http2Stream directly when HttpSM is already gone or not allocated
When Http2Stream get error before it start transaction, Http2Stream::transaction_done() is never called.
Because HttpSM is not allocated. In regular cases, Http2Stream::initiating_close() signal some events
to HttpSM, but in above case it should free itself directly.
(cherry picked from commit 469ccb4fd02a9a53d86703abf1c12e710cdd9819)
---
proxy/http2/Http2Stream.cc | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/proxy/http2/Http2Stream.cc b/proxy/http2/Http2Stream.cc
index 3d16087..006136a 100644
--- a/proxy/http2/Http2Stream.cc
+++ b/proxy/http2/Http2Stream.cc
@@ -435,8 +435,9 @@ Http2Stream::initiating_close()
SCOPED_MUTEX_LOCK(lock, current_reader->mutex, this_ethread());
current_reader->handleEvent(VC_EVENT_ERROR);
} else if (!sent_write_complete) {
- // Transaction is already gone. Kill yourself
+ // Transaction is already gone or not started. Kill yourself
do_io_close();
+ destroy();
}
}
}
--
To stop receiving notification emails like this one, please contact
zwoop@apache.org.