[freetds] I'm having a crashing problem with FreeTDS under OSX

James K. Lowden jklowden at freetds.org
Sat Mar 7 11:10:45 EST 2009


Hi Daniel, 

> I put some printfs in around the free and it appears to be pointing to  
> a valid date format.

That's interesting. I don't know anything about OS X heap management or
how an executable is arranged in memory.  My instinct says 0x16 is too low
for the heap, and free(3) seems to agree.  

Looking at the code, there are only a few places where data_fmt is set,
all of them output of calloc(3) or strdup(3).  I'm sure you see the same
yourself.  I don't see how FreeTDS could have set that pointer to anything
that can't be freed. 

> If I just comment out the free it then seems to fail on the next free  
> the code hits (and of course leaks;)
> It is almost as if the heap is getting corrupted

The OS X tool vmmap(1) might be of some help here.  I haven't used it
myself but it's in the right neighborhood.  

I still suspect someone somewhere is trimming off the top 4 bytes of a
pointer and then having a party.  

HTH.  

--jkl



More information about the FreeTDS mailing list