Prologue: I made several large modifications to redit.c and some other files, in order to support a second set of exits that are stored as a linked list. In the process I modularized much of the OasisOLC code that dealt with exits so that it would support both the normal kind and the new kind. So now there are several functions to handle adding and editing exits, these functions use a pointer to the actual exit, rather than using the direction number, in order to access the various data fields. This pointer is stored in the descriptor and called exit_being_worked_on. The Problem: Unfortunately, now when someone purges a normal exit and exit_being_worked_on is set to NULL the actual pointer in struct room_data is not being set to NULL. I can't (easily) go into the room_data and set the right pointer to NULL because there's know easy way of knowing which direction to set (I don't feel like going through and adding more functions and data members just to keep track of the direction number that I spent all this time getting rid of... heh.) The Question: How can I get it so that when I set exit_being_worked_on to NULL, the pointer back in struct room_data is also set to NULL? I tried passing it as a reference, but apparently C doesn't support taht... :grumble: Oh well, thanks for any help in advance. +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/11/01 PDT