|
@@ -35,11 +35,13 @@ CMapInfo::CMapInfo() : scenarioOpts(nullptr), playerAmnt(0), humanPlayers(0),
|
|
|
|
|
|
#define STEAL(x) x = std::move(tmp.x)
|
|
|
|
|
|
-CMapInfo::CMapInfo(CMapInfo && tmp)
|
|
|
+CMapInfo::CMapInfo(CMapInfo && tmp):
|
|
|
+ scenarioOpts(nullptr), playerAmnt(0), humanPlayers(0),
|
|
|
+ actualHumanPlayers(0), isRandomMap(false)
|
|
|
{
|
|
|
+ std::swap(scenarioOpts, tmp.scenarioOpts);
|
|
|
STEAL(mapHeader);
|
|
|
STEAL(campaignHeader);
|
|
|
- STEAL(scenarioOpts);
|
|
|
STEAL(fileURI);
|
|
|
STEAL(date);
|
|
|
STEAL(playerAmnt);
|
|
@@ -48,6 +50,10 @@ CMapInfo::CMapInfo(CMapInfo && tmp)
|
|
|
STEAL(isRandomMap);
|
|
|
}
|
|
|
|
|
|
+CMapInfo::~CMapInfo()
|
|
|
+{
|
|
|
+ vstd::clear_pointer(scenarioOpts);
|
|
|
+}
|
|
|
|
|
|
void CMapInfo::mapInit(const std::string & fname)
|
|
|
{
|