>ok...Everytime we use Medit it crashes :) >It crashes after we answer YES to saving the object internally... >Now, no one (to my knowledge) has messed with the olc code...so I >figured it was a mob file..(a bad one)..so I took all the ***.mob out of >the index except 0.mob, assuming I could narrow down the bad mob file. >It crashed. So I removed 0.mob and put in 30.mob, still crashed. >Anyone know why? Does index.mini have to be in correlation with it, in >some way that I am not familiar with? >Any other reason why this could be happening, the only olc code to be >eddited was olc.h, and all that was changes was a >#define NUM_ITEM_EXTRA_FLAGS (or something like that) >from 17 to 22.... >Anyone wanna help clear this up? Hmm... the problem comes from a bad free in medit.c L237 : /*. Replace tables .*/ free(mob_index); -> free(mob_proto); /* this one... */ mob_index = new_index; mob_proto = new_proto; top_of_mobt++; it seems to free the wrong pointer as gdb says: Program received signal SIGBUS, Bus error. 0x73cb4 in free_unlocked () when it crashes and the backtrace is: #0 0x73cb4 in free_unlocked () #1 0x73ae0 in free () #2 0x6ed44 in medit_save_internally (d=0x299660) at medit.c:238 #3 0x6faf0 in medit_parse (d=0x299660, arg=0xeffff428 "y") at medit.c:563 #4 0x5168c in nanny (d=0x299660, arg=0xeffff428 "y") at interpreter.c:1370 #5 0x1cad8 in game_loop (mother_desc=7) at comm.c:609 #6 0x1c174 in init_game (port=4000) at comm.c:243 #7 0x1c0f8 in main (argc=1, argv=0xeffffaac) at comm.c:213 ... I don't have much time right now so I just removed the free (*grin*)... waiting for a better solution...
This archive was generated by hypermail 2b30 : 12/18/00 PST