Bob Ippolito <bob@redivi.com> writes:
> On Nov 8, 2003, at 12:31 AM, Tom Lane wrote:
>> I have just in the past couple hours realized that ps_status.c is
>> seriously broken on OS X 10.3. It appears that Apple has randomly
>> decided to start #define'ing "BSD",
> __APPLE__ is usually the only define you should really be depending on
It is not that we are failing to recognize Darwin, it is that Darwin is
falsely claiming to be something else.
>> I don't see why system.c would affect the problem I'm seeing --- does
>> this really fix pltcl for you?
> If you're getting the NSLinkModule -> mmap crash, then yes.
No, I'm seeing an NSLinkModule -> memcmp crash. memcmp() is crashing
because it is being passed a null pointer, and the pointer in question
is null because ps_status.c zeroed it via "argv[1] = NULL".
I modified ps_status to use the correct status update method
(PS_CLOBBER_ARGV) but it still failed :-(. It sorta looks like
something in the dynamic loader may be relying on a stale copy of
the "environ" pointer ... does that ring a bell at all?
regards, tom lane