Kaydet (Commit) 8a6722f6 authored tarafından Noel Grandin's avatar Noel Grandin

loplugin:useuniqueptr in TypeDetectionImporter

Change-Id: I0bb696ccf8555fe597aaff1cb6ab74bf16d81731
Reviewed-on: https://gerrit.libreoffice.org/55520Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst eec9f6c8
...@@ -70,16 +70,14 @@ void TypeDetectionImporter::fillFilterVector( XMLFilterVector& rFilters ) ...@@ -70,16 +70,14 @@ void TypeDetectionImporter::fillFilterVector( XMLFilterVector& rFilters )
// create filter infos from imported filter nodes // create filter infos from imported filter nodes
for (auto const& filterNode : maFilterNodes) for (auto const& filterNode : maFilterNodes)
{ {
filter_info_impl* pFilter = createFilterForNode(filterNode); filter_info_impl* pFilter = createFilterForNode(filterNode.get());
if( pFilter ) if( pFilter )
rFilters.push_back( pFilter ); rFilters.push_back( pFilter );
delete filterNode;
} }
maFilterNodes.clear();
// now delete type nodes // now delete type nodes
for (auto const& typeNode : maTypeNodes) maTypeNodes.clear();
delete typeNode;
} }
static OUString getSubdata( int index, sal_Unicode delimiter, const OUString& rData ) static OUString getSubdata( int index, sal_Unicode delimiter, const OUString& rData )
...@@ -115,11 +113,10 @@ static OUString getSubdata( int index, sal_Unicode delimiter, const OUString& rD ...@@ -115,11 +113,10 @@ static OUString getSubdata( int index, sal_Unicode delimiter, const OUString& rD
Node* TypeDetectionImporter::findTypeNode( const OUString& rType ) Node* TypeDetectionImporter::findTypeNode( const OUString& rType )
{ {
// now delete type nodes for (auto aIter(maTypeNodes.begin()), aEnd(maTypeNodes.end()); aIter != aEnd; ++aIter)
for (NodeVector::const_iterator aIter(maTypeNodes.begin()), aEnd(maTypeNodes.end()); aIter != aEnd; ++aIter)
{ {
if( (*aIter)->maName == rType ) if( (*aIter)->maName == rType )
return (*aIter); return aIter->get();
} }
return nullptr; return nullptr;
...@@ -277,18 +274,18 @@ void SAL_CALL TypeDetectionImporter::endElement( const OUString& /* aName */ ) ...@@ -277,18 +274,18 @@ void SAL_CALL TypeDetectionImporter::endElement( const OUString& /* aName */ )
case e_Filter: case e_Filter:
case e_Type: case e_Type:
{ {
Node* pNode = new Node; std::unique_ptr<Node> pNode(new Node);
pNode->maName = maNodeName; pNode->maName = maNodeName;
pNode->maPropertyMap = maPropertyMap; pNode->maPropertyMap = maPropertyMap;
maPropertyMap.clear(); maPropertyMap.clear();
if( eCurrentState == e_Filter ) if( eCurrentState == e_Filter )
{ {
maFilterNodes.push_back( pNode ); maFilterNodes.push_back( std::move(pNode) );
} }
else else
{ {
maTypeNodes.push_back( pNode ); maTypeNodes.push_back( std::move(pNode) );
} }
} }
break; break;
......
...@@ -28,6 +28,7 @@ ...@@ -28,6 +28,7 @@
#include "xmlfilterjar.hxx" #include "xmlfilterjar.hxx"
#include <map> #include <map>
#include <memory>
#include <vector> #include <vector>
#include <stack> #include <stack>
...@@ -56,8 +57,6 @@ struct Node ...@@ -56,8 +57,6 @@ struct Node
PropertyMap maPropertyMap; PropertyMap maPropertyMap;
}; };
typedef std::vector< Node* > NodeVector;
class TypeDetectionImporter : public cppu::WeakImplHelper < css::xml::sax::XDocumentHandler > class TypeDetectionImporter : public cppu::WeakImplHelper < css::xml::sax::XDocumentHandler >
{ {
public: public:
...@@ -83,8 +82,8 @@ private: ...@@ -83,8 +82,8 @@ private:
std::stack< ImportState > maStack; std::stack< ImportState > maStack;
PropertyMap maPropertyMap; PropertyMap maPropertyMap;
NodeVector maFilterNodes; std::vector< std::unique_ptr<Node> > maFilterNodes;
NodeVector maTypeNodes; std::vector< std::unique_ptr<Node> > maTypeNodes;
OUString maValue; OUString maValue;
OUString maNodeName; OUString maNodeName;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment