[CODE] more info on spell-name bug

From: Kingmundi (Kingmundi@AOL.COM)
Date: 12/23/97


if you make spell names with dashes in them, it causes the game to go into an
infinite loop upon a successful cast at this point

in say_spell

  while (*(lbuf + ofs)) {
    for (j = 0; *(syls[j].org); j++) {
      if (!strncmp(syls[j].org, lbuf + ofs, strlen(syls[j].org))) {
        strcat(buf, syls[j].new);
        ofs += strlen(syls[j].org);
        log(buf);
      }
i added the log(buf) to see what values were being assigned to buf,
i am unable to unravel the *(syls[j].org and new) pointers in my mind,
can someone explain, i.e. in the form of something like
*(syls[j].org) means that vaule of the memory location of blah blah,
and what the difference is between the org and the new,
im sure they mean the original and the new, i just dont see how either one
gets
changed in any way


     +------------------------------------------------------------+
     | 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/08/00 PST