1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-17 01:32:21 +02:00

Merge pull request #4982 from kdmcser/fix_dismiss_crash

crash fix: dismiss hero when pick artifact
This commit is contained in:
Ivan Savenko
2024-11-27 16:41:44 +02:00
committed by GitHub
3 changed files with 5 additions and 1 deletions

View File

@ -140,6 +140,8 @@ void CArtifactsOfHeroBase::gestureArtPlace(CComponentHolder & artPlace, const Po
void CArtifactsOfHeroBase::setHero(const CGHeroInstance * hero) void CArtifactsOfHeroBase::setHero(const CGHeroInstance * hero)
{ {
curHero = hero; curHero = hero;
if (!hero)
return;
for(auto slot : artWorn) for(auto slot : artWorn)
{ {

View File

@ -28,6 +28,7 @@ CArtifactsOfHeroMain::CArtifactsOfHeroMain(const Point & position)
CArtifactsOfHeroMain::~CArtifactsOfHeroMain() CArtifactsOfHeroMain::~CArtifactsOfHeroMain()
{ {
if(curHero)
CArtifactsOfHeroBase::putBackPickedArtifact(); CArtifactsOfHeroBase::putBackPickedArtifact();
} }

View File

@ -312,6 +312,7 @@ void CHeroWindow::dismissCurrent()
arts->putBackPickedArtifact(); arts->putBackPickedArtifact();
close(); close();
LOCPLINT->cb->dismissHero(curHero); LOCPLINT->cb->dismissHero(curHero);
arts->setHero(nullptr);
}, nullptr); }, nullptr);
} }