Since I have GDB I have the luxury of seeing what
happens when my server crashes, virtually 80% of the
time I get a crashes from map.c:
Most of the time it comes from:
#0 0x0804a7d5 in map_foreachinarea (func=0x808c3a8
<mob_target+604>, m=31, x0=0, y0=180, x1=69,
y1=260, type=1) at map.c:360
360 if(type && bl->type!=type)
That map_foreachinmovearea is super buggy, because
yet here is another crash from it:
#0 0x0804b100 in map_foreachinmovearea
(func=0x805c138 <clif_getareachar+260>, m=211,
x0=166, y0=250, x1=206, y1=290, dx=1, dy=1, type=0)
at map.c:465
465 if(!(bl->x>=x0 && bl->x<=x1 && bl->y>=y0 && bl-
>y<=y1))
Oh hey look another crash within the same area:
#0 0x0804ad20 in map_foreachinmovearea
(func=0x805c16c <clif_pcoutsight>, m=70, x0=124,
y0=111, x1=164, y1=111, dx=0, dy=1, type=0) at
map.c:438
438 if(bl->x>=x0 && bl->x<=x1 && bl->y>=y0 && bl-
>y<=y1 && bl_list_count<BL_LIST_MAX)
If you want more specifics on what other commands
happened before the crash be sure to contact me or ask
here, but I am pretty sure if it keeps crashing in there,
it is definately a big problem with that function.
Logged In: YES
user_id=1100300
I think, that i fixed the first part of this, working on the
second part now =)