Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(962)

Unified Diff: net/http/http_cache_transaction.h

Issue 2774603003: Doom and create new entry when validation is not a match (Closed)
Patch Set: Rebased with refs/heads/master@{#484325} Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/http/http_cache.cc ('k') | net/http/http_cache_transaction.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/http/http_cache_transaction.h
diff --git a/net/http/http_cache_transaction.h b/net/http/http_cache_transaction.h
index dec02f157cba2bad10c2d778991d487872614450..545e05c8c82522e703c215b748d0dd1a00e364bb 100644
--- a/net/http/http_cache_transaction.h
+++ b/net/http/http_cache_transaction.h
@@ -176,6 +176,10 @@ class HttpCache::Transaction : public HttpTransaction {
// and this transaction needs to be restarted.
void SetValidatingCannotProceed();
+ // Invoked to remove the association between a transaction waiting to be
+ // added to an entry and the entry.
+ void ResetCachePendingState() { cache_pending_ = false; }
+
// Returns the estimate of dynamically allocated memory in bytes.
size_t EstimateMemoryUsage() const;
@@ -211,6 +215,7 @@ class HttpCache::Transaction : public HttpTransaction {
STATE_CREATE_ENTRY_COMPLETE,
STATE_ADD_TO_ENTRY,
STATE_ADD_TO_ENTRY_COMPLETE,
+ STATE_DONE_HEADERS_ADD_TO_ENTRY_COMPLETE,
STATE_CACHE_READ_RESPONSE,
STATE_CACHE_READ_RESPONSE_COMPLETE,
STATE_TOGGLE_UNUSED_SINCE_PREFETCH,
@@ -282,6 +287,7 @@ class HttpCache::Transaction : public HttpTransaction {
int DoCreateEntryComplete(int result);
int DoAddToEntry();
int DoAddToEntryComplete(int result);
+ int DoDoneHeadersAddToEntryComplete(int result);
int DoCacheReadResponse();
int DoCacheReadResponseComplete(int result);
int DoCacheToggleUnusedSincePrefetch();
@@ -502,6 +508,11 @@ class HttpCache::Transaction : public HttpTransaction {
bool handling_206_; // We must deal with this 206 response.
bool cache_pending_; // We are waiting for the HttpCache.
bool done_reading_; // All available data was read.
+
+ // Headers have been received from the network and it's not a match with the
+ // existing entry.
+ bool done_headers_create_new_entry_;
+
bool vary_mismatch_; // The request doesn't match the stored vary data.
bool couldnt_conditionalize_request_;
bool bypass_lock_for_test_; // A test is exercising the cache lock.
« no previous file with comments | « net/http/http_cache.cc ('k') | net/http/http_cache_transaction.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698