| 
		Notes	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Oh, that was just a first breakpoint hit, and 2035 is greater than 2028. It fails a bit further on 0 > 5 actually: 
 
... 
        Looking into Death's Gate 
        Player 1 will build Upg. Cursed Temple in town of Death's Gate at 36 59 0 
        Looking into Isra, MP=1500 
                Isra will try to visit Subterranean Gate at (34 67 1) 
[Switching to Thread 0xee354450 (LWP 16375)] 
 
Breakpoint 1, CSerializer::getVectorItemFromId<CGObjectInstance> (this=0xea0818d4, oInfo=..., id=2028) at ../lib/Connection.h:302 
302                     assert(oInfo.vector->size() > id); 
(gdb) printf "%d > %d\n", oInfo.vector->size(), id 
2035 > 2028 
(gdb) c 
Continuing. 
 
Breakpoint 1, CSerializer::getVectorItemFromId<CGObjectInstance> (this=0xea0818d4, oInfo=..., id=1460) at ../lib/Connection.h:302 
302                     assert(oInfo.vector->size() > id); 
(gdb) printf "%d > %d\n", oInfo.vector->size(), id 
2035 > 1460 
(gdb) c 
Continuing. 
                Found a pair of subterranean gates between 34 67 1 and 34 67 0! 
 
... 
Continuing. 
                Hero Isra moved from 34 67 0 to 38 65 0 
                Isra will try to visit Subterranean Gate at (34 67 0) 
                Hero Isra moved from 38 65 0 to 35 68 0 
                Hero Isra apparently used all MPs (0 left) 
 
        Looking into Xsi, MP=1500 
                Xsi will try to visit Seer's Hut at (31 64 0) 
 
Breakpoint 1, CSerializer::getVectorItemFromId<CGObjectInstance> (this=0xea0818d4, oInfo=..., id=2031) at ../lib/Connection.h:302 
302                     assert(oInfo.vector->size() > id); 
(gdb) printf "%d > %d\n", oInfo.vector->size(), id 
2035 > 2031 
(gdb) c 
Continuing. 
 
Breakpoint 1, CSerializer::getVectorItemFromId<CGObjectInstance> (this=0xea0818d4, oInfo=..., id=1228) at ../lib/Connection.h:302 
302                     assert(oInfo.vector->size() > id); 
(gdb) printf "%d > %d\n", oInfo.vector->size(), id 
2035 > 1228 
(gdb) c 
Continuing. 
 
