Index: chrome/browser/sessions/base_session_service.cc |
diff --git a/chrome/browser/sessions/base_session_service.cc b/chrome/browser/sessions/base_session_service.cc |
index 418a021cac506ead155746c4bdc179fd3846869b..103dfb8c13cc2bac428d6383207ccbdff8d150b5 100644 |
--- a/chrome/browser/sessions/base_session_service.cc |
+++ b/chrome/browser/sessions/base_session_service.cc |
@@ -187,6 +187,10 @@ SessionCommand* BaseSessionService::CreateUpdateTabNavigationCommand( |
entry.GetReferrer().url.spec() : std::string()); |
pickle.WriteInt(entry.GetReferrer().policy); |
+ WriteStringToPickle(pickle, &bytes_written, max_state_size, |
+ entry.GetOriginalRequestURL().is_valid() ? |
+ entry.GetOriginalRequestURL().spec() : std::string()); |
+ |
// Adding more data? Be sure and update TabRestoreService too. |
Charlie Reis
2012/04/10 01:37:28
Do we need to update TabRestoreService?
gone
2012/04/10 17:41:34
I'm fairly certain that that code path snakes all
Charlie Reis
2012/04/11 20:31:01
Yeah, I can't figure out what this comment is refe
sky
2012/04/11 21:20:26
I copied that comment when promoting code from Ses
gone
2012/04/12 18:13:35
Removed.
|
return new SessionCommand(command_id, pickle); |
} |
@@ -266,6 +270,12 @@ bool BaseSessionService::RestoreUpdateTabNavigationCommand( |
navigation->referrer_ = content::Referrer( |
referrer_spec.empty() ? GURL() : GURL(referrer_spec), |
policy); |
+ |
+ // If the original URL can't be found, leave it empty. |
+ std::string url_spec; |
+ if (!pickle->ReadString(&iterator, &url_spec)) |
+ url_spec = ""; |
sky
2012/04/11 21:20:26
= std::string()
gone
2012/04/12 18:13:35
Done.
|
+ navigation->set_original_request_url(GURL(url_spec)); |
} |
navigation->virtual_url_ = GURL(url_spec); |