summaryrefslogtreecommitdiff
path: root/xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp
diff options
context:
space:
mode:
authorRyan Harrison <rharrison@chromium.org>2017-08-15 10:37:59 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-08-15 15:03:10 +0000
commit8a1758bf11c2d741e0cddc761b1dd2cdf564db93 (patch)
tree82cbafc46f574a05ae0c1d1d3d7f9ebde6cb932d /xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp
parent171cb27a720036c48ae3a6176084e880742af0a9 (diff)
downloadpdfium-8a1758bf11c2d741e0cddc761b1dd2cdf564db93.tar.xz
Remove GetAt from string classes
This method duplicates the behaviour of the const [] operator and doesn't offer any additional safety. Folding them into one implementation. SetAt is retained, since implementing the non-const [] operator to replace SetAt has potential performance concerns. Specifically many non-obvious cases of reading an element using [] will cause a realloc & copy. BUG=pdfium:860 Change-Id: I3ef5e5e5a15376f040256b646eb0d90636e24b67 Reviewed-on: https://pdfium-review.googlesource.com/10870 Commit-Queue: Ryan Harrison <rharrison@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp')
-rw-r--r--xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp22
1 files changed, 11 insertions, 11 deletions
diff --git a/xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp b/xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp
index 9028642b76..5912d26a99 100644
--- a/xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp
+++ b/xfa/fxfa/fm2js/cxfa_fm2jscontext.cpp
@@ -3488,17 +3488,17 @@ CFX_WideString CXFA_FM2JSContext::EncodeURL(const CFX_ByteString& szURLString) {
int32_t iIndex = 0;
if (iLen % 2 != 0) {
strEncode[1] = '0';
- strEncode[2] = strTmp.GetAt(iLen - 1);
+ strEncode[2] = strTmp[iLen - 1];
iIndex = iLen - 2;
} else {
- strEncode[1] = strTmp.GetAt(iLen - 1);
- strEncode[2] = strTmp.GetAt(iLen - 2);
+ strEncode[1] = strTmp[iLen - 1];
+ strEncode[2] = strTmp[iLen - 2];
iIndex = iLen - 3;
}
wsResultBuf << strEncode;
while (iIndex > 0) {
- strEncode[1] = strTmp.GetAt(iIndex);
- strEncode[2] = strTmp.GetAt(iIndex - 1);
+ strEncode[1] = strTmp[iIndex];
+ strEncode[2] = strTmp[iIndex - 1];
iIndex -= 2;
wsResultBuf << strEncode;
}
@@ -3994,8 +3994,8 @@ void CXFA_FM2JSContext::Replace(CFXJSE_Value* pThis,
std::ostringstream resultString;
int32_t iFindIndex = 0;
for (int32_t u = 0; u < oneString.GetLength(); ++u) {
- char ch = static_cast<char>(oneString.GetAt(u));
- if (ch != static_cast<char>(twoString.GetAt(iFindIndex))) {
+ char ch = static_cast<char>(oneString[u]);
+ if (ch != static_cast<char>(twoString[iFindIndex])) {
resultString << ch;
continue;
}
@@ -4003,8 +4003,8 @@ void CXFA_FM2JSContext::Replace(CFXJSE_Value* pThis,
int32_t iTemp = u + 1;
++iFindIndex;
while (iFindIndex < iFindLen) {
- uint8_t chTemp = oneString.GetAt(iTemp);
- if (chTemp != twoString.GetAt(iFindIndex)) {
+ uint8_t chTemp = oneString[iTemp];
+ if (chTemp != twoString[iFindIndex]) {
iFindIndex = 0;
break;
}
@@ -4246,13 +4246,13 @@ void CXFA_FM2JSContext::Stuff(CFXJSE_Value* pThis,
std::ostringstream resultString;
int32_t i = 0;
while (i < iStart) {
- resultString << static_cast<char>(sourceString.GetAt(i));
+ resultString << static_cast<char>(sourceString[i]);
++i;
}
resultString << insertString.AsStringC();
i = iStart + iDelete;
while (i < iLength) {
- resultString << static_cast<char>(sourceString.GetAt(i));
+ resultString << static_cast<char>(sourceString[i]);
++i;
}
resultString << '\0';