Greetings,
Xual wrote:
> Hi all,
>
> I wrote this command, which is supposed to copy one mobile to
> another pre-existing prototype. Everything seems to work okay until I try
> to edit the mob, load it and purge it, or vstat it a couple of times. I
> am using bpl14, and the dg_pl5a_with_oasis system. gdb tells me that
Don't know too much about the oasis stuff...but I try to look at your
code with some common sense...
> whatever I try to do to the prototype is responsible for the crash, but
> I'm positive I just forgot something stupid in the command...
>
> ACMD(do_mobcopy)
> {
> extern struct char_data *mob_proto;
> int from, to, t_rnum, f_rnum;
> char arg1[20];
> char arg2[20];
Careful here! Buffer overruns easily possible. Take MAX_INPUT_LENGTH.
>
> argument = two_arguments(argument, arg1, arg2);
>
> if ((!*arg1 || !*arg1) || (!is_number(arg1) || !is_number(arg2))) {
arg1 and arg2 you mean here
> send_to_char("Useage: mobcopy <from vnum> <to vnum>\r\n", ch);
> return;
> }
>
> from = atoi(arg1);
> to = atoi(arg2);
> f_rnum = real_mobile(from);
> t_rnum = real_mobile(to);
>
> if (from <= 0 || to <=0) {
> send_to_char("No negative numbers please!\r\n", ch);
> return;
> }
> if ((!(mob_proto + t_rnum)) || (!(mob_proto + f_rnum))) {
> send_to_char("There are no mobs with that number\r\n", ch);
> return;
> }
> copy_mobile((mob_proto + t_rnum), (mob_proto + f_rnum));
> mob_index[t_rnum].vnum = to;
> olc_add_to_save_list((to/100), OLC_SAVE_MOB);
>
> send_to_char("Okay.\r\n", ch);
> return;
> }
Hmm...guess the rest looks ok. However can't tell more about
olc_add_to_save_list and copy_mobile...they seem to be oasis, which
I don't know.
- Chris
--
/----------------------------------------------------------------------------\
| Christian Loth, chris@rom.mud.de | REALM OF MAGIC |
| http://rom.mud.de/~chris | telnet rom.mud.de 4000 |
| | http://rom.mud.de/ |
\----------------------------------------------------------------------------/
+------------------------------------------------------------+
| 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