[PATCH,Hurd] Fix deallocation after proc_getprocinfo call

Joel Brobecker brobecker@adacore.com
Sun Nov 23 09:56:00 GMT 2014


> > > -      vm_deallocate (mach_task_self (), (vm_address_t) pi, pi_len);
> > > +      vm_deallocate (mach_task_self (), (vm_address_t) pi, pi_len * sizeof (*(procinfo_t) 0));
> > 
> > Suggest using "sizeof (struct procinfo)", which I think is better
> > than dereferencing a NULL pointer. This is based on guessing that
> > type procinfo_t is a pointer to struct procinfo, as suggested by
> > the code in inf_validate_procinfo.
> 
> Not, that is not the same: struct procinfo has an open array at its end
> (threadinfos[0]), and thus the actually allocated size is variable.

OK. I don't know the code well enough to make any better suggestion.
The above does look unusual to me, but if it works and seems to be
the only correct way, let's go with that.

Should I push your patch?

-- 
Joel



More information about the Gdb-patches mailing list