> i don't understand why... but if in the write_to_output, i put an if around
> the parse_color(txt,t), the mud crash with a core dump after some disk
> swapping
>
> i've tried this
>
> if ((PRF_FLAGGED(t->character,PRF_TEST))
> new_txt = parse_color(txt,t);
Well, since I've been out of the game for about two years now I
may be wrong (and since I can't remember what most of the macros expand
to).
Does t point to a valid area in memory? What does parse color do?
Does it delete (free) the txt (which I'm assuming is a char *)? Could it
be using txt to expand the control characters in for color, and
over-flowing the end of the buffer? What's the stack trace from gdb?
Which of the above two lines did is crash on, what are the values of t and
txt at that point in program execution?
You may want to grab a copy of Bruce Perens Electric Fence, it's
free and I've found it to be more helpful than Purify or Insight/Insra
(which are both quite expensive). EFence came with my copy of RedHat
Linux, but if you search for it you should find it quickly.
- Sean
+------------------------------------------------------------+
| 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