| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index ffb0cfe11b9ad53199e9b7b2df660f50df16e9b4..f473a93201e317c57317a83b74a0539b165fa5f1 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -2629,13 +2629,18 @@ void RenderFrameImpl::willSendRequest(
|
| WebDataSource* data_source =
|
| provisional_data_source ? provisional_data_source : top_data_source;
|
|
|
| - ui::PageTransition transition_type = ui::PAGE_TRANSITION_LINK;
|
| DocumentState* document_state = DocumentState::FromDataSource(data_source);
|
| DCHECK(document_state);
|
| InternalDocumentStateData* internal_data =
|
| InternalDocumentStateData::FromDocumentState(document_state);
|
| NavigationState* navigation_state = document_state->navigation_state();
|
| - transition_type = navigation_state->transition_type();
|
| + ui::PageTransition transition_type = navigation_state->transition_type();
|
| + WebDataSource* frame_ds = frame->provisionalDataSource();
|
| + if (frame_ds && frame_ds->isClientRedirect()) {
|
| + transition_type = static_cast<ui::PageTransition>(
|
| + transition_type | ui::PAGE_TRANSITION_CLIENT_REDIRECT);
|
| + CHECK(ui::PageTransitionIsValidType(transition_type));
|
| + }
|
|
|
| GURL request_url(request.url());
|
| GURL new_url;
|
|
|