summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/bookmarks/bookmark_html_writer.cc2
-rw-r--r--chrome/browser/bookmarks/bookmark_node_data.cc2
-rw-r--r--chrome/browser/browser_about_handler.cc2
-rw-r--r--chrome/browser/chromeos/notifications/system_notification_factory.cc8
-rw-r--r--chrome/browser/notifications/desktop_notification_service.cc12
-rw-r--r--chrome/browser/ui/views/omnibox/omnibox_view_win.cc2
-rw-r--r--chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc12
-rw-r--r--content/browser/debugger/devtools_http_protocol_handler.cc31
-rw-r--r--net/base/escape.cc24
-rw-r--r--net/base/escape.h8
-rw-r--r--webkit/appcache/view_appcache_internals_job.cc14
-rw-r--r--webkit/blob/view_blob_internals_job.cc10
-rw-r--r--webkit/glue/webclipboard_impl.cc4
13 files changed, 66 insertions, 65 deletions
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc
index 7349a8e..1866d4d 100644
--- a/chrome/browser/bookmarks/bookmark_html_writer.cc
+++ b/chrome/browser/bookmarks/bookmark_html_writer.cc
@@ -210,7 +210,7 @@ class Writer : public Task {
break;
case CONTENT:
- utf8_string = EscapeForHTML(text);
+ utf8_string = net::EscapeForHTML(text);
break;
default:
diff --git a/chrome/browser/bookmarks/bookmark_node_data.cc b/chrome/browser/bookmarks/bookmark_node_data.cc
index 9151124..9b2a333 100644
--- a/chrome/browser/bookmarks/bookmark_node_data.cc
+++ b/chrome/browser/bookmarks/bookmark_node_data.cc
@@ -149,7 +149,7 @@ void BookmarkNodeData::WriteToClipboard(Profile* profile) const {
const std::string url = elements[0].url.spec();
scw.WriteBookmark(title, url);
- scw.WriteHyperlink(EscapeForHTML(title), url);
+ scw.WriteHyperlink(net::EscapeForHTML(title), url);
// Also write the URL to the clipboard as text so that it can be pasted
// into text fields. We use WriteText instead of WriteURL because we don't
diff --git a/chrome/browser/browser_about_handler.cc b/chrome/browser/browser_about_handler.cc
index 3761e220..c081cd3 100644
--- a/chrome/browser/browser_about_handler.cc
+++ b/chrome/browser/browser_about_handler.cc
@@ -402,7 +402,7 @@ void AppendHeader(std::string* output, int refresh,
output->append("<!DOCTYPE HTML>\n<html>\n<head>\n");
if (!unescaped_title.empty()) {
output->append("<title>");
- output->append(EscapeForHTML(unescaped_title));
+ output->append(net::EscapeForHTML(unescaped_title));
output->append("</title>\n");
}
output->append("<meta charset=\"utf-8\">\n");
diff --git a/chrome/browser/chromeos/notifications/system_notification_factory.cc b/chrome/browser/chromeos/notifications/system_notification_factory.cc
index ab7568c..f0635d1 100644
--- a/chrome/browser/chromeos/notifications/system_notification_factory.cc
+++ b/chrome/browser/chromeos/notifications/system_notification_factory.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -35,8 +35,8 @@ Notification SystemNotificationFactory::Create(
std::vector<std::string> subst;
int resource = IDR_NOTIFICATION_ICON_HTML;
subst.push_back(icon.spec());
- subst.push_back(EscapeForHTML(UTF16ToUTF8(title)));
- subst.push_back(EscapeForHTML(UTF16ToUTF8(text)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(title)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(text)));
// icon float position
subst.push_back(dir == WebKit::WebTextDirectionRightToLeft ?
"right" : "left");
@@ -46,7 +46,7 @@ Notification SystemNotificationFactory::Create(
// if link is not empty, then use template with link
if (!link.empty()) {
resource = IDR_NOTIFICATION_ICON_LINK_HTML;
- subst.push_back(EscapeForHTML(UTF16ToUTF8(link)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(link)));
}
string16 content_url = DesktopNotificationService::CreateDataUrl(resource,
diff --git a/chrome/browser/notifications/desktop_notification_service.cc b/chrome/browser/notifications/desktop_notification_service.cc
index 88f9ea2..09451ed 100644
--- a/chrome/browser/notifications/desktop_notification_service.cc
+++ b/chrome/browser/notifications/desktop_notification_service.cc
@@ -170,8 +170,8 @@ string16 DesktopNotificationService::CreateDataUrl(
if (icon_url.is_valid()) {
resource = IDR_NOTIFICATION_ICON_HTML;
subst.push_back(icon_url.spec());
- subst.push_back(EscapeForHTML(UTF16ToUTF8(title)));
- subst.push_back(EscapeForHTML(UTF16ToUTF8(body)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(title)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(body)));
// icon float position
subst.push_back(dir == WebKit::WebTextDirectionRightToLeft ?
"right" : "left");
@@ -181,12 +181,12 @@ string16 DesktopNotificationService::CreateDataUrl(
// Strings are div names in the template file.
string16 line_name = title.empty() ? ASCIIToUTF16("description")
: ASCIIToUTF16("title");
- subst.push_back(EscapeForHTML(UTF16ToUTF8(line_name)));
- subst.push_back(EscapeForHTML(UTF16ToUTF8(line)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(line_name)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(line)));
} else {
resource = IDR_NOTIFICATION_2LINE_HTML;
- subst.push_back(EscapeForHTML(UTF16ToUTF8(title)));
- subst.push_back(EscapeForHTML(UTF16ToUTF8(body)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(title)));
+ subst.push_back(net::EscapeForHTML(UTF16ToUTF8(body)));
}
// body text direction
subst.push_back(dir == WebKit::WebTextDirectionRightToLeft ?
diff --git a/chrome/browser/ui/views/omnibox/omnibox_view_win.cc b/chrome/browser/ui/views/omnibox/omnibox_view_win.cc
index ae13c7b..3d41cbf 100644
--- a/chrome/browser/ui/views/omnibox/omnibox_view_win.cc
+++ b/chrome/browser/ui/views/omnibox/omnibox_view_win.cc
@@ -1323,7 +1323,7 @@ void OmniboxViewWin::OnCopy() {
scw.WriteText(text);
if (write_url) {
scw.WriteBookmark(text, url.spec());
- scw.WriteHyperlink(EscapeForHTML(text), url.spec());
+ scw.WriteHyperlink(net::EscapeForHTML(text), url.spec());
}
}
diff --git a/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc b/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc
index dac9f1b..afd5def 100644
--- a/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc
+++ b/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc
@@ -56,10 +56,10 @@ TEST_F(MalwareDOMDetailsTest, Everything) {
// \ iframe2
std::string iframe2_html = "<html><body>iframe2</body></html>";
GURL iframe2_url(urlprefix + iframe2_html);
- std::string iframe1_html = "<iframe src=\"" + EscapeForHTML(
+ std::string iframe1_html = "<iframe src=\"" + net::EscapeForHTML(
iframe2_url.spec()) + "\"></iframe>";
GURL iframe1_url(urlprefix + iframe1_html);
- std::string html = "<html><head><iframe src=\"" + EscapeForHTML(
+ std::string html = "<html><head><iframe src=\"" + net::EscapeForHTML(
iframe1_url.spec()) + "\"></iframe></head></html>";
GURL url(urlprefix + html);
@@ -100,8 +100,8 @@ TEST_F(MalwareDOMDetailsTest, Everything) {
std::string html = "";
for (int i = 0; i < 55; ++i) {
// The iframe contents is just a number.
- GURL iframe_url(StringPrintf("%s%d", urlprefix, i));
- html += "<iframe src=\"" + EscapeForHTML(iframe_url.spec()) +
+ GURL iframe_url(base::StringPrintf("%s%d", urlprefix, i));
+ html += "<iframe src=\"" + net::EscapeForHTML(iframe_url.spec()) +
"\"></iframe>";
}
GURL url(urlprefix + html);
@@ -116,8 +116,8 @@ TEST_F(MalwareDOMDetailsTest, Everything) {
std::string html = "";
for (int i = 0; i < 55; ++i) {
// The iframe contents is just a number.
- GURL script_url(StringPrintf("%s%d", urlprefix, i));
- html += "<script src=\"" + EscapeForHTML(script_url.spec()) +
+ GURL script_url(base::StringPrintf("%s%d", urlprefix, i));
+ html += "<script src=\"" + net::EscapeForHTML(script_url.spec()) +
"\"></script>";
}
GURL url(urlprefix + html);
diff --git a/content/browser/debugger/devtools_http_protocol_handler.cc b/content/browser/debugger/devtools_http_protocol_handler.cc
index 8540794..c44594ee 100644
--- a/content/browser/debugger/devtools_http_protocol_handler.cc
+++ b/content/browser/debugger/devtools_http_protocol_handler.cc
@@ -10,8 +10,8 @@
#include "base/json/json_writer.h"
#include "base/logging.h"
#include "base/message_loop_proxy.h"
-#include "base/stringprintf.h"
#include "base/string_number_conversions.h"
+#include "base/stringprintf.h"
#include "base/threading/thread.h"
#include "base/utf_string_conversions.h"
#include "base/values.h"
@@ -291,7 +291,7 @@ static PageList GeneratePageList(
page_info.id = TabContentsIDHelper::GetID(tab_contents);
page_info.attached = client_host != NULL;
page_info.url = entry->url().spec();
- page_info.title = UTF16ToUTF8(EscapeForHTML(entry->title()));
+ page_info.title = UTF16ToUTF8(net::EscapeForHTML(entry->title()));
page_info.thumbnail_url = "/thumb/" + entry->url().spec();
page_info.favicon_url = entry->favicon().url().spec();
page_list.push_back(page_info);
@@ -317,14 +317,14 @@ void DevToolsHttpProtocolHandler::OnJsonRequestUI(
page_info->SetString("faviconUrl", i->favicon_url);
if (!i->attached) {
page_info->SetString("webSocketDebuggerUrl",
- StringPrintf("ws://%s/devtools/page/%d",
- host.c_str(),
- i->id));
+ base::StringPrintf("ws://%s/devtools/page/%d",
+ host.c_str(),
+ i->id));
page_info->SetString("devtoolsFrontendUrl",
- StringPrintf("%s?host=%s&page=%d",
- overridden_frontend_url_.c_str(),
- host.c_str(),
- i->id));
+ base::StringPrintf("%s?host=%s&page=%d",
+ overridden_frontend_url_.c_str(),
+ host.c_str(),
+ i->id));
}
}
@@ -412,11 +412,12 @@ void DevToolsHttpProtocolHandler::OnResponseStarted(net::URLRequest* request) {
request->GetMimeType(&content_type);
if (request->status().is_success()) {
- server_->Send(connection_id, StringPrintf("HTTP/1.1 200 OK\r\n"
- "Content-Type:%s\r\n"
- "Transfer-Encoding: chunked\r\n"
- "\r\n",
- content_type.c_str()));
+ server_->Send(connection_id,
+ base::StringPrintf("HTTP/1.1 200 OK\r\n"
+ "Content-Type:%s\r\n"
+ "Transfer-Encoding: chunked\r\n"
+ "\r\n",
+ content_type.c_str()));
} else {
server_->Send404(connection_id);
}
@@ -444,7 +445,7 @@ void DevToolsHttpProtocolHandler::OnReadCompleted(net::URLRequest* request,
do {
if (!request->status().is_success() || bytes_read <= 0)
break;
- std::string chunk_size = StringPrintf("%X\r\n", bytes_read);
+ std::string chunk_size = base::StringPrintf("%X\r\n", bytes_read);
server_->Send(connection_id, chunk_size);
server_->Send(connection_id, buffer->data(), bytes_read);
server_->Send(connection_id, "\r\n");
diff --git a/net/base/escape.cc b/net/base/escape.cc
index 3ca41f9..ff77beb 100644
--- a/net/base/escape.cc
+++ b/net/base/escape.cc
@@ -183,6 +183,17 @@ STR UnescapeURLWithOffsetsImpl(const STR& escaped_text,
return result;
}
+template <class str>
+str EscapeForHTMLImpl(const str& input) {
+ str result;
+ result.reserve(input.size()); // Optimize for no escaping.
+
+ for (typename str::const_iterator i = input.begin(); i != input.end(); ++i)
+ AppendEscapedCharForHTMLImpl(*i, &result);
+
+ return result;
+}
+
} // namespace
// Everything except alphanumerics and !'()*-._~
@@ -259,16 +270,7 @@ void AppendEscapedCharForHTML(char c, std::string* output) {
AppendEscapedCharForHTMLImpl(c, output);
}
-template <class str>
-str EscapeForHTMLImpl(const str& input) {
- str result;
- result.reserve(input.size()); // optimize for no escaping
-
- for (typename str::const_iterator it = input.begin(); it != input.end(); ++it)
- AppendEscapedCharForHTMLImpl(*it, &result);
-
- return result;
-}
+namespace net {
std::string EscapeForHTML(const std::string& input) {
return EscapeForHTMLImpl(input);
@@ -278,8 +280,6 @@ string16 EscapeForHTML(const string16& input) {
return EscapeForHTMLImpl(input);
}
-namespace net {
-
std::string UnescapeURLComponent(const std::string& escaped_text,
UnescapeRule::Type rules) {
return UnescapeURLWithOffsetsImpl(escaped_text, rules, NULL);
diff --git a/net/base/escape.h b/net/base/escape.h
index eede454..45f2ddf 100644
--- a/net/base/escape.h
+++ b/net/base/escape.h
@@ -39,10 +39,6 @@ NET_EXPORT std::string EscapeExternalHandlerValue(const std::string& text);
// the character would be interpretted as an HTML delimiter.
NET_EXPORT void AppendEscapedCharForHTML(char c, std::string* output);
-// Escape chars that might cause this text to be interpretted as HTML tags.
-NET_EXPORT std::string EscapeForHTML(const std::string& text);
-NET_EXPORT string16 EscapeForHTML(const string16& text);
-
// Unescaping ------------------------------------------------------------------
class UnescapeRule {
@@ -87,6 +83,10 @@ class UnescapeRule {
namespace net {
+// Escape chars that might cause this text to be interpretted as HTML tags.
+NET_EXPORT std::string EscapeForHTML(const std::string& text);
+NET_EXPORT string16 EscapeForHTML(const string16& text);
+
// Unescapes |escaped_text| and returns the result.
// Unescaping consists of looking for the exact pattern "%XX", where each X is
// a hex digit, and converting to the character with the numerical value of
diff --git a/webkit/appcache/view_appcache_internals_job.cc b/webkit/appcache/view_appcache_internals_job.cc
index 8e73052..8a36ad7 100644
--- a/webkit/appcache/view_appcache_internals_job.cc
+++ b/webkit/appcache/view_appcache_internals_job.cc
@@ -71,17 +71,17 @@ void EmitListItem(const std::string& label,
const std::string& data,
std::string* out) {
out->append("<li>");
- out->append(EscapeForHTML(label));
- out->append(EscapeForHTML(data));
+ out->append(net::EscapeForHTML(label));
+ out->append(net::EscapeForHTML(data));
out->append("</li>\n");
}
void EmitAnchor(const std::string& url, const std::string& text,
std::string* out) {
out->append("<a href=\"");
- out->append(EscapeForHTML(url));
+ out->append(net::EscapeForHTML(url));
out->append("\">");
- out->append(EscapeForHTML(text));
+ out->append(net::EscapeForHTML(text));
out->append("</a>");
}
@@ -239,15 +239,15 @@ void EmitAppCacheResourceInfoVector(
void EmitResponseHeaders(net::HttpResponseHeaders* headers, std::string* out) {
out->append("<hr><pre>");
- out->append(EscapeForHTML(headers->GetStatusLine()));
+ out->append(net::EscapeForHTML(headers->GetStatusLine()));
out->push_back('\n');
void* iter = NULL;
std::string name, value;
while (headers->EnumerateHeaderLines(&iter, &name, &value)) {
- out->append(EscapeForHTML(name));
+ out->append(net::EscapeForHTML(name));
out->append(": ");
- out->append(EscapeForHTML(value));
+ out->append(net::EscapeForHTML(value));
out->push_back('\n');
}
out->append("</pre>");
diff --git a/webkit/blob/view_blob_internals_job.cc b/webkit/blob/view_blob_internals_job.cc
index 1d562c5..753a6af 100644
--- a/webkit/blob/view_blob_internals_job.cc
+++ b/webkit/blob/view_blob_internals_job.cc
@@ -55,7 +55,7 @@ void EndHTML(std::string* out) {
void AddHTMLBoldText(const std::string& text, std::string* out) {
out->append("<b>");
- out->append(EscapeForHTML(text));
+ out->append(net::EscapeForHTML(text));
out->append("</b>");
}
@@ -73,7 +73,7 @@ void AddHTMLListItem(const std::string& element_title,
out->append("<li>");
// No need to escape element_title since constant string is passed.
out->append(element_title);
- out->append(EscapeForHTML(element_data));
+ out->append(net::EscapeForHTML(element_data));
out->append("</li>");
}
@@ -81,7 +81,7 @@ void AddHTMLButton(const std::string& title,
const std::string& command,
std::string* out) {
// No need to escape title since constant string is passed.
- std::string escaped_command = EscapeForHTML(command.c_str());
+ std::string escaped_command = net::EscapeForHTML(command.c_str());
base::StringAppendF(out,
"<form action=\"\" method=\"GET\">\n"
"<input type=\"hidden\" name=\"remove\" value=\"%s\">\n"
@@ -198,9 +198,9 @@ void ViewBlobInternalsJob::GenerateHTMLForBlobData(const BlobData& blob_data,
AddHTMLListItem(kType, "file", out);
AddHTMLListItem(kPath,
#if defined(OS_WIN)
- EscapeForHTML(WideToUTF8(item.file_path().value())),
+ net::EscapeForHTML(WideToUTF8(item.file_path().value())),
#else
- EscapeForHTML(item.file_path().value()),
+ net::EscapeForHTML(item.file_path().value()),
#endif
out);
if (!item.expected_modification_time().is_null()) {
diff --git a/webkit/glue/webclipboard_impl.cc b/webkit/glue/webclipboard_impl.cc
index 0c4c1a7..3f66c80 100644
--- a/webkit/glue/webclipboard_impl.cc
+++ b/webkit/glue/webclipboard_impl.cc
@@ -40,7 +40,7 @@ std::string WebClipboardImpl::URLToMarkup(const WebURL& url,
markup.append(url.spec());
markup.append("\">");
// TODO(darin): HTML escape this
- markup.append(EscapeForHTML(UTF16ToUTF8(title)));
+ markup.append(net::EscapeForHTML(UTF16ToUTF8(title)));
markup.append("</a>");
return markup;
}
@@ -53,7 +53,7 @@ std::string WebClipboardImpl::URLToImageMarkup(const WebURL& url,
markup.append("\"");
if (!title.isEmpty()) {
markup.append(" alt=\"");
- markup.append(EscapeForHTML(UTF16ToUTF8(title)));
+ markup.append(net::EscapeForHTML(UTF16ToUTF8(title)));
markup.append("\"");
}
markup.append("/>");