MantisBT - VCMI | |||||
View Issue Details | |||||
ID | Project | Category | View Status | Date Submitted | Last Update |
0003032 | VCMI | GUI - Battles | public | 2019-02-08 10:48 | 2019-06-09 20:23 |
Reporter | mpech | ||||
Assigned To | AVS | ||||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | no change required | ||
Platform | Ubuntu 16.04.5 LTS | OS | OS Version | ||
Product Version | |||||
Target Version | Fixed in Version | 1.next | |||
Summary | 0003032: crash in CShootingAnimation (arrow_towers) | ||||
Description | hi guys, encoutered some crash and tried to investigate it code version make: f06c8a872592bddfbe3fd5116979af0679f27bd3 stack trace 0000002 0x00007f7029fcdbd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0xc98a3a "maxFrame > 0", file=file@entry=0xc98820 "/home/mpech2/dl/vcmi/client/battle/CBattleAnimations.cpp", line=line@entry=851, function=function@entry=0xc996a0 <CShootingAnimation::init()::__PRETTY_FUNCTION__> "virtual bool CShootingAnimation::init()") at assert.c:92 0000003 0x00007f7029fcdc82 in __GI___assert_fail (assertion=0xc98a3a "maxFrame > 0", file=0xc98820 "/home/mpech2/dl/vcmi/client/battle/CBattleAnimations.cpp", line=851, function=0xc996a0 <CShootingAnimation::init()::__PRETTY_FUNCTION__> "virtual bool CShootingAnimation::init()") at assert.c:101 0000004 0x000000000067a371 in CShootingAnimation::init (this=0x7f6fe041b680) at /home/mpech2/dl/vcmi/client/battle/CBattleAnimations.cpp:851 0000005 0x00000000006cf6f6 in CBattleInterface::updateBattleAnimations (this=0x7f6fe06829e0) at /home/mpech2/dl/vcmi/client/battle/CBattleInterface.cpp:3599 0000006 0x00000000006caf07 in CBattleInterface::show (this=0x7f6fe06829e0, to=0x37a7a70) at /home/mpech2/dl/vcmi/client/battle/CBattleInterface.cpp:3042 some additional logs (client/battle/CBattleAnimations.cpp) if (owner->idToProjectile.count(spi.creID) == 0){ //in some cases (known one: hero grants shooter bonus to unit) the shooter stack's projectile may not be properly initialized std::cout<<"faaaail"<<std::endl; owner->initStackProjectile(shooter); }else{ std::cout<<"oook"<<owner->idToProjectile.count(spi.creID)<<std::endl; } // only frames below maxFrame are usable: anything higher is either no present or we don't know when it should be used size_t maxFrame = std::min<size_t>(angles.size(), owner->idToProjectile.at(spi.creID)->size(0)); std::cout<<"shooter info :: "<<shooterInfo->idNumber<<std::endl; std::cout<<"creid : "<<spi.creID<<std::endl; std::cout<<"maxFrame??"<<angles.size()<<std::endl; std::cout<<"maxFrame proj??"<<owner->idToProjectile.at(spi.creID)->size(0)<<std::endl; assert(maxFrame > 0); console output oook1 shooter info :: 166 creid : 149 maxFrame??0 maxFrame proj??0 --- both angles.size and idToProjectile.at.. return 0, then assert throws. If I am not mistaken, creid 149 is ARROW_TOWERS (I am actually attacking a defended castle by hero) I don't understand why ->size(0) would return 0 since animation for arrow_towers seem to be quite usual.. As for the defending hero it is in a castle modded (death valley) but that should still be independant from arrow_towers? How should the investigation should be continued? | ||||
Steps To Reproduce | load attached save named "E" as red, main hero, attack castle instantly crash | ||||
Additional Information | Note that (as attacker) am also expert ballistics | ||||
Tags | No tags attached. | ||||
Relationships | |||||
Attached Files | e.vcgm1 (6,091,270) 2019-02-08 10:48 https://bugs.vcmi.eu/file_download.php?file_id=2979&type=bug e.vsgm1 (6,079,700) 2019-02-09 07:18 https://bugs.vcmi.eu/file_download.php?file_id=2980&type=bug | ||||
Issue History | |||||
Date Modified | Username | Field | Change | ||
2019-02-08 10:48 | mpech | New Issue | |||
2019-02-08 10:48 | mpech | File Added: e.vcgm1 | |||
2019-02-08 11:42 | AVS | Note Added: 0007744 | |||
2019-02-08 11:55 | AVS | Note Added: 0007745 | |||
2019-02-08 11:55 | AVS | Assigned To | => AVS | ||
2019-02-08 11:55 | AVS | Status | new => feedback | ||
2019-02-09 07:18 | mpech | File Added: e.vsgm1 | |||
2019-02-09 13:12 | mpech | Note Added: 0007746 | |||
2019-02-09 13:12 | mpech | Status | feedback => assigned | ||
2019-02-09 13:19 | AVS | Note Added: 0007747 | |||
2019-06-09 20:23 | AVS | Status | assigned => resolved | ||
2019-06-09 20:23 | AVS | Fixed in Version | => 1.next | ||
2019-06-09 20:23 | AVS | Resolution | open => no change required |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|