Index: components/web_view/url_request_cloneable.cc |
diff --git a/components/web_view/url_request_cloneable.cc b/components/web_view/url_request_cloneable.cc |
index 4ee870aa5f7b7cee5cd6964386401fcfc93390b2..028329eb0ddd4ea7b92f0b24751ee390454e0207 100644 |
--- a/components/web_view/url_request_cloneable.cc |
+++ b/components/web_view/url_request_cloneable.cc |
@@ -24,7 +24,9 @@ URLRequestCloneable::URLRequestCloneable(mojo::URLRequestPtr original_request) |
auto_follow_redirects_(original_request->auto_follow_redirects), |
bypass_cache_(original_request->bypass_cache), |
original_body_null_(original_request->body.is_null()), |
- body_(original_request->body.size()) { |
+ body_(original_request->body.size()), |
+ originating_time_(base::TimeTicks::FromInternalValue( |
+ original_request->originating_time_ticks)) { |
// TODO(erg): Maybe we can do some sort of async copy here? |
for (size_t i = 0; i < original_request->body.size(); ++i) { |
mojo::common::BlockingCopyToString(original_request->body[i].Pass(), |
@@ -44,7 +46,7 @@ URLRequestCloneable::URLRequestCloneable(const GURL& raw_url) |
URLRequestCloneable::~URLRequestCloneable() {} |
-mojo::URLRequestPtr URLRequestCloneable::Clone() const { |
+mojo::URLRequestPtr URLRequestCloneable::Clone() { |
mojo::URLRequestPtr request = mojo::URLRequest::New(); |
request->url = url_; |
request->method = method_; |
@@ -71,6 +73,13 @@ mojo::URLRequestPtr URLRequestCloneable::Clone() const { |
} |
} |
+ if (originating_time_.is_null()) { |
+ request->originating_time_ticks = base::TimeTicks::Now().ToInternalValue(); |
sky
2015/10/14 22:46:24
Why do you want to set the time here? If no one su
yzshen1
2015/10/14 22:59:16
When we do back/forward navigation, we clone the o
sky
2015/10/14 23:08:36
Can't the code that clones it reset the time?
yzshen1
2015/10/15 00:05:10
Done.
|
+ } else { |
+ request->originating_time_ticks = originating_time_.ToInternalValue(); |
+ originating_time_ = base::TimeTicks(); |
+ } |
+ |
return request.Pass(); |
} |