ok, i was creating a restring function for my mud, and i kept having trouble with it crashing after restringing a newly loaded object, and doing a look_at_char(). Anyway, i looked through the code and saw that in read_object (or create_obj() i don't remember) there's this line *obj = obj_proto[i]; well, i then realized that when i was doing a FREE(GET_OBJ_SHORT(obj)); that it was free()ing the obj_proto's Short Desc. that's what was causing my mud to crash. well anyway, my question is this: How can i do an if() check to see if GET_OBJ_SHORT(obj) != GET_OBJ_SHORT(obj_proto[i]) i know it's not that easy, and its not as easy as a strcmp() b/c someone could have restring'd it with the EXACT same short_descr and then that would just be memory wasted. i had tried something to the effect of: (assuming obj's RNUM != -1) if (&(GET_OBJ_SHORT(obj)) != &(obj_proto[GET_OBJ_RNUM(obj)].short_descr)) GET_OBJ_SHORT(obj) is just a simple define #define GET_OBJ_SHORT(obj) ((obj)->short_descr) if anyone has any ideas, they would be appreciated. i don't wanna be doing this kinda thing much. i KNOW i could possibly just create() a new obj after extracting the old one, and copying all the strings,etc. but i figured THIS way would be a bit easier. i would appreciate any help on this, i figured out my last post's problem on my on (after a bit of sleep) thnx again. Akuma the Raging Coder +------------------------------------------------------------+ | "The poets talk about love, but what I talk about is DOOM, | | because in the end, DOOM is all that counts." - | | Alex Machine/George Stark/Stephen King, The Dark Half | | "Nothing is IMPOSSIBLE, Just IMPROBABLE" | | "Easier Said Than Done, But Better Done Than Said..." | +------------------------------------------------------------+ +------------------------------------------------------------+ | 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