Index: core/src/fpdftext/fpdf_text_int.cpp |
diff --git a/core/src/fpdftext/fpdf_text_int.cpp b/core/src/fpdftext/fpdf_text_int.cpp |
index 69d0bc574f9b74fde506713d5ed70a38806a0b3d..882b22ceecd282e94d8d045ad0d5ab0bfb14f277 100644 |
--- a/core/src/fpdftext/fpdf_text_int.cpp |
+++ b/core/src/fpdftext/fpdf_text_int.cpp |
@@ -1164,6 +1164,9 @@ void CPDF_TextPage::AddCharInfoByLRDirection(CFX_WideString& str, int i) |
FX_STRSIZE nCount = FX_Unicode_GetNormalization(wChar, pDst); |
if (nCount >= 1) { |
pDst = FX_Alloc(FX_WCHAR, nCount); |
+ if (!pDst) { |
+ return; |
+ } |
FX_Unicode_GetNormalization(wChar, pDst); |
for (int nIndex = 0; nIndex < nCount; nIndex++) { |
PAGECHAR_INFO Info2 = Info; |
@@ -1196,6 +1199,9 @@ void CPDF_TextPage::AddCharInfoByRLDirection(CFX_WideString& str, int i) |
FX_STRSIZE nCount = FX_Unicode_GetNormalization(wChar, pDst); |
if (nCount >= 1) { |
pDst = FX_Alloc(FX_WCHAR, nCount); |
+ if (!pDst) { |
+ return; |
+ } |
FX_Unicode_GetNormalization(wChar, pDst); |
for (int nIndex = 0; nIndex < nCount; nIndex++) { |
PAGECHAR_INFO Info2 = Info; |