inside function "status_change_timer", the sd = 0x0 , this cause ur map server crash. just add a code to check if sd is NULL, then return 0;
i don't have ur status.c file, so i can just roughly guide,
in function "status_change_timer", find a line "sd = BL_CAST(BL_PC, bl);"
then add the following code after it:
if(sd == NULL)
return 0;
edit: remember recompile it