Chromium Code Reviews| Index: xfa/fxfa/parser/xfa_basic_imp.cpp |
| diff --git a/xfa/fxfa/parser/xfa_basic_imp.cpp b/xfa/fxfa/parser/xfa_basic_imp.cpp |
| index 86a96bbd63db6e807ce8ee8c4a32090daa288402..d83d75648c32b76cdc0b493e5d73b6bfabbc2c69 100644 |
| --- a/xfa/fxfa/parser/xfa_basic_imp.cpp |
| +++ b/xfa/fxfa/parser/xfa_basic_imp.cpp |
| @@ -557,9 +557,11 @@ int32_t CXFA_WideTextRead::ReadString(FX_WCHAR* pStr, |
| int32_t iMaxLength, |
| FX_BOOL& bEOS, |
| int32_t const* pByteSize) { |
| - if (iMaxLength > m_wsBuffer.GetLength() - m_iPosition) { |
| + if (iMaxLength > m_wsBuffer.GetLength() - m_iPosition) |
| iMaxLength = m_wsBuffer.GetLength() - m_iPosition; |
| - } |
| + if (iMaxLength == 0) |
|
dsinclair
2016/06/13 20:05:47
This is needed because the corpus was seeding with
Oliver Chang
2016/06/13 20:11:19
It's probably best to do
if (size == 0)
return
dsinclair
2016/06/13 20:19:22
I think the check is valid here. We can't proceed
|
| + return 0; |
| + |
| FXSYS_wcsncpy(pStr, m_wsBuffer.c_str() + m_iPosition, iMaxLength); |
| m_iPosition += iMaxLength; |
| bEOS = IsEOF(); |