summaryrefslogtreecommitdiff
path: root/core/src/fpdftext/fpdf_text.cpp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-06-18 12:47:11 -0700
committerTom Sepez <tsepez@chromium.org>2015-06-18 12:47:11 -0700
commit2c28619de8051661c7f66f2192c6fb9ef14ee905 (patch)
tree4bd15bf0bb72e4127403548bf2f40230bbdd352b /core/src/fpdftext/fpdf_text.cpp
parent0c1bd7c6ad378ea97a2f54cb0c4761716f6d1057 (diff)
downloadpdfium-2c28619de8051661c7f66f2192c6fb9ef14ee905.tar.xz
Replace some Release() calls with virtual destructors.
Required fixing xfa-specific code. Original Review URL: https://codereview.chromium.org/1192013002. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1176413004.
Diffstat (limited to 'core/src/fpdftext/fpdf_text.cpp')
-rw-r--r--core/src/fpdftext/fpdf_text.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/core/src/fpdftext/fpdf_text.cpp b/core/src/fpdftext/fpdf_text.cpp
index 5aff3a02be..8d32c11ba6 100644
--- a/core/src/fpdftext/fpdf_text.cpp
+++ b/core/src/fpdftext/fpdf_text.cpp
@@ -4,6 +4,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+#include "../../../third_party/base/nonstd_unique_ptr.h"
#include "../../include/fpdfapi/fpdf_page.h"
#include "../../include/fpdfapi/fpdf_pageobj.h"
#include "../../include/fpdftext/fpdf_text.h"
@@ -308,17 +309,14 @@ void NormalizeString(CFX_WideString& str)
return;
}
CFX_WideString sBuffer;
- IFX_BidiChar* BidiChar = IFX_BidiChar::Create();
- if (NULL == BidiChar) {
- return;
- }
+ nonstd::unique_ptr<IFX_BidiChar> pBidiChar(IFX_BidiChar::Create());
CFX_WordArray order;
FX_BOOL bR2L = FALSE;
int32_t start = 0, count = 0, i = 0;
int nR2L = 0, nL2R = 0;
for (i = 0; i < str.GetLength(); i++) {
- if(BidiChar->AppendChar(str.GetAt(i))) {
- int32_t ret = BidiChar->GetBidiInfo(start, count);
+ if(pBidiChar->AppendChar(str.GetAt(i))) {
+ int32_t ret = pBidiChar->GetBidiInfo(start, count);
order.Add(start);
order.Add(count);
order.Add(ret);
@@ -331,8 +329,8 @@ void NormalizeString(CFX_WideString& str)
}
}
}
- if(BidiChar->EndChar()) {
- int32_t ret = BidiChar->GetBidiInfo(start, count);
+ if(pBidiChar->EndChar()) {
+ int32_t ret = pBidiChar->GetBidiInfo(start, count);
order.Add(start);
order.Add(count);
order.Add(ret);
@@ -428,7 +426,6 @@ void NormalizeString(CFX_WideString& str)
}
str.Empty();
str += sBuffer;
- BidiChar->Release();
}
static FX_BOOL IsNumber(CFX_WideString& str)
{