[1053] in Coldmud discussion meeting

root meeting help first first in chain previous in chain previous next last

Re: [COLD] Coldcc - Eyow!

daemon@ATHENA.MIT.EDU (Mon Jul 29 11:42:46 1996 )

Date: Mon, 29 Jul 1996 09:23:30 -0600 (MDT)
From: Brandon Gillespie <brandon@tombstone.sunrem.com>
To: Dancer <dancer@brisnet.org.au>
cc: coldstuff@cold.org
In-Reply-To: <31FCC439.45F4E8C6@brisnet.org.au>

On Tue, 30 Jul 1996, Dancer wrote:
> Brandon suggested changing the 'new' keyword, for 'old' in the dump. I
> hadn't thought of that, and felt like a bit of a twerp for _not_
> thinking of it.

Ack, no!  I said get rid of 'new', dont use 'old'.  'new' deletes and 
creates a new object, old just deletes and leaves it be.


> In short:
> 	* 'old $objname' automatically deleted $objname, before proceeding. I
> felt this was not what was intended.

Yes, it was..  the following behavior is legit:

new object $foo: $root;    // deletes existing $foo, creates new $foo,
                           // must always have parents list defined.
old object $foo;           // simply deletes $foo
object $foo;               // set '$foo' as the current object.
                           // if used with a parents list, will try to
                           // create $foo as a new object if it does not
                           // exist.

> 	* Objects would get instantiated (eg: $mail_message_148), and then a
> little while later, coldcc could not retrieve the object by number. This
> I haven't looked into. I punted, and forced it to create a new object. I
> wanted a running database more than a fix just then. (see my goto,
> above).

Hrm, which specifyer were you using?  new/old/none?

> 	* In data/object.c, object_has_ancestor() can get called with an objnum
> of -1. This is not good. This tends to happen because the 'old'
> declaration deleted the object, instants before we try to do this. You
> can figure this patch out for yourself. Interestingly, I _think_ this
> routine is still called with the bad object number from time to time on
> partial compiles _anyway_. This hints at another bug, that I didn't go
> looking for. (as if the previous thing didn't. Hah.)
> No patches, sorry. I'll email a copy of the hacked textdb.c to Brandon
> for him to have a look at. The rest of you wait. It's not a pretty
> sight, what I've done to this code. Things like this shouldn't be
> inflicted on poor innocent software.