[CODE] Zedit (yea, again...)

From: Wayde Milas (thebard@RARLOA-4.PR.MCS.NET)
Date: 07/22/97


Ok, before you all tear my head off about looking in the mailing list
archives, I have. Now, let me explain, and maybe someone has a clue...

In zedit_new_zone commented out the following:

        new_table[i] = zone_table[i];
    else
      new_table[i+1] = zone_table[i];
  //free(zone_table); Why? Looks valid?
  zone_table = new_table;
  top_of_zone_table++;

If I remember right, this is the prescribed fix for the zedit new crash.

Ok, first off, after looking at zone_table with gdb, it looks valid. Its
not a null pointer. Not only that, but the logic seems correct. Why does
this free cause problems?

Second, it seems commenting out this line does not fix everything. After
compiling, and running, if I do a zedit new 151 say, and then do a show
zones, the last couple zones are all fuxored. total garbage. This leads me
to believe that something is wrong with the creation/offset?

Third, I remember reading something about someone taking purify to this
chunk of code and figuring out what was going on a couple months back.
Looks like the mailing archives are current only up to febuary. Can anyone
point me in the right direction here. I'm setting up a large mud with
scores of builders, and olc is of the utmost importance to keep things
sane.

BTW, about purify, I believe he deleted a the table with an offset or
something? Anyone remember?

Thanks for the time and effort.

Wayde


     +------------------------------------------------------------+
     | 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