Index: net/url_request/sdch_dictionary_fetcher.cc |
diff --git a/net/url_request/sdch_dictionary_fetcher.cc b/net/url_request/sdch_dictionary_fetcher.cc |
index 450a60822353be756024a88b720b36ddd3ecf05a..b30f78ac2bd06e0f4318d1752494171e9cfb5682 100644 |
--- a/net/url_request/sdch_dictionary_fetcher.cc |
+++ b/net/url_request/sdch_dictionary_fetcher.cc |
@@ -60,6 +60,11 @@ void SdchDictionaryFetcher::Schedule(const GURL& dictionary_url) { |
attempted_load_.insert(dictionary_url); |
fetch_queue_.push(dictionary_url); |
+ // If the loop is already processing, it'll pick up the above in the |
+ // normal course of events. |
+ if (next_state_ != STATE_NONE) |
+ return; |
+ |
next_state_ = STATE_IDLE; |
// There are no callbacks to user code from the dictionary fetcher, |