Well you can interpret this as you want:
Gdb:
3:45am : @dkmud ~/mud>gdb bin/circle lib/core
Core was generated by `circle -C3 4600'.
Program terminated with signal 11, Segmentation fault.
find_solib: Can't read pathname for load map: Input/output error
#0 0x80781fd in special (ch=Cannot access memory at address 0xdea88.)
at interpreter.c:1218
1218 }
(gdb) bt
#0 0x80781fd in special (ch=Cannot access memory at address 0xdea88.)
at interpreter.c:1218
Cannot access memory at address 0xdea80.
(gdb) list
1213 if (GET_OBJ_SPEC(i) != NULL)
1214 if (GET_OBJ_SPEC(i) (ch, i, cmd, arg))
1215 return 1;
1216
1217 return 0;
1218 }
1219
1220
1221
(gdb)
Interpreter.c(1218):
This is part of int special()...
/* special in object present? */
for (i = world[ch->in_room].contents; i; i = i->next_content)
if (GET_OBJ_SPEC(i) != NULL)
if (GET_OBJ_SPEC(i) (ch, i, cmd, arg))
return 1;
return 0;
} <----- 1218
Logging:
Wed May 27 03:37:41 :: 2
Wed May 27 03:37:41 :: 2.1
Wed May 27 03:37:41 :: 2.2
Wed May 27 03:37:41 :: 2.3
Wed May 27 03:37:41 :: 2.5
Wed May 27 03:37:41 :: 2.6
Wed May 27 03:37:41 :: 2.9
log("2.6");
if (GET_LEVEL(ch) < 71) {
log("2.7");
sprintf(buf, "The cost for you to train one statistic is %d
coins.", co$
log("2.8");
send_to_char(buf, ch);
}
log("2.9");
return 1;
log("2.91"); //Should never get here.
}
log("3");
It feels like it is crashing on the returns.
When i have the return at the end of a if statement, i get a crash, if i
put it at the begining of the spec it works just fine. This is a spec i
have been using for quite some time. Only thing i changed was making
exp_cost into an array of 10 numbers so different stats cost different
amounts of exp.
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST