| First of all, I presume you are talking about DIGITAL UNIX, no? What
version?
__get_libc_context calls malloc (actually calloc()) _once_ to initialize
the libc context, and that memory does eventually get freed, although it
may happen after your malloc tool has decided it wasn't freed (it happens
as libc is tearing things down, which is a tricky time. Tools like
this usually need memory but if libc were shut down then they wouldn't be
able to get any...)
It looks like there is a destructor for the drand48 malloc'ed memory, but
I can't quite see where it gets called from. I suspect it gets freed
in the same place that the libc_context is getting freed. Still, it seems
fishy that it seems to be calling malloc alot, and the 'not checking the
return' is definitely a bug.
Please file a QAR so that the libc maintainer will see this and be able
to track/respond to it. Node GORGE, account QAR_INTERNAL. Thanks.
|