| Index: fpdfsdk/fpdfppo.cpp
|
| diff --git a/fpdfsdk/fpdfppo.cpp b/fpdfsdk/fpdfppo.cpp
|
| index 777310bb2b59778424eb6286cfbc6e9878b27f9a..300e7ba36e01fb6b652259c57e1294989f134465 100644
|
| --- a/fpdfsdk/fpdfppo.cpp
|
| +++ b/fpdfsdk/fpdfppo.cpp
|
| @@ -191,12 +191,13 @@ CPDF_Object* CPDF_PageOrganizer::PageDictGetInheritableTag(
|
| if (!pp)
|
| return nullptr;
|
|
|
| - if (pDict->KeyExist((const char*)nSrctag))
|
| - return pDict->GetObjectBy((const char*)nSrctag);
|
| + CFX_ByteStringC sSrcTag = nSrctag.AsStringC();
|
| + if (pDict->KeyExist(sSrcTag))
|
| + return pDict->GetObjectBy(sSrcTag);
|
|
|
| while (pp) {
|
| - if (pp->KeyExist((const char*)nSrctag))
|
| - return pp->GetObjectBy((const char*)nSrctag);
|
| + if (pp->KeyExist(sSrcTag))
|
| + return pp->GetObjectBy(sSrcTag);
|
| if (!pp->KeyExist("Parent"))
|
| break;
|
| pp = ToDictionary(pp->GetObjectBy("Parent")->GetDirect());
|
| @@ -223,8 +224,9 @@ FX_BOOL CPDF_PageOrganizer::UpdateReference(CPDF_Object* pObj,
|
| const CFX_ByteString& key = it->first;
|
| CPDF_Object* pNextObj = it->second;
|
| ++it;
|
| - if (!FXSYS_strcmp(key, "Parent") || !FXSYS_strcmp(key, "Prev") ||
|
| - !FXSYS_strcmp(key, "First")) {
|
| + if (!FXSYS_strcmp(key.c_str(), "Parent") ||
|
| + !FXSYS_strcmp(key.c_str(), "Prev") ||
|
| + !FXSYS_strcmp(key.c_str(), "First")) {
|
| continue;
|
| }
|
| if (pNextObj) {
|
| @@ -290,11 +292,11 @@ uint32_t CPDF_PageOrganizer::GetNewObjId(CPDF_Document* pDoc,
|
| if (CPDF_Dictionary* pDictClone = pClone->AsDictionary()) {
|
| if (pDictClone->KeyExist("Type")) {
|
| CFX_ByteString strType = pDictClone->GetStringBy("Type");
|
| - if (!FXSYS_stricmp(strType, "Pages")) {
|
| + if (!FXSYS_stricmp(strType.c_str(), "Pages")) {
|
| pDictClone->Release();
|
| return 4;
|
| }
|
| - if (!FXSYS_stricmp(strType, "Page")) {
|
| + if (!FXSYS_stricmp(strType.c_str(), "Page")) {
|
| pDictClone->Release();
|
| return 0;
|
| }
|
| @@ -330,12 +332,12 @@ FPDF_BOOL ParserPageRangeString(CFX_ByteString rangstring,
|
| cbMidRange = rangstring.Mid(nStringFrom, nStringTo - nStringFrom);
|
| int nMid = cbMidRange.Find('-');
|
| if (nMid == -1) {
|
| - long lPageNum = atol(cbMidRange);
|
| + long lPageNum = atol(cbMidRange.c_str());
|
| if (lPageNum <= 0 || lPageNum > nCount)
|
| return FALSE;
|
| pageArray->push_back((uint16_t)lPageNum);
|
| } else {
|
| - int nStartPageNum = atol(cbMidRange.Mid(0, nMid));
|
| + int nStartPageNum = atol(cbMidRange.Mid(0, nMid).c_str());
|
| if (nStartPageNum == 0)
|
| return FALSE;
|
|
|
| @@ -344,7 +346,7 @@ FPDF_BOOL ParserPageRangeString(CFX_ByteString rangstring,
|
| if (nEnd == 0)
|
| return FALSE;
|
|
|
| - int nEndPageNum = atol(cbMidRange.Mid(nMid, nEnd));
|
| + int nEndPageNum = atol(cbMidRange.Mid(nMid, nEnd).c_str());
|
| if (nStartPageNum < 0 || nStartPageNum > nEndPageNum ||
|
| nEndPageNum > nCount) {
|
| return FALSE;
|
|
|