Breakpoint 1, CSerializer::getVectorItemFromId<CQuest> (this=0xea0818d4, oInfo=..., id=5) at Connection.h:302 
302                     assert(oInfo.vector->size() > id); 
(gdb) printf "%d > %d\n", oInfo.vector->size(), id 
0 > 5 
(gdb) c 
Continuing. 
vcmiclient: Connection.h:302: T* CSerializer::getVectorItemFromId(const VectorisedObjectInfo<T>&, ui32) const [with T = CQuest, ui32 = unsigned int]: Assertion `oInfo.vector->size() > id' failed. 
 
Program received signal SIGABRT, Aborted. 
0x0dda29ac in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 
64      ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			| 
				Does this error occur after first map launch, or only reload?			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				> Does this error occur after first map launch, or only reload?  
 
It is 6th turn, 1st week. Previous 5 turns have been finished w/o errors. Map itself is okay ;)			 | 
		 
		 
	 | 
	
		 
	 | 
	
		
		
			| 
				(0002900)
			 | 
		 
		
			| 
				douggie_m   
			 | 
		 
		
			
				2012-08-11 16:50   
				 (edited on: 2012-08-11 16:56)			 | 
		 
		 
	 | 
	
		
		
			
				Backtrace: 
 
Breakpoint 1, CSerializer::getVectorItemFromId<CQuest> (this=0x11e84d94, oInfo=..., id=5) at Connection.h:302 
302                     assert(oInfo.vector->size() > id); 
(gdb) printf "%d > %d\n", oInfo.vector->size(), id 
0 > 5 
(gdb) bt 
#0  CSerializer::getVectorItemFromId<CQuest> (this=0x11e84d94, oInfo=..., id=5) at Connection.h:302 
#1  0x0fa6eb48 in CISer<CConnection>::loadPointer<CQuest const*> (this=0x11e84cf0, data=@0x13cf2c80: 0x200020) at Connection.h:820 
0000002  0x0fa536c4 in LoadPointer<CConnection, CQuest const*>::invoke (s=..., data=@0x13cf2c80: 0x200020) at Connection.h:156 
0000003  0x0fa4865c in CISer<CConnection>::load<CQuest const*> (this=0x11e84cf0, data=@0x13cf2c80: 0x200020) at Connection.h:758 
0000004  0x0fa3c2c0 in CISer<CConnection>::operator>><CQuest const*> (this=0x11e84cf0, t=@0x13cf2c80: 0x200020) at Connection.h:725 
0000005  0x0fa2e400 in CISer<CConnection>::operator&<CQuest const*> (this=0x11e84cf0, t=@0x13cf2c80: 0x200020) at Connection.h:732 
0000006  0x0fa1bea8 in QuestInfo::serialize<CISer<CConnection> > (this=0x13cf2c80, h=..., version=0) at CGameState.h:490 
0000007  0x0fa82528 in CISer<CConnection>::loadSerializableBySerializeCall<QuestInfo> (this=0x11e84cf0, data=...) at Connection.h:783 
0000008  0x0fa6c354 in CISer<CConnection>::loadSerializable<QuestInfo> (this=0x11e84cf0, data=...) at Connection.h:790 
0000009  0x0fa52978 in LoadSerializable<CConnection, QuestInfo>::invoke (s=..., data=...) at Connection.h:180 
0000010 0x0fa477e8 in CISer<CConnection>::load<QuestInfo> (this=0x11e84cf0, data=...) at Connection.h:758 
0000011 0x0fa3b1fc in CISer<CConnection>::operator>><QuestInfo> (this=0x11e84cf0, t=...) at Connection.h:725 
0000012 0x0fa2d464 in CISer<CConnection>::operator&<QuestInfo> (this=0x11e84cf0, t=...) at Connection.h:732 
0000013 0x0fa16a3c in AddQuest::serialize<CISer<CConnection> > (this=0x13cf2c78, h=..., version=732) at NetPacks.h:563 
0000014 0x0f9eb66c in CPointerLoader<CISer<CConnection>, AddQuest>::loadPtr (this=0x11dc4e68, ar=..., data=0xee353bec, pid=4294967295) at Connection.h:679 
0000015 0x0fc30cc4 in CISer<CConnection>::loadPointerHlp<CPack*> (this=0x11e84cf0, tid=141, data=@0xee353bec: 0x13cf2c78, pid=4294967295) at Connection.h:867 
0000016 0x0fc2dcbc in CISer<CConnection>::loadPointer<CPack*> (this=0x11e84cf0, data=@0xee353bec: 0x13cf2c78) at Connection.h:850 
0000017 0x0fc2aa30 in LoadPointer<CConnection, CPack*>::invoke (s=..., data=@0xee353bec: 0x13cf2c78) at Connection.h:156 
0000018 0x0fc26c58 in CISer<CConnection>::load<CPack*> (this=0x11e84cf0, data=@0xee353bec: 0x13cf2c78) at Connection.h:758 
0000019 0x0fc2247c in CISer<CConnection>::operator>><CPack*> (this=0x11e84cf0, t=@0xee353bec: 0x13cf2c78) at Connection.h:725 
0000020 0x0fc0fff8 in CConnection::retreivePack (this=0x11e84cf0) at Connection.cpp:241 
0000021 0x10366f34 in CClient::run (this=0x11e809e0) at Client.cpp:142 
0000022 0x1045bdac in boost::_mfi::mf0<void, CClient>::operator() (this=0x11dd00e4, p=0x11e809e0) at /usr/include/boost/bind/mem_fn_template.hpp:49 
... 
 
> Xsi will try to visit Seer's Hut at (31 64 0) 
> AddQuest::serialize<CISer<CConnection> > (this=0x13cf2c78, h=..., version=732) at NetPacks.h:563 
 
So it's obviously bound to: seer's hut quests and serialization ("new file system"). 
 
			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			| 
				I think I found it, fixed in r2829.			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Looks like not: 
 
Arlach will try to visit Seer's Hut at (31 64 0) 
vcmiclient: Connection.h:302: T* CSerializer::getVectorItemFromId(const VectorisedObjectInfo<T>&, ui32) const [with T = CQuest, ui32 = unsigned int]: Assertion `oInfo.vector->size() > id' failed. 
Aborted 
 
I got that playing rev2829. With new game (save I uploaded was incompatible). Got it on 6th day again.			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Also, I'm randomly getting "double free or corruption ": 
 
 
*** glibc detected *** vcmiclient: double free or corruption (!prev): 0xed000018 *** 
======= Backtrace: ========= 
/lib/powerpc-linux-gnu/libc.so.6(+0x85504)[0xddf0504] 
/lib/powerpc-linux-gnu/libc.so.6(cfree+0x8c)[0xddf5adc] 
/usr/lib/powerpc-linux-gnu/libSDL-1.2.so.0(SDL_FreeSurface+0x148)[0xe1d24b4] 
vcmiclient[0x1055daac] 
vcmiclient[0x105b0c78] 
vcmiclient[0x105b0d04] 
vcmiclient[0x1020eee8] 
vcmiclient[0x10231310] 
vcmiclient[0x105b0afc] 
vcmiclient[0x1061f778] 
vcmiclient[0x10617c84] 
vcmiclient[0x1060ea38] 
vcmiclient[0x10607964] 
vcmiclient(_ZNK5boost9function0IvEclEv+0x74)[0x10233550] 
vcmiclient[0x102339a4] 
vcmiclient[0x10221af0] 
vcmiclient[0x10210364] 
vcmiclient[0x1020f59c] 
vcmiclient[0x1048e398] 
...			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Lol, I just spot major bug. It's ridiculous that Seer Huts have been ever working for all this time :D 
 
