| Index: extensions/browser/guest_view/extension_view/extension_view_guest.cc
|
| diff --git a/extensions/browser/guest_view/extension_view/extension_view_guest.cc b/extensions/browser/guest_view/extension_view/extension_view_guest.cc
|
| index b4220b9203f068168cfdab869410fbc2158d8dcb..e9c309ad8d2fb02a46ab1077233ca3d96f4a7073 100644
|
| --- a/extensions/browser/guest_view/extension_view/extension_view_guest.cc
|
| +++ b/extensions/browser/guest_view/extension_view/extension_view_guest.cc
|
| @@ -5,6 +5,7 @@
|
| #include "extensions/browser/guest_view/extension_view/extension_view_guest.h"
|
|
|
| #include "base/metrics/user_metrics.h"
|
| +#include "base/strings/string_util.h"
|
| #include "components/crx_file/id_util.h"
|
| #include "content/public/browser/render_process_host.h"
|
| #include "content/public/common/result_codes.h"
|
| @@ -126,11 +127,20 @@ void ExtensionViewGuest::DidCommitProvisionalLoadForFrame(
|
| content::RenderFrameHost* render_frame_host,
|
| const GURL& url,
|
| ui::PageTransition transition_type) {
|
| - if (!render_frame_host->GetParent())
|
| - view_page_ = url;
|
| + if (render_frame_host->GetParent())
|
| + return;
|
| +
|
| + view_page_ = url;
|
| +
|
| + // Gets chrome-extension://extensionid/ prefix.
|
| + std::string prefix = url.GetWithEmptyPath().spec();
|
| + std::string relative_url = url.spec();
|
| +
|
| + // Removes the prefix.
|
| + ReplaceFirstSubstringAfterOffset(&relative_url, 0, prefix, "");
|
|
|
| scoped_ptr<base::DictionaryValue> args(new base::DictionaryValue());
|
| - args->SetString(guestview::kUrl, url.spec());
|
| + args->SetString(guestview::kUrl, relative_url);
|
| DispatchEventToView(
|
| new GuestViewBase::Event(extensionview::kEventLoadCommit, args.Pass()));
|
| }
|
|
|