On Thu, 21 May 1998, George wrote: > I shrank it down to 20 bytes for just memory, but decided the whole generic > attack for memory and buffers was best. It currently hashes by the size of > the buffer you request. Ah I see. > I changed the CREATE() macro. I suppose adding more types would be > possible, and easy. Yeah grep "CREATE(" *.c | wc -l says I've got 62 instances to look at, although after giving it some thought, I'm going to have to also change all strdup's if I want to change all the free's. It's either that, or figure out which fre's match the creates and selectively change those to the new FREE macro. "Nothing is ever easy." > I use a generic 'magic_check()' function to validate the buffer. Currently > it makes sure the buffer hasn't been overwritten. I'm using 2 checks, one an immediate check of one pointer, to make sure it's still valid and hasn't been over written, and the second a check of all pointers. I'll probably call that once per game loop, depending on how long it takes. > >Is there a portable way to know the current function? > > Not really, but I change __FUNCTION__ to __FILE__ with a #define if not > using GNU CC. The file and line is enough for my purposes, yours would > require the extra types. That may be ok for logging, but passing filename and function to the manager wouldn't be very useful for determining memory type. I'll have to do it all by hand, or at least in the areas where I care. Sam +------------------------------------------------------------+ | 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