From 25a7d79d1ee7e1fef68e562160aafaeac3797d70 Mon Sep 17 00:00:00 2001 From: trompetin17 Date: Sun, 14 Jun 2015 22:17:39 +0000 Subject: [PATCH] FIXE ERROR: CCmpPosition::GetPosition called on entity when IsInWorld is false, when you save a map with garrisoned units, thx to daniel for report This was SVN commit r16769. --- source/graphics/MapWriter.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/source/graphics/MapWriter.cpp b/source/graphics/MapWriter.cpp index 9d59ac07eb..60cac577c8 100644 --- a/source/graphics/MapWriter.cpp +++ b/source/graphics/MapWriter.cpp @@ -347,7 +347,10 @@ void CMapWriter::WriteXML(const VfsPath& filename, CmpPtr cmpPosition(sim, ent); if (cmpPosition) { - CFixedVector3D pos = cmpPosition->GetPosition(); + CFixedVector3D pos; + if (cmpPosition->IsInWorld()) + pos = cmpPosition->GetPosition(); + CFixedVector3D rot = cmpPosition->GetRotation(); { XML_Element("Position");