Commit 52c4d269 authored by Tatsuhiro Tsujikawa's avatar Tatsuhiro Tsujikawa

shrpx: Deadlock with upload data in clinet mode

parent 19bf97b3
...@@ -309,15 +309,17 @@ int SpdyDownstreamConnection::push_upload_data_chunk(const uint8_t *data, ...@@ -309,15 +309,17 @@ int SpdyDownstreamConnection::push_upload_data_chunk(const uint8_t *data,
LOG(FATAL) << "evbuffer_add() failed"; LOG(FATAL) << "evbuffer_add() failed";
return -1; return -1;
} }
if(downstream_->get_downstream_stream_id() != -1) {
spdylay_session_resume_data(session_,
downstream_->get_downstream_stream_id());
}
size_t bodylen = evbuffer_get_length(request_body_buf_); size_t bodylen = evbuffer_get_length(request_body_buf_);
if(bodylen > Downstream::DOWNSTREAM_OUTPUT_UPPER_THRES) { if(bodylen > Downstream::DOWNSTREAM_OUTPUT_UPPER_THRES) {
downstream_->get_upstream()->pause_read(SHRPX_NO_BUFFER); downstream_->get_upstream()->pause_read(SHRPX_NO_BUFFER);
} }
return 0; if(downstream_->get_downstream_stream_id() != -1) {
spdylay_session_resume_data(session_,
downstream_->get_downstream_stream_id());
return send();
} else {
return 0;
}
} }
int SpdyDownstreamConnection::end_upload_data() int SpdyDownstreamConnection::end_upload_data()
...@@ -325,8 +327,10 @@ int SpdyDownstreamConnection::end_upload_data() ...@@ -325,8 +327,10 @@ int SpdyDownstreamConnection::end_upload_data()
if(downstream_->get_downstream_stream_id() != -1) { if(downstream_->get_downstream_stream_id() != -1) {
spdylay_session_resume_data(session_, spdylay_session_resume_data(session_,
downstream_->get_downstream_stream_id()); downstream_->get_downstream_stream_id());
return send();
} else {
return 0;
} }
return 0;
} }
namespace { namespace {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment