| Index: chrome/browser/dom_ui/tips_handler.cc
|
| ===================================================================
|
| --- chrome/browser/dom_ui/tips_handler.cc (revision 19306)
|
| +++ chrome/browser/dom_ui/tips_handler.cc (working copy)
|
| @@ -7,8 +7,10 @@
|
| #include "chrome/browser/dom_ui/tips_handler.h"
|
| #include "chrome/browser/profile.h"
|
| #include "chrome/browser/web_resource/web_resource_service.h"
|
| +#include "chrome/common/pref_names.h"
|
| #include "chrome/common/web_resource/web_resource_unpacker.h"
|
| -#include "chrome/common/pref_names.h"
|
| +#include "chrome/common/url_constants.h"
|
| +#include "googleurl/src/gurl.h"
|
|
|
| namespace {
|
|
|
| @@ -60,7 +62,8 @@
|
| if (wr_dict &&
|
| wr_dict->GetSize() > 0 &&
|
| wr_dict->GetString(WebResourceService::kWebResourceTitle, &title) &&
|
| - wr_dict->GetString(WebResourceService::kWebResourceURL, &url)) {
|
| + wr_dict->GetString(WebResourceService::kWebResourceURL, &url) &&
|
| + IsValidURL(url)) {
|
| tip_dict->SetString(WebResourceService::kWebResourceTitle, title);
|
| tip_dict->SetString(WebResourceService::kWebResourceURL, url);
|
| list_value.Append(tip_dict);
|
| @@ -79,4 +82,9 @@
|
| WebResourceService::kDefaultResourceServer);
|
| }
|
|
|
| +bool TipsHandler::IsValidURL(const std::wstring& url_string) {
|
| + GURL url(WideToUTF8(url_string));
|
| + return !url.is_empty() && (url.SchemeIs(chrome::kHttpScheme) ||
|
| + url.SchemeIs(chrome::kHttpsScheme));
|
| +}
|
|
|
|
|