diff --git a/source/blender/alembic/intern/abc_exporter.cc b/source/blender/alembic/intern/abc_exporter.cc index 64e6e2ef79a..592678f5db8 100644 --- a/source/blender/alembic/intern/abc_exporter.cc +++ b/source/blender/alembic/intern/abc_exporter.cc @@ -154,13 +154,16 @@ AbcExporter::AbcExporter(Scene *scene, const char *filename, ExportSettings &set AbcExporter::~AbcExporter() { - std::map::iterator it, e; - for (it = m_xforms.begin(), e = m_xforms.end(); it != e; ++it) { - delete it->second; + /* Free xforms map */ + m_xforms_type::iterator it_x, e_x; + for (it_x = m_xforms.begin(), e_x = m_xforms.end(); it_x != e_x; ++it_x) { + delete it_x->second; } - for (int i = 0, e = m_shapes.size(); i != e; ++i) { - delete m_shapes[i]; + /* Free shapes vector */ + m_shapes_type::iterator it_s, e_s; + for (it_s = m_shapes.begin(), e_s = m_shapes.end(); it_s != e_s; ++it_s) { + delete *it_s; } delete m_writer; @@ -314,8 +317,9 @@ void AbcExporter::operator()(Main *bmain, float &progress, bool &was_canceled) setCurrentFrame(bmain, frame - m_settings.frame_start); if (shape_frames.count(frame) != 0) { - for (int i = 0, e = m_shapes.size(); i != e; ++i) { - m_shapes[i]->write(); + m_shapes_type::iterator xit, xe; + for (xit = m_shapes.begin(), xe = m_shapes.end(); xit != xe; ++xit) { + (*xit)->write(); } } @@ -323,7 +327,7 @@ void AbcExporter::operator()(Main *bmain, float &progress, bool &was_canceled) continue; } - std::map::iterator xit, xe; + m_xforms_type::iterator xit, xe; for (xit = m_xforms.begin(), xe = m_xforms.end(); xit != xe; ++xit) { xit->second->write(); } diff --git a/source/blender/alembic/intern/abc_exporter.h b/source/blender/alembic/intern/abc_exporter.h index 485d75ef7fe..f87347758b9 100644 --- a/source/blender/alembic/intern/abc_exporter.h +++ b/source/blender/alembic/intern/abc_exporter.h @@ -89,8 +89,12 @@ class AbcExporter { ArchiveWriter *m_writer; - std::map m_xforms; - std::vector m_shapes; + /* mapping from name to transform writer */ + typedef std::map m_xforms_type; + m_xforms_type m_xforms; + + typedef std::vector m_shapes_type; + m_shapes_type m_shapes; public: AbcExporter(Scene *scene, const char *filename, ExportSettings &settings);