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

loplugin:useuniqueptr in Oasis2OOoTransformer

Change-Id: I7636bb09bfa728ae8031d57e52d2903f711e9cca
Reviewed-on: https://gerrit.libreoffice.org/48424Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst cfb59817
...@@ -1634,202 +1634,202 @@ XMLTransformerActions *Oasis2OOoTransformer::GetUserDefinedActions( ...@@ -1634,202 +1634,202 @@ XMLTransformerActions *Oasis2OOoTransformer::GetUserDefinedActions(
{ {
if( n<MAX_OASIS_PROP_ACTIONS ) if( n<MAX_OASIS_PROP_ACTIONS )
{ {
m_aActions[n] = m_aActions[n].reset(
XMLStyleOASISTContext::CreateTransformerActions( n ); XMLStyleOASISTContext::CreateTransformerActions( n ) );
} }
else switch( n ) else switch( n )
{ {
case OASIS_STYLE_ACTIONS: case OASIS_STYLE_ACTIONS:
m_aActions[OASIS_STYLE_ACTIONS] = m_aActions[OASIS_STYLE_ACTIONS].reset(
new XMLTransformerActions( aStyleActionTable ); new XMLTransformerActions( aStyleActionTable ) );
break; break;
case OASIS_FONT_FACE_ACTIONS: case OASIS_FONT_FACE_ACTIONS:
m_aActions[OASIS_FONT_FACE_ACTIONS] = m_aActions[OASIS_FONT_FACE_ACTIONS].reset(
new XMLTransformerActions( aFontFaceActionTable ); new XMLTransformerActions( aFontFaceActionTable ) );
break; break;
case OASIS_SHAPE_ACTIONS: case OASIS_SHAPE_ACTIONS:
m_aActions[OASIS_SHAPE_ACTIONS] = m_aActions[OASIS_SHAPE_ACTIONS].reset(
new XMLTransformerActions( aShapeActionTable ); new XMLTransformerActions( aShapeActionTable ) );
break; break;
case OASIS_CONNECTOR_ACTIONS: case OASIS_CONNECTOR_ACTIONS:
m_aActions[OASIS_CONNECTOR_ACTIONS] = m_aActions[OASIS_CONNECTOR_ACTIONS].reset(
new XMLTransformerActions( aConnectorActionTable ); new XMLTransformerActions( aConnectorActionTable ) );
break; break;
case OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS: case OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS:
m_aActions[OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS] = m_aActions[OASIS_INDEX_ENTRY_TAB_STOP_ACTIONS].reset(
new XMLTransformerActions( aIndexEntryTabStopActionTable ); new XMLTransformerActions( aIndexEntryTabStopActionTable ) );
break; break;
case OASIS_TAB_STOP_ACTIONS: case OASIS_TAB_STOP_ACTIONS:
m_aActions[OASIS_TAB_STOP_ACTIONS] = m_aActions[OASIS_TAB_STOP_ACTIONS].reset(
new XMLTransformerActions( aTabStopActionTable ); new XMLTransformerActions( aTabStopActionTable ) );
break; break;
case OASIS_LINENUMBERING_ACTIONS: case OASIS_LINENUMBERING_ACTIONS:
m_aActions[OASIS_LINENUMBERING_ACTIONS] = m_aActions[OASIS_LINENUMBERING_ACTIONS].reset(
new XMLTransformerActions( aLineNumberingActionTable ); new XMLTransformerActions( aLineNumberingActionTable ) );
break; break;
case OASIS_FOOTNOTE_SEP_ACTIONS: case OASIS_FOOTNOTE_SEP_ACTIONS:
m_aActions[OASIS_FOOTNOTE_SEP_ACTIONS] = m_aActions[OASIS_FOOTNOTE_SEP_ACTIONS].reset(
new XMLTransformerActions( aFootnoteSepActionTable ); new XMLTransformerActions( aFootnoteSepActionTable ) );
break; break;
case OASIS_DROP_CAP_ACTIONS: case OASIS_DROP_CAP_ACTIONS:
m_aActions[OASIS_DROP_CAP_ACTIONS] = m_aActions[OASIS_DROP_CAP_ACTIONS].reset(
new XMLTransformerActions( aDropCapActionTable ); new XMLTransformerActions( aDropCapActionTable ) );
break; break;
case OASIS_COLUMNS_ACTIONS: case OASIS_COLUMNS_ACTIONS:
m_aActions[OASIS_COLUMNS_ACTIONS] = m_aActions[OASIS_COLUMNS_ACTIONS].reset(
new XMLTransformerActions( aColumnsActionTable ); new XMLTransformerActions( aColumnsActionTable ) );
break; break;
case OASIS_TEXT_VALUE_TYPE_ACTIONS: case OASIS_TEXT_VALUE_TYPE_ACTIONS:
m_aActions[OASIS_TEXT_VALUE_TYPE_ACTIONS] = m_aActions[OASIS_TEXT_VALUE_TYPE_ACTIONS].reset(
new XMLTransformerActions( aTextValueTypeActionTable ); new XMLTransformerActions( aTextValueTypeActionTable ) );
break; break;
case OASIS_TABLE_VALUE_TYPE_ACTIONS: case OASIS_TABLE_VALUE_TYPE_ACTIONS:
m_aActions[OASIS_TABLE_VALUE_TYPE_ACTIONS] = m_aActions[OASIS_TABLE_VALUE_TYPE_ACTIONS].reset(
new XMLTransformerActions( aTableValueTypeActionTable ); new XMLTransformerActions( aTableValueTypeActionTable ) );
break; break;
case OASIS_PARA_ACTIONS: case OASIS_PARA_ACTIONS:
m_aActions[OASIS_PARA_ACTIONS] = m_aActions[OASIS_PARA_ACTIONS].reset(
new XMLTransformerActions( aParaActionTable ); new XMLTransformerActions( aParaActionTable ) );
break; break;
case OASIS_LIST_STYLE_REF_ACTIONS: case OASIS_LIST_STYLE_REF_ACTIONS:
m_aActions[OASIS_LIST_STYLE_REF_ACTIONS] = m_aActions[OASIS_LIST_STYLE_REF_ACTIONS].reset(
new XMLTransformerActions( aListStyleRefActionTable ); new XMLTransformerActions( aListStyleRefActionTable ) );
break; break;
case OASIS_TEXT_STYLE_REF_ACTIONS: case OASIS_TEXT_STYLE_REF_ACTIONS:
m_aActions[OASIS_TEXT_STYLE_REF_ACTIONS] = m_aActions[OASIS_TEXT_STYLE_REF_ACTIONS].reset(
new XMLTransformerActions( aTextStyleRefActionTable ); new XMLTransformerActions( aTextStyleRefActionTable ) );
break; break;
case OASIS_PARA_STYLE_REF_ACTIONS: case OASIS_PARA_STYLE_REF_ACTIONS:
m_aActions[OASIS_PARA_STYLE_REF_ACTIONS] = m_aActions[OASIS_PARA_STYLE_REF_ACTIONS].reset(
new XMLTransformerActions( aParaStyleRefActionTable ); new XMLTransformerActions( aParaStyleRefActionTable ) );
break; break;
case OASIS_MASTER_PAGE_REF_ACTIONS: case OASIS_MASTER_PAGE_REF_ACTIONS:
m_aActions[OASIS_MASTER_PAGE_REF_ACTIONS] = m_aActions[OASIS_MASTER_PAGE_REF_ACTIONS].reset(
new XMLTransformerActions( aMasterPageRefActionTable ); new XMLTransformerActions( aMasterPageRefActionTable ) );
break; break;
case OASIS_MAP_STYLE_REF_ACTIONS: case OASIS_MAP_STYLE_REF_ACTIONS:
m_aActions[OASIS_MAP_STYLE_REF_ACTIONS] = m_aActions[OASIS_MAP_STYLE_REF_ACTIONS].reset(
new XMLTransformerActions( aMapStyleRefActionTable ); new XMLTransformerActions( aMapStyleRefActionTable ) );
break; break;
case OASIS_MASTER_PAGE_ACTIONS: case OASIS_MASTER_PAGE_ACTIONS:
m_aActions[OASIS_MASTER_PAGE_ACTIONS] = m_aActions[OASIS_MASTER_PAGE_ACTIONS].reset(
new XMLTransformerActions( aMasterPageActionTable ); new XMLTransformerActions( aMasterPageActionTable ) );
break; break;
case OASIS_NOTES_ACTIONS: case OASIS_NOTES_ACTIONS:
m_aActions[OASIS_NOTES_ACTIONS] = m_aActions[OASIS_NOTES_ACTIONS].reset(
new XMLTransformerActions( aNotesActionTable ); new XMLTransformerActions( aNotesActionTable ) );
break; break;
case OASIS_ANNOTATION_ACTIONS: case OASIS_ANNOTATION_ACTIONS:
m_aActions[OASIS_ANNOTATION_ACTIONS] = m_aActions[OASIS_ANNOTATION_ACTIONS].reset(
new XMLTransformerActions( aAnnotationActionTable ); new XMLTransformerActions( aAnnotationActionTable ) );
break; break;
case OASIS_CHANGE_INFO_ACTIONS: case OASIS_CHANGE_INFO_ACTIONS:
m_aActions[OASIS_CHANGE_INFO_ACTIONS] = m_aActions[OASIS_CHANGE_INFO_ACTIONS].reset(
new XMLTransformerActions( aChangeInfoActionTable ); new XMLTransformerActions( aChangeInfoActionTable ) );
break; break;
case OASIS_FRAME_ELEM_ACTIONS: case OASIS_FRAME_ELEM_ACTIONS:
m_aActions[OASIS_FRAME_ELEM_ACTIONS] = m_aActions[OASIS_FRAME_ELEM_ACTIONS].reset(
new XMLTransformerActions( aFrameActionTable ); new XMLTransformerActions( aFrameActionTable ) );
break; break;
case OASIS_BACKGROUND_IMAGE_ACTIONS: case OASIS_BACKGROUND_IMAGE_ACTIONS:
m_aActions[OASIS_BACKGROUND_IMAGE_ACTIONS] = m_aActions[OASIS_BACKGROUND_IMAGE_ACTIONS].reset(
new XMLTransformerActions( aBackgroundImageActionTable ); new XMLTransformerActions( aBackgroundImageActionTable ) );
break; break;
case OASIS_DDE_CONNECTION_DECL_ACTIONS: case OASIS_DDE_CONNECTION_DECL_ACTIONS:
m_aActions[OASIS_DDE_CONNECTION_DECL_ACTIONS] = m_aActions[OASIS_DDE_CONNECTION_DECL_ACTIONS].reset(
new XMLTransformerActions( aDDEConnectionDeclActionTable ); new XMLTransformerActions( aDDEConnectionDeclActionTable ) );
break; break;
case OASIS_EVENT_ACTIONS: case OASIS_EVENT_ACTIONS:
m_aActions[OASIS_EVENT_ACTIONS] = m_aActions[OASIS_EVENT_ACTIONS].reset(
new XMLTransformerActions( aEventActionTable ); new XMLTransformerActions( aEventActionTable ) );
break; break;
case OASIS_DLG_ACTIONS: case OASIS_DLG_ACTIONS:
m_aActions[OASIS_DLG_ACTIONS] = m_aActions[OASIS_DLG_ACTIONS].reset(
new XMLTransformerActions( aDlgActionTable ); new XMLTransformerActions( aDlgActionTable ) );
break; break;
case OASIS_FORM_CONTROL_ACTIONS: case OASIS_FORM_CONTROL_ACTIONS:
m_aActions[OASIS_FORM_CONTROL_ACTIONS] = m_aActions[OASIS_FORM_CONTROL_ACTIONS].reset(
new XMLTransformerActions( aFormControlActionTable ); new XMLTransformerActions( aFormControlActionTable ) );
break; break;
case OASIS_FORM_COLUMN_ACTIONS: case OASIS_FORM_COLUMN_ACTIONS:
m_aActions[OASIS_FORM_COLUMN_ACTIONS] = m_aActions[OASIS_FORM_COLUMN_ACTIONS].reset(
new XMLTransformerActions( aFormColumnActionTable ); new XMLTransformerActions( aFormColumnActionTable ) );
break; break;
case OASIS_FORM_PROP_ACTIONS: case OASIS_FORM_PROP_ACTIONS:
m_aActions[OASIS_FORM_PROP_ACTIONS] = m_aActions[OASIS_FORM_PROP_ACTIONS].reset(
new XMLTransformerActions( aFormPropActionTable ); new XMLTransformerActions( aFormPropActionTable ) );
break; break;
case OASIS_XLINK_ACTIONS: case OASIS_XLINK_ACTIONS:
m_aActions[OASIS_XLINK_ACTIONS] = m_aActions[OASIS_XLINK_ACTIONS].reset(
new XMLTransformerActions( aXLinkActionTable ); new XMLTransformerActions( aXLinkActionTable ) );
break; break;
case OASIS_CONFIG_ITEM_SET_ACTIONS: case OASIS_CONFIG_ITEM_SET_ACTIONS:
m_aActions[OASIS_CONFIG_ITEM_SET_ACTIONS] = m_aActions[OASIS_CONFIG_ITEM_SET_ACTIONS].reset(
new XMLTransformerActions( aConfigItemSetActionTable ); new XMLTransformerActions( aConfigItemSetActionTable ) );
break; break;
case OASIS_FORMULA_ACTIONS: case OASIS_FORMULA_ACTIONS:
m_aActions[OASIS_FORMULA_ACTIONS] = m_aActions[OASIS_FORMULA_ACTIONS].reset(
new XMLTransformerActions( aFormulaActionTable ); new XMLTransformerActions( aFormulaActionTable ) );
break; break;
case OASIS_CHART_ACTIONS: case OASIS_CHART_ACTIONS:
m_aActions[OASIS_CHART_ACTIONS] = m_aActions[OASIS_CHART_ACTIONS].reset(
new XMLTransformerActions( aChartActionTable ); new XMLTransformerActions( aChartActionTable ) );
break; break;
case OASIS_FORM_ACTIONS: case OASIS_FORM_ACTIONS:
m_aActions[OASIS_FORM_ACTIONS] = m_aActions[OASIS_FORM_ACTIONS].reset(
new XMLTransformerActions( aFormActionTable ); new XMLTransformerActions( aFormActionTable ) );
break; break;
case OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS: case OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS:
m_aActions[OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS] = m_aActions[OASIS_ALPHABETICAL_INDEX_MARK_ACTIONS].reset(
new XMLTransformerActions( new XMLTransformerActions(
aAlphabeticalIndexMarkActionTable ); aAlphabeticalIndexMarkActionTable ) );
break; break;
case OASIS_CONTENT_VALIDATION_ACTIONS: case OASIS_CONTENT_VALIDATION_ACTIONS:
m_aActions[OASIS_CONTENT_VALIDATION_ACTIONS] = m_aActions[OASIS_CONTENT_VALIDATION_ACTIONS].reset(
new XMLTransformerActions( aContentValidationActionTable ); new XMLTransformerActions( aContentValidationActionTable ) );
break; break;
case OASIS_DDE_CONV_MODE_ACTIONS: case OASIS_DDE_CONV_MODE_ACTIONS:
m_aActions[OASIS_DDE_CONV_MODE_ACTIONS] = m_aActions[OASIS_DDE_CONV_MODE_ACTIONS].reset(
new XMLTransformerActions( aDDEConvModeActionTable ); new XMLTransformerActions( aDDEConvModeActionTable ) );
break; break;
case OASIS_DATAPILOT_MEMBER_ACTIONS: case OASIS_DATAPILOT_MEMBER_ACTIONS:
m_aActions[OASIS_DATAPILOT_MEMBER_ACTIONS] = m_aActions[OASIS_DATAPILOT_MEMBER_ACTIONS].reset(
new XMLTransformerActions( aDataPilotMemberActionTable ); new XMLTransformerActions( aDataPilotMemberActionTable ) );
break; break;
case OASIS_DATAPILOT_LEVEL_ACTIONS: case OASIS_DATAPILOT_LEVEL_ACTIONS:
m_aActions[OASIS_DATAPILOT_LEVEL_ACTIONS] = m_aActions[OASIS_DATAPILOT_LEVEL_ACTIONS].reset(
new XMLTransformerActions( aDataPilotLevelActionTable ); new XMLTransformerActions( aDataPilotLevelActionTable ) );
break; break;
case OASIS_SOURCE_SERVICE_ACTIONS: case OASIS_SOURCE_SERVICE_ACTIONS:
m_aActions[OASIS_SOURCE_SERVICE_ACTIONS] = m_aActions[OASIS_SOURCE_SERVICE_ACTIONS].reset(
new XMLTransformerActions( aSourceServiceActionTable ); new XMLTransformerActions( aSourceServiceActionTable ) );
break; break;
case OASIS_DRAW_AREA_POLYGON_ACTIONS: case OASIS_DRAW_AREA_POLYGON_ACTIONS:
m_aActions[OASIS_DRAW_AREA_POLYGON_ACTIONS] = m_aActions[OASIS_DRAW_AREA_POLYGON_ACTIONS].reset(
new XMLTransformerActions( aShapeActionTable ); new XMLTransformerActions( aShapeActionTable ) );
m_aActions[OASIS_DRAW_AREA_POLYGON_ACTIONS] m_aActions[OASIS_DRAW_AREA_POLYGON_ACTIONS]
->Add( aDrawAreaPolygonActionTable ); ->Add( aDrawAreaPolygonActionTable );
break; break;
case OASIS_SCRIPT_ACTIONS: case OASIS_SCRIPT_ACTIONS:
m_aActions[OASIS_SCRIPT_ACTIONS] = m_aActions[OASIS_SCRIPT_ACTIONS].reset(
new XMLTransformerActions( aScriptActionTable ); new XMLTransformerActions( aScriptActionTable ) );
break; break;
case OASIS_DATETIME_ACTIONS: case OASIS_DATETIME_ACTIONS:
m_aActions[OASIS_DATETIME_ACTIONS] = m_aActions[OASIS_DATETIME_ACTIONS].reset(
new XMLTransformerActions( aDateTimeActionTable ); new XMLTransformerActions( aDateTimeActionTable ) );
break; break;
// Bugdoc with table won't load correctly (#i40011#, #i40015#) // Bugdoc with table won't load correctly (#i40011#, #i40015#)
case OASIS_TABLE_STYLE_REF_ACTIONS: case OASIS_TABLE_STYLE_REF_ACTIONS:
m_aActions[OASIS_TABLE_STYLE_REF_ACTIONS] = m_aActions[OASIS_TABLE_STYLE_REF_ACTIONS].reset(
new XMLTransformerActions( aTableStyleRefActionTable ); new XMLTransformerActions( aTableStyleRefActionTable ) );
break; break;
case OASIS_ANIMATION_ACTIONS: case OASIS_ANIMATION_ACTIONS:
m_aActions[OASIS_ANIMATION_ACTIONS] = m_aActions[OASIS_ANIMATION_ACTIONS].reset(
new XMLTransformerActions( aAnimationActionTable ); new XMLTransformerActions( aAnimationActionTable ) );
break; break;
} }
} }
pActions = m_aActions[n]; pActions = m_aActions[n].get();
} }
return pActions; return pActions;
...@@ -1905,14 +1905,14 @@ Oasis2OOoTransformer::Oasis2OOoTransformer() throw() : ...@@ -1905,14 +1905,14 @@ Oasis2OOoTransformer::Oasis2OOoTransformer() throw() :
GetNamespaceMap().Add( GetXMLToken(XML_NP_SVG), GetXMLToken(XML_N_SVG_COMPAT), XML_NAMESPACE_SVG ); GetNamespaceMap().Add( GetXMLToken(XML_NP_SVG), GetXMLToken(XML_N_SVG_COMPAT), XML_NAMESPACE_SVG );
GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_SVG), GetXMLToken(XML_N_SVG), XML_NAMESPACE_SVG ); GetReplaceNamespaceMap().Add( GetXMLToken(XML_NP_SVG), GetXMLToken(XML_N_SVG), XML_NAMESPACE_SVG );
for(XMLTransformerActions* & rp : m_aActions) for(auto & rp : m_aActions)
rp = nullptr; rp.reset();
} }
Oasis2OOoTransformer::~Oasis2OOoTransformer() throw() Oasis2OOoTransformer::~Oasis2OOoTransformer() throw()
{ {
for(XMLTransformerActions* p : m_aActions) for(auto & rp : m_aActions)
delete p; rp.reset();
XMLEventOASISTransformerContext::FlushEventMap( m_pEventMap ); XMLEventOASISTransformerContext::FlushEventMap( m_pEventMap );
XMLEventOASISTransformerContext::FlushEventMap( m_pFormEventMap ); XMLEventOASISTransformerContext::FlushEventMap( m_pFormEventMap );
} }
......
...@@ -27,7 +27,7 @@ class XMLTransformerOASISEventMap_Impl; ...@@ -27,7 +27,7 @@ class XMLTransformerOASISEventMap_Impl;
class Oasis2OOoTransformer : public XMLTransformerBase class Oasis2OOoTransformer : public XMLTransformerBase
{ {
XMLTransformerActions *m_aActions[MAX_OASIS_ACTIONS]; std::unique_ptr<XMLTransformerActions> m_aActions[MAX_OASIS_ACTIONS];
XMLTransformerOASISEventMap_Impl *m_pEventMap; XMLTransformerOASISEventMap_Impl *m_pEventMap;
XMLTransformerOASISEventMap_Impl *m_pFormEventMap; XMLTransformerOASISEventMap_Impl *m_pFormEventMap;
......
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