summaryrefslogtreecommitdiffstats
path: root/net/spdy/spdy_session.cc
diff options
context:
space:
mode:
authorukai@chromium.org <ukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-18 02:11:40 +0000
committerukai@chromium.org <ukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-18 02:11:40 +0000
commit45ab62b6c674ae085e528aca47ac4720f4238c73 (patch)
tree0cd9e4fbf211185f658f4ade4476b1c4a83cb6f5 /net/spdy/spdy_session.cc
parent53c570b58354034db920c09d711ed7d9b3429f30 (diff)
downloadchromium_src-45ab62b6c674ae085e528aca47ac4720f4238c73.zip
chromium_src-45ab62b6c674ae085e528aca47ac4720f4238c73.tar.gz
chromium_src-45ab62b6c674ae085e528aca47ac4720f4238c73.tar.bz2
Fix crash in SpdySession::DeleteStream.
Erase iterator before calling OnClose BUG=46765 TEST=none Review URL: http://codereview.chromium.org/2847015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50198 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy/spdy_session.cc')
-rw-r--r--net/spdy/spdy_session.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc
index f69710c..9e474b4 100644
--- a/net/spdy/spdy_session.cc
+++ b/net/spdy/spdy_session.cc
@@ -882,10 +882,10 @@ void SpdySession::DeleteStream(spdy::SpdyStreamId id, int status) {
return;
// If this is an active stream, call the callback.
- const scoped_refptr<SpdyStream>& stream = it2->second;
+ const scoped_refptr<SpdyStream> stream(it2->second);
+ active_streams_.erase(it2);
if (stream)
stream->OnClose(status);
- active_streams_.erase(it2);
}
void SpdySession::RemoveFromPool() {