Re: PQescapeBytea on Win32

From: "Key88 SF" <key88sf(at)hotmail(dot)com>
To: pgman(at)candle(dot)pha(dot)pa(dot)us
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: PQescapeBytea on Win32
Date: 2003-03-18 05:07:29
Message-ID: F127CGlbZvFqV2mEIkL00001ff2@hotmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I suppose that is ok. But the default compiler flags in the provided
makefile for libpq is non-multithreaded. That should at least be fixed I
would think.

If it's not a big deal for you, I would say that in the name of safety for
those people who don't look closely at these things, it would be better to
have the callback function to delete the memory and not have to assume libpq
is built with the correct c-runtimes...

-Dave

>From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
>To: Key88 SF <key88sf(at)hotmail(dot)com>
>CC: pgsql-hackers(at)postgresql(dot)org
>Subject: Re: [HACKERS] PQescapeBytea on Win32
>Date: Tue, 18 Mar 2003 00:01:38 -0500 (EST)
>MIME-Version: 1.0
>Received: from candle.pha.pa.us ([207.106.42.251]) by
>mc6-f24.law1.hotmail.com with Microsoft SMTPSVC(5.0.2195.5600); Mon, 17 Mar
>2003 21:01:44 -0800
>Received: (from pgman(at)localhost)by candle.pha.pa.us (8.11.6/8.10.1) id
>h2I51cW03568;Tue, 18 Mar 2003 00:01:38 -0500 (EST)
>X-Message-Info: JGTYoYF78jEHjJx36Oi8+Q1OJDRSDidP
>Message-Id: <200303180501(dot)h2I51cW03568(at)candle(dot)pha(dot)pa(dot)us>
>In-Reply-To: <F159qHSgNZuILS94O9J00042a23(at)hotmail(dot)com>
>X-Mailer: ELM [version 2.4ME+ PL99 (25)]
>Return-Path: pgman(at)candle(dot)pha(dot)pa(dot)us
>X-OriginalArrivalTime: 18 Mar 2003 05:01:44.0926 (UTC)
>FILETIME=[78F0B7E0:01C2ED0B]
>
>
>Yes, I am aware of that limitation. If you link libpq as a
>Multithreaded DLL, it will not link libc into each DLL, but have only
>one libc that can free from anywhere.
>
>Is that acceptable or do we need a Win32 specific memory free function?
>
>---------------------------------------------------------------------------
>
>Key88 SF wrote:
> >
> > Hi - there is a problem with PQescapeBytea for Win32. Since libpq is a
>DLL,
> > all memory allocated from within the DLL needs to be freed from within
>the
> > dll.
> >
> > PQescapeBytea allocates memory, but there is no function call back into
>the
> > DLL to free this memory. This causes heap corruption when the main
>program
> > tries to free the memory itself. The alternative is to just leak the
>memory
> > and never free it. Also bad....
> >
> > -Dave Brown
> > key88sf(at)hotmail(dot)com
> >
> >
> > _________________________________________________________________
> > Add photos to your messages with MSN 8. Get 2 months FREE*.
> > http://join.msn.com/?page=features/featuredemail
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 3: if posting/reading through Usenet, please send an appropriate
> > subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> > message can get through to the mailing list cleanly
> >
>
>--
> Bruce Momjian | http://candle.pha.pa.us
> pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
> + If your life is a hard drive, | 13 Roberts Road
> + Christ can be your backup. | Newtown Square, Pennsylvania
>19073

_________________________________________________________________
Add photos to your e-mail with MSN 8. Get 2 months FREE*.
http://join.msn.com/?page=features/featuredemail

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Key88 SF 2003-03-18 05:20:12 Re: PQescapeBytea on Win32
Previous Message Bruce Momjian 2003-03-18 05:01:38 Re: PQescapeBytea on Win32