| Index: shell/application_manager/application_manager.cc
|
| diff --git a/shell/application_manager/application_manager.cc b/shell/application_manager/application_manager.cc
|
| index 2dfdc3e602360e19049f304104955b9ab83e77e6..4f4af48b18b238827e997972fe3d2195cb8c5a11 100644
|
| --- a/shell/application_manager/application_manager.cc
|
| +++ b/shell/application_manager/application_manager.cc
|
| @@ -456,13 +456,17 @@ void ApplicationManager::SetLoaderForScheme(
|
|
|
| void ApplicationManager::SetArgsForURL(const std::vector<std::string>& args,
|
| const GURL& url) {
|
| - url_to_args_[url].insert(url_to_args_[url].end(), args.begin(), args.end());
|
| - GURL mapped_url = delegate_->ResolveMappings(url);
|
| + GURL base_url = GetBaseURLAndQuery(url, nullptr);
|
| + url_to_args_[base_url].insert(url_to_args_[base_url].end(), args.begin(),
|
| + args.end());
|
| + GURL mapped_url = delegate_->ResolveMappings(base_url);
|
| + DCHECK(!mapped_url.has_query());
|
| if (mapped_url != url) {
|
| url_to_args_[mapped_url].insert(url_to_args_[mapped_url].end(),
|
| args.begin(), args.end());
|
| }
|
| GURL resolved_url = delegate_->ResolveMojoURL(mapped_url);
|
| + DCHECK(!resolved_url.has_query());
|
| if (resolved_url != mapped_url) {
|
| url_to_args_[resolved_url].insert(url_to_args_[resolved_url].end(),
|
| args.begin(), args.end());
|
| @@ -523,7 +527,8 @@ mojo::ScopedMessagePipeHandle ApplicationManager::ConnectToServiceByName(
|
| }
|
|
|
| std::vector<std::string> ApplicationManager::GetArgsForURL(const GURL& url) {
|
| - const auto& args_it = url_to_args_.find(url);
|
| + GURL base_url = GetBaseURLAndQuery(url, nullptr);
|
| + const auto& args_it = url_to_args_.find(base_url);
|
| if (args_it != url_to_args_.end())
|
| return args_it->second;
|
| return std::vector<std::string>();
|
|
|