Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(128)

Side by Side Diff: xfa/fde/xml/fde_xml_imp.cpp

Issue 1888103002: Replace calls to deprecated CFX_{Wide,Byte}String::Empty() (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « xfa/fde/tto/fde_textout.cpp ('k') | xfa/fgas/font/fgas_stdfontmgr.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "xfa/fde/xml/fde_xml_imp.h" 7 #include "xfa/fde/xml/fde_xml_imp.h"
8 8
9 #include <algorithm> 9 #include <algorithm>
10 10
(...skipping 663 matching lines...) Expand 10 before | Expand all | Expand 10 after
674 FX_STRSIZE iFind = m_wsTag.Find(L':', 0); 674 FX_STRSIZE iFind = m_wsTag.Find(L':', 0);
675 if (iFind < 0) { 675 if (iFind < 0) {
676 wsTag = m_wsTag; 676 wsTag = m_wsTag;
677 } else { 677 } else {
678 wsTag = m_wsTag.Right(m_wsTag.GetLength() - iFind - 1); 678 wsTag = m_wsTag.Right(m_wsTag.GetLength() - iFind - 1);
679 } 679 }
680 } 680 }
681 void CFDE_XMLElement::GetNamespacePrefix(CFX_WideString& wsPrefix) const { 681 void CFDE_XMLElement::GetNamespacePrefix(CFX_WideString& wsPrefix) const {
682 FX_STRSIZE iFind = m_wsTag.Find(L':', 0); 682 FX_STRSIZE iFind = m_wsTag.Find(L':', 0);
683 if (iFind < 0) { 683 if (iFind < 0) {
684 wsPrefix.Empty(); 684 wsPrefix.clear();
685 } else { 685 } else {
686 wsPrefix = m_wsTag.Left(iFind); 686 wsPrefix = m_wsTag.Left(iFind);
687 } 687 }
688 } 688 }
689 void CFDE_XMLElement::GetNamespaceURI(CFX_WideString& wsNamespace) const { 689 void CFDE_XMLElement::GetNamespaceURI(CFX_WideString& wsNamespace) const {
690 CFX_WideString wsAttri(L"xmlns"), wsPrefix; 690 CFX_WideString wsAttri(L"xmlns"), wsPrefix;
691 GetNamespacePrefix(wsPrefix); 691 GetNamespacePrefix(wsPrefix);
692 if (wsPrefix.GetLength() > 0) { 692 if (wsPrefix.GetLength() > 0) {
693 wsAttri += L":"; 693 wsAttri += L":";
694 wsAttri += wsPrefix; 694 wsAttri += wsPrefix;
695 } 695 }
696 wsNamespace.Empty(); 696 wsNamespace.clear();
697 CFDE_XMLNode* pNode = (CFDE_XMLNode*)this; 697 CFDE_XMLNode* pNode = (CFDE_XMLNode*)this;
698 while (pNode != NULL) { 698 while (pNode != NULL) {
699 if (pNode->GetType() != FDE_XMLNODE_Element) { 699 if (pNode->GetType() != FDE_XMLNODE_Element) {
700 break; 700 break;
701 } 701 }
702 CFDE_XMLElement* pElement = (CFDE_XMLElement*)pNode; 702 CFDE_XMLElement* pElement = (CFDE_XMLElement*)pNode;
703 if (!pElement->HasAttribute(wsAttri.c_str())) { 703 if (!pElement->HasAttribute(wsAttri.c_str())) {
704 pNode = pNode->GetNodeItem(CFDE_XMLNode::Parent); 704 pNode = pNode->GetNodeItem(CFDE_XMLNode::Parent);
705 continue; 705 continue;
706 } 706 }
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
1079 : m_pParser(pParser), 1079 : m_pParser(pParser),
1080 m_pParent(pRoot), 1080 m_pParent(pRoot),
1081 m_pChild(NULL), 1081 m_pChild(NULL),
1082 m_NodeStack(16), 1082 m_NodeStack(16),
1083 m_ws1(), 1083 m_ws1(),
1084 m_ws2() { 1084 m_ws2() {
1085 m_NodeStack.Push(m_pParent); 1085 m_NodeStack.Push(m_pParent);
1086 } 1086 }
1087 CFDE_XMLDOMParser::~CFDE_XMLDOMParser() { 1087 CFDE_XMLDOMParser::~CFDE_XMLDOMParser() {
1088 m_NodeStack.RemoveAll(); 1088 m_NodeStack.RemoveAll();
1089 m_ws1.Empty(); 1089 m_ws1.clear();
1090 m_ws2.Empty(); 1090 m_ws2.clear();
1091 } 1091 }
1092 1092
1093 int32_t CFDE_XMLDOMParser::DoParser(IFX_Pause* pPause) { 1093 int32_t CFDE_XMLDOMParser::DoParser(IFX_Pause* pPause) {
1094 FDE_XmlSyntaxResult syntaxParserResult; 1094 FDE_XmlSyntaxResult syntaxParserResult;
1095 int32_t iCount = 0; 1095 int32_t iCount = 0;
1096 while (TRUE) { 1096 while (TRUE) {
1097 syntaxParserResult = m_pParser->DoSyntaxParse(); 1097 syntaxParserResult = m_pParser->DoSyntaxParse();
1098 switch (syntaxParserResult) { 1098 switch (syntaxParserResult) {
1099 case FDE_XmlSyntaxResult::InstructionOpen: 1099 case FDE_XmlSyntaxResult::InstructionOpen:
1100 break; 1100 break;
(...skipping 24 matching lines...) Expand all
1125 break; 1125 break;
1126 } 1126 }
1127 m_pParent = (CFDE_XMLNode*)*m_NodeStack.GetTopElement(); 1127 m_pParent = (CFDE_XMLNode*)*m_NodeStack.GetTopElement();
1128 m_pChild = m_pParent; 1128 m_pChild = m_pParent;
1129 iCount++; 1129 iCount++;
1130 break; 1130 break;
1131 case FDE_XmlSyntaxResult::TargetName: 1131 case FDE_XmlSyntaxResult::TargetName:
1132 m_pParser->GetTargetName(m_ws1); 1132 m_pParser->GetTargetName(m_ws1);
1133 m_pChild = new CFDE_XMLInstruction(m_ws1); 1133 m_pChild = new CFDE_XMLInstruction(m_ws1);
1134 m_pParent->InsertChildNode(m_pChild); 1134 m_pParent->InsertChildNode(m_pChild);
1135 m_ws1.Empty(); 1135 m_ws1.clear();
1136 break; 1136 break;
1137 case FDE_XmlSyntaxResult::TagName: 1137 case FDE_XmlSyntaxResult::TagName:
1138 m_pParser->GetTagName(m_ws1); 1138 m_pParser->GetTagName(m_ws1);
1139 m_pChild = new CFDE_XMLElement(m_ws1); 1139 m_pChild = new CFDE_XMLElement(m_ws1);
1140 m_pParent->InsertChildNode(m_pChild); 1140 m_pParent->InsertChildNode(m_pChild);
1141 m_NodeStack.Push(m_pChild); 1141 m_NodeStack.Push(m_pChild);
1142 m_pParent = m_pChild; 1142 m_pParent = m_pChild;
1143 break; 1143 break;
1144 case FDE_XmlSyntaxResult::AttriName: 1144 case FDE_XmlSyntaxResult::AttriName:
1145 m_pParser->GetAttributeName(m_ws1); 1145 m_pParser->GetAttributeName(m_ws1);
1146 break; 1146 break;
1147 case FDE_XmlSyntaxResult::AttriValue: 1147 case FDE_XmlSyntaxResult::AttriValue:
1148 if (m_pChild == NULL) { 1148 if (m_pChild == NULL) {
1149 syntaxParserResult = FDE_XmlSyntaxResult::Error; 1149 syntaxParserResult = FDE_XmlSyntaxResult::Error;
1150 break; 1150 break;
1151 } 1151 }
1152 m_pParser->GetAttributeName(m_ws2); 1152 m_pParser->GetAttributeName(m_ws2);
1153 if (m_pChild->GetType() == FDE_XMLNODE_Element) { 1153 if (m_pChild->GetType() == FDE_XMLNODE_Element) {
1154 ((CFDE_XMLElement*)m_pChild)->SetString(m_ws1, m_ws2); 1154 ((CFDE_XMLElement*)m_pChild)->SetString(m_ws1, m_ws2);
1155 } else if (m_pChild->GetType() == FDE_XMLNODE_Instruction) { 1155 } else if (m_pChild->GetType() == FDE_XMLNODE_Instruction) {
1156 ((CFDE_XMLInstruction*)m_pChild)->SetString(m_ws1, m_ws2); 1156 ((CFDE_XMLInstruction*)m_pChild)->SetString(m_ws1, m_ws2);
1157 } 1157 }
1158 m_ws1.Empty(); 1158 m_ws1.clear();
1159 break; 1159 break;
1160 case FDE_XmlSyntaxResult::Text: 1160 case FDE_XmlSyntaxResult::Text:
1161 m_pParser->GetTextData(m_ws1); 1161 m_pParser->GetTextData(m_ws1);
1162 m_pChild = new CFDE_XMLText(m_ws1); 1162 m_pChild = new CFDE_XMLText(m_ws1);
1163 m_pParent->InsertChildNode(m_pChild); 1163 m_pParent->InsertChildNode(m_pChild);
1164 m_pChild = m_pParent; 1164 m_pChild = m_pParent;
1165 break; 1165 break;
1166 case FDE_XmlSyntaxResult::CData: 1166 case FDE_XmlSyntaxResult::CData:
1167 m_pParser->GetTextData(m_ws1); 1167 m_pParser->GetTextData(m_ws1);
1168 m_pChild = new CFDE_XMLCharData(m_ws1); 1168 m_pChild = new CFDE_XMLCharData(m_ws1);
1169 m_pParent->InsertChildNode(m_pChild); 1169 m_pParent->InsertChildNode(m_pChild);
1170 m_pChild = m_pParent; 1170 m_pChild = m_pParent;
1171 break; 1171 break;
1172 case FDE_XmlSyntaxResult::TargetData: 1172 case FDE_XmlSyntaxResult::TargetData:
1173 if (m_pChild == NULL || 1173 if (m_pChild == NULL ||
1174 m_pChild->GetType() != FDE_XMLNODE_Instruction) { 1174 m_pChild->GetType() != FDE_XMLNODE_Instruction) {
1175 syntaxParserResult = FDE_XmlSyntaxResult::Error; 1175 syntaxParserResult = FDE_XmlSyntaxResult::Error;
1176 break; 1176 break;
1177 } 1177 }
1178 if (!m_ws1.IsEmpty()) { 1178 if (!m_ws1.IsEmpty()) {
1179 ((CFDE_XMLInstruction*)m_pChild)->AppendData(m_ws1); 1179 ((CFDE_XMLInstruction*)m_pChild)->AppendData(m_ws1);
1180 } 1180 }
1181 m_pParser->GetTargetData(m_ws1); 1181 m_pParser->GetTargetData(m_ws1);
1182 ((CFDE_XMLInstruction*)m_pChild)->AppendData(m_ws1); 1182 ((CFDE_XMLInstruction*)m_pChild)->AppendData(m_ws1);
1183 m_ws1.Empty(); 1183 m_ws1.clear();
1184 break; 1184 break;
1185 default: 1185 default:
1186 break; 1186 break;
1187 } 1187 }
1188 if (syntaxParserResult == FDE_XmlSyntaxResult::Error || 1188 if (syntaxParserResult == FDE_XmlSyntaxResult::Error ||
1189 syntaxParserResult == FDE_XmlSyntaxResult::EndOfString) { 1189 syntaxParserResult == FDE_XmlSyntaxResult::EndOfString) {
1190 break; 1190 break;
1191 } 1191 }
1192 if (pPause != NULL && iCount > 500 && pPause->NeedToPauseNow()) { 1192 if (pPause != NULL && iCount > 500 && pPause->NeedToPauseNow()) {
1193 break; 1193 break;
1194 } 1194 }
1195 } 1195 }
1196 return m_pParser->GetStatus(); 1196 return m_pParser->GetStatus();
1197 } 1197 }
1198 CFDE_XMLSAXParser::CFDE_XMLSAXParser(FDE_XMLREADERHANDLER* pHandler, 1198 CFDE_XMLSAXParser::CFDE_XMLSAXParser(FDE_XMLREADERHANDLER* pHandler,
1199 CFDE_XMLSyntaxParser* pParser) 1199 CFDE_XMLSyntaxParser* pParser)
1200 : m_pHandler(pHandler), 1200 : m_pHandler(pHandler),
1201 m_pParser(pParser), 1201 m_pParser(pParser),
1202 m_TagStack(16), 1202 m_TagStack(16),
1203 m_pTagTop(NULL), 1203 m_pTagTop(NULL),
1204 m_ws1(), 1204 m_ws1(),
1205 m_ws2() {} 1205 m_ws2() {}
1206 CFDE_XMLSAXParser::~CFDE_XMLSAXParser() { 1206 CFDE_XMLSAXParser::~CFDE_XMLSAXParser() {
1207 m_TagStack.RemoveAll(); 1207 m_TagStack.RemoveAll();
1208 m_ws1.Empty(); 1208 m_ws1.clear();
1209 m_ws2.Empty(); 1209 m_ws2.clear();
1210 } 1210 }
1211 int32_t CFDE_XMLSAXParser::DoParser(IFX_Pause* pPause) { 1211 int32_t CFDE_XMLSAXParser::DoParser(IFX_Pause* pPause) {
1212 FDE_XmlSyntaxResult syntaxParserResult; 1212 FDE_XmlSyntaxResult syntaxParserResult;
1213 int32_t iCount = 0; 1213 int32_t iCount = 0;
1214 while (TRUE) { 1214 while (TRUE) {
1215 syntaxParserResult = m_pParser->DoSyntaxParse(); 1215 syntaxParserResult = m_pParser->DoSyntaxParse();
1216 switch (syntaxParserResult) { 1216 switch (syntaxParserResult) {
1217 case FDE_XmlSyntaxResult::ElementBreak: 1217 case FDE_XmlSyntaxResult::ElementBreak:
1218 if (m_pTagTop == NULL) { 1218 if (m_pTagTop == NULL) {
1219 syntaxParserResult = FDE_XmlSyntaxResult::Error; 1219 syntaxParserResult = FDE_XmlSyntaxResult::Error;
(...skipping 20 matching lines...) Expand all
1240 iCount++; 1240 iCount++;
1241 break; 1241 break;
1242 case FDE_XmlSyntaxResult::TargetName: { 1242 case FDE_XmlSyntaxResult::TargetName: {
1243 m_pParser->GetTargetName(m_ws1); 1243 m_pParser->GetTargetName(m_ws1);
1244 CFDE_XMLTAG xmlTag; 1244 CFDE_XMLTAG xmlTag;
1245 xmlTag.wsTagName = m_ws1; 1245 xmlTag.wsTagName = m_ws1;
1246 xmlTag.eType = FDE_XMLNODE_Instruction; 1246 xmlTag.eType = FDE_XMLNODE_Instruction;
1247 Push(xmlTag); 1247 Push(xmlTag);
1248 m_pHandler->OnTagEnter(m_pHandler, FDE_XMLNODE_Instruction, 1248 m_pHandler->OnTagEnter(m_pHandler, FDE_XMLNODE_Instruction,
1249 m_pTagTop->wsTagName); 1249 m_pTagTop->wsTagName);
1250 m_ws1.Empty(); 1250 m_ws1.clear();
1251 } break; 1251 } break;
1252 case FDE_XmlSyntaxResult::TagName: { 1252 case FDE_XmlSyntaxResult::TagName: {
1253 m_pParser->GetTargetName(m_ws1); 1253 m_pParser->GetTargetName(m_ws1);
1254 CFDE_XMLTAG xmlTag; 1254 CFDE_XMLTAG xmlTag;
1255 xmlTag.wsTagName = m_ws1; 1255 xmlTag.wsTagName = m_ws1;
1256 xmlTag.eType = FDE_XMLNODE_Element; 1256 xmlTag.eType = FDE_XMLNODE_Element;
1257 Push(xmlTag); 1257 Push(xmlTag);
1258 m_pHandler->OnTagEnter(m_pHandler, FDE_XMLNODE_Element, 1258 m_pHandler->OnTagEnter(m_pHandler, FDE_XMLNODE_Element,
1259 m_pTagTop->wsTagName); 1259 m_pTagTop->wsTagName);
1260 } break; 1260 } break;
1261 case FDE_XmlSyntaxResult::AttriName: 1261 case FDE_XmlSyntaxResult::AttriName:
1262 m_pParser->GetTargetName(m_ws1); 1262 m_pParser->GetTargetName(m_ws1);
1263 break; 1263 break;
1264 case FDE_XmlSyntaxResult::AttriValue: 1264 case FDE_XmlSyntaxResult::AttriValue:
1265 m_pParser->GetAttributeName(m_ws2); 1265 m_pParser->GetAttributeName(m_ws2);
1266 if (m_pTagTop == NULL) { 1266 if (m_pTagTop == NULL) {
1267 syntaxParserResult = FDE_XmlSyntaxResult::Error; 1267 syntaxParserResult = FDE_XmlSyntaxResult::Error;
1268 break; 1268 break;
1269 } 1269 }
1270 if (m_pTagTop->eType == FDE_XMLNODE_Element) { 1270 if (m_pTagTop->eType == FDE_XMLNODE_Element) {
1271 m_pHandler->OnAttribute(m_pHandler, m_ws1, m_ws2); 1271 m_pHandler->OnAttribute(m_pHandler, m_ws1, m_ws2);
1272 } 1272 }
1273 m_ws1.Empty(); 1273 m_ws1.clear();
1274 break; 1274 break;
1275 case FDE_XmlSyntaxResult::CData: 1275 case FDE_XmlSyntaxResult::CData:
1276 m_pParser->GetTextData(m_ws1); 1276 m_pParser->GetTextData(m_ws1);
1277 m_pHandler->OnData(m_pHandler, FDE_XMLNODE_CharData, m_ws1); 1277 m_pHandler->OnData(m_pHandler, FDE_XMLNODE_CharData, m_ws1);
1278 break; 1278 break;
1279 case FDE_XmlSyntaxResult::Text: 1279 case FDE_XmlSyntaxResult::Text:
1280 m_pParser->GetTextData(m_ws1); 1280 m_pParser->GetTextData(m_ws1);
1281 m_pHandler->OnData(m_pHandler, FDE_XMLNODE_Text, m_ws1); 1281 m_pHandler->OnData(m_pHandler, FDE_XMLNODE_Text, m_ws1);
1282 break; 1282 break;
1283 case FDE_XmlSyntaxResult::TargetData: 1283 case FDE_XmlSyntaxResult::TargetData:
1284 m_pParser->GetTargetData(m_ws1); 1284 m_pParser->GetTargetData(m_ws1);
1285 m_pHandler->OnData(m_pHandler, FDE_XMLNODE_Instruction, m_ws1); 1285 m_pHandler->OnData(m_pHandler, FDE_XMLNODE_Instruction, m_ws1);
1286 m_ws1.Empty(); 1286 m_ws1.clear();
1287 break; 1287 break;
1288 default: 1288 default:
1289 break; 1289 break;
1290 } 1290 }
1291 if (syntaxParserResult == FDE_XmlSyntaxResult::Error || 1291 if (syntaxParserResult == FDE_XmlSyntaxResult::Error ||
1292 syntaxParserResult == FDE_XmlSyntaxResult::EndOfString) { 1292 syntaxParserResult == FDE_XmlSyntaxResult::EndOfString) {
1293 break; 1293 break;
1294 } 1294 }
1295 if (pPause != NULL && iCount > 500 && pPause->NeedToPauseNow()) { 1295 if (pPause != NULL && iCount > 500 && pPause->NeedToPauseNow()) {
1296 break; 1296 break;
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
1373 m_iStartPosition += iCount; 1373 m_iStartPosition += iCount;
1374 m_iDataLength -= iCount; 1374 m_iDataLength -= iCount;
1375 } else { 1375 } else {
1376 m_iDataLength -= iCount; 1376 m_iDataLength -= iCount;
1377 } 1377 }
1378 return m_iDataLength; 1378 return m_iDataLength;
1379 } 1379 }
1380 void CFDE_BlockBuffer::GetTextData(CFX_WideString& wsTextData, 1380 void CFDE_BlockBuffer::GetTextData(CFX_WideString& wsTextData,
1381 int32_t iStart, 1381 int32_t iStart,
1382 int32_t iLength) const { 1382 int32_t iLength) const {
1383 wsTextData.Empty(); 1383 wsTextData.clear();
1384 int32_t iMaybeDataLength = m_iBufferSize - 1 - m_iStartPosition; 1384 int32_t iMaybeDataLength = m_iBufferSize - 1 - m_iStartPosition;
1385 if (iStart < 0 || iStart > iMaybeDataLength) { 1385 if (iStart < 0 || iStart > iMaybeDataLength) {
1386 return; 1386 return;
1387 } 1387 }
1388 if (iLength == -1 || iLength > iMaybeDataLength) { 1388 if (iLength == -1 || iLength > iMaybeDataLength) {
1389 iLength = iMaybeDataLength; 1389 iLength = iMaybeDataLength;
1390 } 1390 }
1391 if (iLength <= 0) { 1391 if (iLength <= 0) {
1392 return; 1392 return;
1393 } 1393 }
(...skipping 680 matching lines...) Expand 10 before | Expand all | Expand 10 after
2074 m_BlockBuffer.DeleteTextChars(m_iDataLength - m_iEntityStart, FALSE); 2074 m_BlockBuffer.DeleteTextChars(m_iDataLength - m_iEntityStart, FALSE);
2075 m_pCurrentBlock = m_BlockBuffer.GetAvailableBlock(m_iIndexInBlock); 2075 m_pCurrentBlock = m_BlockBuffer.GetAvailableBlock(m_iIndexInBlock);
2076 m_iEntityStart = -1; 2076 m_iEntityStart = -1;
2077 } else { 2077 } else {
2078 if (m_iEntityStart < 0 && ch == L'&') { 2078 if (m_iEntityStart < 0 && ch == L'&') {
2079 m_iEntityStart = m_iDataLength - 1; 2079 m_iEntityStart = m_iDataLength - 1;
2080 } 2080 }
2081 } 2081 }
2082 m_pStart++; 2082 m_pStart++;
2083 } 2083 }
OLDNEW
« no previous file with comments | « xfa/fde/tto/fde_textout.cpp ('k') | xfa/fgas/font/fgas_stdfontmgr.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698