[158] in Coldmud discussion meeting

root meeting help first previous next last

segv durring startup FIXED???

daemon@ATHENA.MIT.EDU (Wed Mar 23 03:58:13 1994 )

From: deforest@netcom.com (Robert de Forest)
To: coldstuff@MIT.EDU
Date: Wed, 23 Mar 1994 00:56:02 -0800 (PST)

After much toil, I found what may be the solution to the segmentation
 faults recieved at startup and durring other times when objects are sized.

Here's the diff of dbpack.c (the only filed needing changes):

150c150
< 	    write_ident(obj->vars.tab[i].class, fp);
---
> 	    write_long(obj->vars.tab[i].class, fp);
360c360
< 	    obj->vars.tab[i].class = read_ident(fp);
---
> 	    obj->vars.tab[i].class = read_long(fp);
581c581
< 	    size += size_ident(obj->vars.tab[i].class);
---
> 	    size += size_long(obj->vars.tab[i].class);

The problem is that when changing dbrefs to not being idents, a few references
 to class were not converted. Class is the object defining the variable in
 vars. That is, vars.tab[] is an array of structs with a name, a defining
 class, and a value. The class used to be an ident, as did al dbrefs (I
 assume), hence the confusion. There may be other files so affected. I don't
 know.

Any comments?

Crag@TheColdDark
Robert de Forest