Check r2830.			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Well. 
 
That's great that Seer's Huts work now. I.e. it was nothing before when you visit, now they are fully functional. 
 
But... 
 
        Looking into Saurug, MP=1630 
                Saurug will try to visit Seer's Hut at (31 64 0) 
vcmiclient: Connection.h:302: T* CSerializer::getVectorItemFromId(const VectorisedObjectInfo<T>&, ui32) const [with T = CQuest, ui32 = unsigned int]: Assertion `oInfo.vector->size() > id' failed. 
Aborted 
 
Now on 5th day ;) 
 
Also, minor thing. Faerie Ring screen displays Mage Guild level 2.			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				From VCMI_Client_log.txt: 
 
... 
Listening... 		Saurug will try to visit Seer's Hut at (31 64 0) 
Sending a request "8MoveHero". It'll have an ID=113. 
Sending to server a pack of type 8MoveHero 
We'll wait till request 113 is answered. 
    received server message of type 11TryMoveHero 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... 	received server message of type 14PackageApplied 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... Sending a request "8MoveHero". It'll have an ID=114. 
Sending to server a pack of type 8MoveHero 
We'll wait till request 114 is answered. 
    received server message of type 11TryMoveHero 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... 	received server message of type 14PackageApplied 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... Sending a request "8MoveHero". It'll have an ID=115. 
Sending to server a pack of type 8MoveHero 
We'll wait till request 115 is answered. 
    received server message of type 11TryMoveHero 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... 	received server message of type 14PackageApplied 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... Sending a request "8MoveHero". It'll have an ID=116. 
Sending to server a pack of type 8MoveHero 
We'll wait till request 116 is answered. 
    received server message of type 11TryMoveHero 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... 	received server message of type 9HeroVisit 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... 	received server message of type 17SetObjectProperty 
    Made first apply on cl 
    Applied on gs 
    Made second apply on cl 
Listening... [EOF here] 
 
From server_log.txt: 
 
... 
Creating a query for player 1 with ID=31 
Creating a query for player 1 with ID=32 
const PlayerState* CGameInfoCallback::getPlayer(int, bool) const: Cannot find player 3info! 
const PlayerState* CGameInfoCallback::getPlayer(int, bool) const: Cannot find player 4info! 
const PlayerState* CGameInfoCallback::getPlayer(int, bool) const: Cannot find player 5info! 
const PlayerState* CGameInfoCallback::getPlayer(int, bool) const: Cannot find player 6info! 
const PlayerState* CGameInfoCallback::getPlayer(int, bool) const: Cannot find player 7info! 
read: Connection reset by peer 
Ended handling connection 
Warning: an orphaned child! 
Warning: an orphaned child! 
Warning: an orphaned child! 
Warning: an orphaned child! 
Warning: an orphaned child! 
Warning: an orphaned child! 
Warning: an orphaned child! 
write: Broken pipe			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Another SIGABRT on another failed assertion: 
 
CStupidAI [0xe4b6b7c8]: actionFinished called 
CStupidAI [0xe72967b0]: actionFinished called 
    Player 2: I lost the Starting battle of Gundula attacking Mithril at 15 111 0! 
CStupidAI [0xe4b6b7c8]: battleEnd called 
CStupidAI [0xe4b6b7c8]: destroyed 
CStupidAI [0xe72967b0]: battleEnd called 
Warning: an orphaned child! 
    I lost my hero Gundula. It's best to forget and move on. 
 
Cannot get object with id 2289. Object was removed. 
vcmiclient: VCAI.cpp:3648: const CGHeroInstance* HeroPtr::get(bool) const: Assertion `cb->getObj(h->id)' failed. 
Aborted 
 
Looks like AI hero has been lost in battle, and VCMI crashed due to that.			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
		
			
				Could you please report ONE error at a time? Especially not report same bug twice. 
 
Set category to AI, as only it seems to be able to trigger that bug.			 | 
		 
		 
	 | 
	
		 
	 | 
	
		
		
			| 
				(0002933)
			 | 
		 
		
			| 
				Warmonger   
			 | 
		 
		
			
				2012-08-27 08:03   
				 (edited on: 2012-08-27 08:07)			 | 
		 
		 
	 | 
	
		
		
			
				Confirmed. The issue is that Quests are not properly serialized on map. However, it's not simple to fix it. 
 
			 | 
		 
		 
	 | 
	
		 
	 | 
	| 
		
	 | 
	
		
	 |