I can email you the entire function if you would like to see what we're
doing. Or even the entire save.c file. Let me know.

- Valnir

----- Original Message ----- 
From: "Richard Lindsey" <[EMAIL PROTECTED]>
To: "Valnir" <[EMAIL PROTECTED]>; <[email protected]>
Sent: Monday, July 12, 2004 12:19 PM
Subject: RE: rgObjNest corruption...


How exactly does this work?

                    if (make_new)
                    {
                        int wear;

                        wear = obj->wear_loc;
                        extract_obj(obj);

                        obj = create_object(obj->pIndexData,0);
                        obj->wear_loc = wear;
                    }

if you extract_obj(obj), then how can you
create_object(obj->pIndexData,0)?  obj would be NULL, and pIndexData
wouldn't exist, and if for some reason obj weren't NULL, if pIndexData
were NULL it would cause an exit() within create_object... That looked
like the only part that might've applied to my situation, as the only
other part that wasn't stock was the inclusion of this:

                        if ( ch && ch != NULL )
                            obj_to_char( obj, ch );
                        else
                            obj_to_room( obj,
get_room_index(ROOM_VNUM_LIMBO) );

... and you can probably get rid of that double ch check, when you say
if ( ch && ch != NULL ), what you're saying is that if ch has a value
(hence, != NULL) and ch != NULL (which you just checked)... still open
for suggestions tho :)

Richard Lindsey.


Reply via email to