[vox-tech] RE: vox-tech digest, Vol 1 #104 - 14 msgs

Jeff Newmiller vox-tech@lists.lugod.org
Fri, 1 Feb 2002 10:36:43 -0800 (PST)


On Fri, 1 Feb 2002, Ken Bloom wrote:

> > -----Original Message-----
> > Date: Thu, 31 Jan 2002 23:25:47 -0800 (PST)
> > From: Jeff Newmiller <jdnewmil@dcn.davis.ca.us>
> > To: vox-tech@lists.lugod.org
> > Subject: Re: [vox-tech] [C newbie]C program is acting weird...
> > Reply-To: vox-tech@lists.lugod.org
> >
> > On Thu, 31 Jan 2002, Ryan wrote:
> >
> > > -----BEGIN PGP SIGNED MESSAGE-----
> > > Hash: SHA1
> > >
> > > for some reason this is spitting out 3 char responses once in a
> > while, anyone
> > > have any ideas? I don't know much C, this is just some code I modified.

[...]

> > > char *randusername()
> > > {
> > >         char *string;
> >
> > You have not initialized space to put the characters that this string
> > points to, so you are putting them in, ah, unpredictable locations in
> > memory.  The behavior of the program after you write to string[0] is
> > undefined. I would recommend "static char string[ MAX_LEN+1 ]".

[...]

> > >         if (string = malloc(length + 2), string == NULL)
> > >                 return NULL;
> 
> Why do you assume he doesn't know what he's doing with that char* string.
> Did you look farther down to see the malloc()? If he changed the code as you
> suggest, it would break instantly.

Mea culpa.  Sorry!

---------------------------------------------------------------------------
Jeff Newmiller                        The     .....       .....  Go Live...
DCN:<jdnewmil@dcn.davis.ca.us>        Basics: ##.#.       ##.#.  Live Go...
                                      Live:   OO#.. Dead: OO#..  Playing
Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
/Software/Embedded Controllers)               .OO#.       .OO#.  rocks...2k
---------------------------------------------------------------------------