libpq docs about PQfreemem

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: PGSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: libpq docs about PQfreemem
Date: 2007-02-04 09:57:14
Message-ID: 45C5ADFA.8040608@hagander.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

have this about PQfreemem():

Frees memory allocated by <application>libpq</>, particularly
<function>PQescapeByteaConn</function>,
<function>PQescapeBytea</function>,
<function>PQunescapeBytea</function>,
and <function>PQnotifies</function>.
It is needed by Microsoft Windows, which cannot free memory across
DLLs, unless multithreaded DLLs (<option>/MD</option> in VC6) are used.
On other platforms, this function is the same as the standard library
function <function>free()</>.
</para>

That's also a very old comment, dating back to when we could build libpq
with VC6 only and nothing else. Now we can build with MinGW, Borland,
VC2005 and I think also VC2003. Which would add the note that this is
also depending on *which compiler* and *which compiler version*.
The /MD mention is just one of several different options to select the
runtime libraries, so it seems really misplaced.

Now, there are two options for this. Either we fix it (I can put
together a patch), or we remove it altogether. To me, it seems to be
just an implementation detail and some kind of explanation why we're
doing it - which would live better in a source code comment than in the
docs.
This includes the part about how it's just the same as free() on other
platforms. That's just an implementation detail, and I assume we don't
want people to rely on that - in case we ever want to change it in the
future for some reason. (the doc for the other functions say you have to
use PQfreemem without mentioning any exceptions)

Thoughts? Rip out or update?

//Magnus

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2007-02-04 11:44:06 Re: Re: [COMMITTERS] pgsql: Add documentation for Windows on how to set an environment
Previous Message Magnus Hagander 2007-02-04 09:46:33 Re: [COMMITTERS] pgsql: Add documentation for Windows on how to set an environment