diff options
author | Ryan Harrison <rharrison@chromium.org> | 2017-08-01 15:16:59 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-08-01 19:35:49 +0000 |
commit | da129ab38c3fb6ed3de85ffb6f8938eb31130a53 (patch) | |
tree | 1ed3980d91ae9258f917124d69f0276260e34b71 /core/fxcrt/cfx_bytestring.cpp | |
parent | de7c9620c37486413e1f7db4567b4b0cea6a857f (diff) | |
download | pdfium-da129ab38c3fb6ed3de85ffb6f8938eb31130a53.tar.xz |
Replace raw value for constant error value in string operations
Currently Find() and other methods that return a FX_STRSIZE return -1
to indicate error/failure. This means that there is a lot of magic
numbers and magic checks floating around. The standard library for
similar operations uses a npos constant. This CL implements
FX_STRNPOS, and replaces usages of magic number checking. It also does
some type cleanup along the way where it was obvious that FX_STRSIZE
should be being used.
Removing the magic numbers should make eventually changing FX_STRSIZE
to be unsigned easier in the future.
BUG=pdfium:828
Change-Id: I67e481e44cf2f75a1698afa8fbee4f375a74c490
Reviewed-on: https://pdfium-review.googlesource.com/9651
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'core/fxcrt/cfx_bytestring.cpp')
-rw-r--r-- | core/fxcrt/cfx_bytestring.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/core/fxcrt/cfx_bytestring.cpp b/core/fxcrt/cfx_bytestring.cpp index e7e55de8e3..6e01933682 100644 --- a/core/fxcrt/cfx_bytestring.cpp +++ b/core/fxcrt/cfx_bytestring.cpp @@ -562,41 +562,41 @@ CFX_ByteString CFX_ByteString::Left(FX_STRSIZE nCount) const { FX_STRSIZE CFX_ByteString::Find(char ch, FX_STRSIZE nStart) const { if (!m_pData) - return -1; + return FX_STRNPOS; if (nStart < 0 || nStart >= m_pData->m_nDataLength) - return -1; + return FX_STRNPOS; const char* pStr = static_cast<const char*>( memchr(m_pData->m_String + nStart, ch, m_pData->m_nDataLength - nStart)); - return pStr ? pStr - m_pData->m_String : -1; + return pStr ? pStr - m_pData->m_String : FX_STRNPOS; } FX_STRSIZE CFX_ByteString::ReverseFind(char ch) const { if (!m_pData) - return -1; + return FX_STRNPOS; FX_STRSIZE nLength = m_pData->m_nDataLength; while (nLength--) { if (m_pData->m_String[nLength] == ch) return nLength; } - return -1; + return FX_STRNPOS; } FX_STRSIZE CFX_ByteString::Find(const CFX_ByteStringC& pSub, FX_STRSIZE nStart) const { if (!m_pData) - return -1; + return FX_STRNPOS; FX_STRSIZE nLength = m_pData->m_nDataLength; if (nStart > nLength) - return -1; + return FX_STRNPOS; const char* pStr = FX_strstr(m_pData->m_String + nStart, m_pData->m_nDataLength - nStart, pSub.unterminated_c_str(), pSub.GetLength()); - return pStr ? (int)(pStr - m_pData->m_String) : -1; + return pStr ? (int)(pStr - m_pData->m_String) : FX_STRNPOS; } void CFX_ByteString::MakeLower() { |