summaryrefslogtreecommitdiffstats
path: root/chrome/common
diff options
context:
space:
mode:
authortedvessenes@gmail.com <tedvessenes@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-19 16:10:55 +0000
committertedvessenes@gmail.com <tedvessenes@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-19 16:10:55 +0000
commiteb72b27ac26621b2f1819fa318761a035689482d (patch)
tree3df45496be7931641279e35aa691ceb21ef36fa4 /chrome/common
parentcdd47ee7d8b8d2ef57b36cd6e50215320cef7963 (diff)
downloadchromium_src-eb72b27ac26621b2f1819fa318761a035689482d.zip
chromium_src-eb72b27ac26621b2f1819fa318761a035689482d.tar.gz
chromium_src-eb72b27ac26621b2f1819fa318761a035689482d.tar.bz2
Standardize StringToInt{,64} interface.
These changes address issue #106655. All variants of StringToInt have been converted to use the StringPiece class. One instance of conversion, in chrome/browser/history/text_database.cc, required copying an underlying string. This is because the string type in question could use 8 or 16 bit characters depending on the OS type, and because StringPiece is not implemented as a template, the code cannot specify whether to create a StringPiece or StringPiece16. This should be remedied in a future CL. R=erikwright@chromium.org BUG=106655 TEST= Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=114929 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=114944 Review URL: http://codereview.chromium.org/8921006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114993 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common')
-rw-r--r--chrome/common/extensions/extension.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/chrome/common/extensions/extension.cc b/chrome/common/extensions/extension.cc
index f46ef44..2bcc581 100644
--- a/chrome/common/extensions/extension.cc
+++ b/chrome/common/extensions/extension.cc
@@ -17,6 +17,7 @@
#include "base/stl_util.h"
#include "base/string16.h"
#include "base/string_number_conversions.h"
+#include "base/string_piece.h"
#include "base/string_util.h"
#include "base/utf_string_conversions.h"
#include "base/values.h"
@@ -79,10 +80,13 @@ const char kDefaultContentSecurityPolicy[] =
static void ConvertHexadecimalToIDAlphabet(std::string* id) {
for (size_t i = 0; i < id->size(); ++i) {
int val;
- if (base::HexStringToInt(id->begin() + i, id->begin() + i + 1, &val))
+ if (base::HexStringToInt(base::StringPiece(id->begin() + i,
+ id->begin() + i + 1),
+ &val)) {
(*id)[i] = val + 'a';
- else
+ } else {
(*id)[i] = 'a';
+ }
}
}