pets.c, line 118 and onward:
if (QUERY_FLAG(tmp2,FLAG_ALIVE) && (
!QUERY_FLAG(tmp2, FLAG_FRIENDLY) || (
(owner != tmp2->owner) &&
op_on_battleground(pet, NULL, NULL) &&
op_on_battleground(owner, NULL, NULL) &&
op_on_battleground(tmp2, NULL, NULL) &&
(owner->contr->petmode == pet_arena) && !(
(tmp2->owner->contr->party_number ==
owner->contr->party_number) &&
(owner->contr->party_number > 0))))
&& !QUERY_FLAG(tmp2,FLAG_UNAGGRESSIVE) &&
tmp2 != pet && tmp2 != owner && (
(tmp2->type != PLAYER) || (
op_on_battleground(pet, NULL, NULL) &&
op_on_battleground(owner, NULL, NULL) &&
op_on_battleground(tmp2, NULL, NULL) &&
(owner->contr->petmode == pet_arena) && !(
(tmp2->contr->party_number ==
owner->contr->party_number) &&
(owner->contr->party_number > 0)))) &&
can_detect_enemy(pet, tmp2, rv)) {
Thanks,
Alex Schultz
------------------------------------------------------------------------
Core was generated by `/home/crossfire/bin/crossfire -d'.
Program terminated with signal 6, Aborted.
#0 0x400e6921 in kill () from /lib/libc.so.6
(gdb) Executing command "bt full":
#0 0x400e6921 in kill () from /lib/libc.so.6
No symbol table info available.
#1 0x400e6720 in raise () from /lib/libc.so.6
No symbol table info available.
#2 0x400e7808 in abort () from /lib/libc.so.6
No symbol table info available.
#3 0x08086144 in fatal_signal (make_core=1, close_sockets=1) at init.c:957
No locals.
#4 0x08085fe0 in rec_sigsegv (i=11) at init.c:898
No locals.
#5 <signal handler called>
No symbol table info available.
#6 0x08091479 in get_pet_enemy (pet=0xaa18980, rv=0xbffff4b0) at pets.c:118
tmp2 = (struct obj *) 0x8
owner = (struct obj *) 0x8117f69
tmp = (struct obj *) 0xbffff538
attacker = (struct obj *) 0xbffff4b0
tmp3 = (struct obj *) 0xaa18980
i = 134790287
x = -16385
y = -3096
nm = (struct mapdef *) 0x401d3458
search_arr = {5, 15, 23, 21, 14, 9, 20, 22, 11, 17, 13, 19, 10, 12,
16, 18, 24, 26, 40, 31, 37, 44, 35, 41, 36, 34, 43, 32, 39, 48, 28, 47, 42,
38, 25, 46, 45, 29, 27, 30, 33, 1075655768, 1075655768, 135358108, 24,
139796480, 1114131, 0, 0}
#7 0x0808bc8f in find_enemy (npc=0xaa18980, rv=0xbffff4b0) at monster.c:211
attacker = (struct obj *) 0x0
tmp = (struct obj *) 0x0
#8 0x0808c0ab in move_monster (op=0xaa18980) at monster.c:326
dir = 0
diff = 0
owner = (struct obj *) 0x0
enemy = (struct obj *) 0x8c16890
part = (struct obj *) 0x80b82bf
oph = (struct obj *) 0xaa18980
rv = {distance = 0, distance_x = 0, distance_y = 0, direction = 0,
part = 0x0}
#9 0x080bc532 in process_object (op=0xaa18980) at time.c:1312
evt = (struct _event *) 0x0
#10 0x0808af52 in process_events (map=0x0) at main.c:1002
op = (struct obj *) 0xaa18980
marker = {contr = 0x0, next = 0x0, prev = 0x0,
active_next = 0xaa1ddf4, active_prev = 0xaa18980, below = 0x0, above = 0x0,
inv = 0x0, container = 0x0, env = 0x0, more = 0x0, head = 0x0, map = 0x0,
count = 0, refcount = 0, name = 0x0, name_pl = 0x0, title = 0x0, race = 0x0,
slaying = 0x0, skill = 0x0, msg = 0x0, lore = 0x0, x = 0, y = 0, ox = 0,
oy = 0, speed = 0, speed_left = 0, nrof = 0, face = 0x0, direction = 0 '\0',
facing = 0 '\0', type = 0 '\0', subtype = 0 '\0', client_type = 0, resist = {
0 <repeats 26 times>}, attacktype = 0, path_attuned = 0,
path_repelled = 0, path_denied = 0, material = 0, materialname = 0x0,
magic = 0 '\0', state = 0 '\0', value = 0, level = 0, last_heal = 0,
last_sp = 0, last_grace = 0, last_eat = 0, invisible = 0, pick_up = 0 '\0',
item_power = 0 '\0', gen_sp_armour = 0 '\0', weight = 0, weight_limit = 0,
carrying = 0, glow_radius = 0 '\0', stats = {Str = 0 '\0', Dex = 0 '\0',
Con = 0 '\0', Wis = 0 '\0', Cha = 0 '\0', Int = 0 '\0', Pow = 0 '\0',
wc = 0 '\0', ac = 0 '\0', hp = 0, maxhp = 0, sp = 0, maxsp = 0, grace = 0,
maxgrace = 0, exp = 0, food = 0, dam = 0, luck = 0 '\0'}, perm_exp = 0,
current_weapon_script = 0x0, current_weapon = 0x0, weapontype = 0,
tooltype = 0, body_info = '\0' <repeats 11 times>,
body_used = '\0' <repeats 11 times>, owner = 0x0, ownercount = 0,
enemy = 0x0, attacked_by = 0x0, attacked_by_count = 0, randomitems = 0x0,
run_away = 0, chosen_skill = 0x0, hide = 0, move_status = 0, move_type = 0,
will_apply = 0 '\0', spellitem = 0x0, expmul = 0, duration = 0,
duration_modifier = 0 '\0', casting_time = 0, spell = 0x0,
start_holding = 0, spellarg = 0x0, dam_modifier = 0 '\0', range = 0 '\0',
range_modifier = 0 '\0', arch = 0x0, other_arch = 0x0, flags = {0, 0, 0, 0},
animation_id = 0, anim_speed = 0 '\0', last_anim = 0 '\0', elevation = 0,
smoothlevel = 0 '\0', events = 0x0, custom_name = 0x0}
tag = 3461004
#11 0x0808b61d in main (argc=2, argv=0xbffff8d4) at main.c:1232
evtid = 14
CFP = {Type = {-1073743744, 1073808556, 1045, 1073809048, -1073743808,
1073777557, 1073809460, 1074133536, 1, 0, 1074961282, 1075655768,
1075655756, -1073743836, 1074615257}, Value = {0xbffff86c, 0xbffff8e0,
0x81506f8, 0xe9, 0x401b306b, 0x401d3458, 0x40010020, 0xbffff858,
0x401b346c, 0x81505b4, 0x81508ec, 0x0, 0x0, 0x8059008, 0x401d3458}}
#12 0x400d553d in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
(gdb) Executing command "up" (20 times):
#1 0x400e6720 in raise () from /lib/libc.so.6
#2 0x400e7808 in abort () from /lib/libc.so.6
#3 0x08086144 in fatal_signal (make_core=1, close_sockets=1) at init.c:957
957 abort();
#4 0x08085fe0 in rec_sigsegv (i=11) at init.c:898
898 fatal_signal(1, 1);
#5 <signal handler called>
#6 0x08091479 in get_pet_enemy (pet=0xaa18980, rv=0xbffff4b0) at pets.c:118
118 if (QUERY_FLAG(tmp2,FLAG_ALIVE) && (
#7 0x0808bc8f in find_enemy (npc=0xaa18980, rv=0xbffff4b0) at monster.c:211
211 tmp= get_pet_enemy(npc,rv);
#8 0x0808c0ab in move_monster (op=0xaa18980) at monster.c:326
326 else if((enemy= find_enemy(op, &rv)))
#9 0x080bc532 in process_object (op=0xaa18980) at time.c:1312
1312 if(move_monster(op) || QUERY_FLAG(op, FLAG_FREED))
#10 0x0808af52 in process_events (map=0x0) at main.c:1002
1002 process_object (op);
#11 0x0808b61d in main (argc=2, argv=0xbffff8d4) at main.c:1232
1232 process_events(NULL); /* "do" something with objects with speed */
#12 0x400d553d in __libc_start_main () from /lib/libc.so.6
------------------------------------------------------------------------
Core was generated by `/home/crossfire/bin/crossfire -d'.
Program terminated with signal 6, Aborted.
#0 0x400e6921 in kill () from /lib/libc.so.6
(gdb) Executing command "bt full":
#0 0x400e6921 in kill () from /lib/libc.so.6
No symbol table info available.
#1 0x400e6720 in raise () from /lib/libc.so.6
No symbol table info available.
#2 0x400e7808 in abort () from /lib/libc.so.6
No symbol table info available.
#3 0x08086144 in fatal_signal (make_core=1, close_sockets=1) at init.c:957
No locals.
#4 0x08085fe0 in rec_sigsegv (i=11) at init.c:898
No locals.
#5 <signal handler called>
No symbol table info available.
#6 0x08091479 in get_pet_enemy (pet=0x968a3f0, rv=0xbfffd7b0) at pets.c:118
tmp2 = (struct obj *) 0x7
owner = (struct obj *) 0x0
tmp = (struct obj *) 0x0
attacker = (struct obj *) 0xbfffd7b0
tmp3 = (struct obj *) 0x968a3f0
i = 134790287
x = -16385
y = -10520
nm = (struct mapdef *) 0x401d3458
search_arr = {4, 23, 24, 9, 16, 20, 10, 13, 19, 18, 14, 21, 11, 12,
22, 15, 17, 39, 34, 36, 30, 35, 41, 26, 40, 25, 37, 32, 27, 44, 38, 33, 28,
29, 45, 46, 47, 43, 48, 31, 42, 0, 0, 0, 0, 151674880, 1114127, 0, 0}
#7 0x0808bc8f in find_enemy (npc=0x968a3f0, rv=0xbfffd7b0) at monster.c:211
attacker = (struct obj *) 0x0
tmp = (struct obj *) 0x0
#8 0x0808c0ab in move_monster (op=0x968a3f0) at monster.c:326
dir = 0
diff = 0
owner = (struct obj *) 0x0
enemy = (struct obj *) 0x968a5bc
part = (struct obj *) 0x80b82bf
oph = (struct obj *) 0x968a3f0
rv = {distance = 0, distance_x = 0, distance_y = 0, direction = 0,
part = 0x0}
#9 0x080bc532 in process_object (op=0x968a3f0) at time.c:1312
evt = (struct _event *) 0x0
#10 0x0808af52 in process_events (map=0x0) at main.c:1002
op = (struct obj *) 0x968a3f0
marker = {contr = 0x0, next = 0x0, prev = 0x0,
active_next = 0x8cad80c, active_prev = 0x968a3f0, below = 0x0, above = 0x0,
inv = 0x0, container = 0x0, env = 0x0, more = 0x0, head = 0x0, map = 0x0,
count = 0, refcount = 0, name = 0x0, name_pl = 0x0, title = 0x0, race = 0x0,
slaying = 0x0, skill = 0x0, msg = 0x0, lore = 0x0, x = 0, y = 0, ox = 0,
oy = 0, speed = 0, speed_left = 0, nrof = 0, face = 0x0, direction = 0 '\0',
facing = 0 '\0', type = 0 '\0', subtype = 0 '\0', client_type = 0, resist = {
0 <repeats 26 times>}, attacktype = 0, path_attuned = 0,
path_repelled = 0, path_denied = 0, material = 0, materialname = 0x0,
magic = 0 '\0', state = 0 '\0', value = 0, level = 0, last_heal = 0,
last_sp = 0, last_grace = 0, last_eat = 0, invisible = 0, pick_up = 0 '\0',
item_power = 0 '\0', gen_sp_armour = 0 '\0', weight = 0, weight_limit = 0,
carrying = 0, glow_radius = 0 '\0', stats = {Str = 0 '\0', Dex = 0 '\0',
Con = 0 '\0', Wis = 0 '\0', Cha = 0 '\0', Int = 0 '\0', Pow = 0 '\0',
wc = 0 '\0', ac = 0 '\0', hp = 0, maxhp = 0, sp = 0, maxsp = 0, grace = 0,
maxgrace = 0, exp = 0, food = 0, dam = 0, luck = 0 '\0'}, perm_exp = 0,
current_weapon_script = 0x0, current_weapon = 0x0, weapontype = 0,
tooltype = 0, body_info = '\0' <repeats 11 times>,
body_used = '\0' <repeats 11 times>, owner = 0x0, ownercount = 0,
enemy = 0x0, attacked_by = 0x0, attacked_by_count = 0, randomitems = 0x0,
run_away = 0, chosen_skill = 0x0, hide = 0, move_status = 0, move_type = 0,
will_apply = 0 '\0', spellitem = 0x0, expmul = 0, duration = 0,
duration_modifier = 0 '\0', casting_time = 0, spell = 0x0,
start_holding = 0, spellarg = 0x0, dam_modifier = 0 '\0', range = 0 '\0',
range_modifier = 0 '\0', arch = 0x0, other_arch = 0x0, flags = {0, 0, 0, 0},
animation_id = 0, anim_speed = 0 '\0', last_anim = 0 '\0', elevation = 0,
smoothlevel = 0 '\0', events = 0x0, custom_name = 0x0}
tag = 154671
#11 0x0808b61d in main (argc=2, argv=0xbfffdbd4) at main.c:1232
evtid = 14
CFP = {Type = {-1073751168, 1073808556, 1045, 1073809048, -1073751232,
1073777557, 1073809460, 1074133536, 1, 0, 1074961282, 1075655768,
1075655756, -1073751260, 1074615257}, Value = {0xbfffdb6c, 0xbfffdbe0,
0x81506f8, 0xe9, 0x401b306b, 0x401d3458, 0x40010020, 0xbfffdb58,
0x401b346c, 0x81505b4, 0x81508ec, 0x0, 0x0, 0x8059008, 0x401d3458}}
#12 0x400d553d in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
(gdb) Executing command "up" (20 times):
#1 0x400e6720 in raise () from /lib/libc.so.6
#2 0x400e7808 in abort () from /lib/libc.so.6
#3 0x08086144 in fatal_signal (make_core=1, close_sockets=1) at init.c:957
957 abort();
#4 0x08085fe0 in rec_sigsegv (i=11) at init.c:898
898 fatal_signal(1, 1);
#5 <signal handler called>
#6 0x08091479 in get_pet_enemy (pet=0x968a3f0, rv=0xbfffd7b0) at pets.c:118
118 if (QUERY_FLAG(tmp2,FLAG_ALIVE) && (
#7 0x0808bc8f in find_enemy (npc=0x968a3f0, rv=0xbfffd7b0) at monster.c:211
211 tmp= get_pet_enemy(npc,rv);
#8 0x0808c0ab in move_monster (op=0x968a3f0) at monster.c:326
326 else if((enemy= find_enemy(op, &rv)))
#9 0x080bc532 in process_object (op=0x968a3f0) at time.c:1312
1312 if(move_monster(op) || QUERY_FLAG(op, FLAG_FREED))
#10 0x0808af52 in process_events (map=0x0) at main.c:1002
1002 process_object (op);
#11 0x0808b61d in main (argc=2, argv=0xbfffdbd4) at main.c:1232
1232 process_events(NULL); /* "do" something with objects with speed */
#12 0x400d553d in __libc_start_main () from /lib/libc.so.6
------------------------------------------------------------------------
_______________________________________________
crossfire mailing list
[email protected]
http://mailman.metalforge.org/mailman/listinfo/crossfire