Greets all,
While attempting to clean up some memory leaks, I have encountered some
difficulties. In the code for PQclear() we have the check:
if (!res)
return;
The problem arrises when the result object pointer you are passing to clear
contains not a null and not a valid result object address, but a junk pointer.
PQclear() seg faults when the address is outside of the data segment.
(libpq bug?)
My question is, how does one determine when a PGresult* contains the address
of a valid result object? Rewriting the calling code is not an option sadly.
What I would like to be able to do is something like this:
if ( result_is_valid( res ) )
{
PQclear( res );
}
Thanks in advance for any help/suggestions.
-Wade