From: | Oliver Freyd <Oliver(dot)Freyd(at)iontof(dot)com> |
---|---|
To: | pgsql-odbc(at)postgresql(dot)org |
Subject: | Re: [PATCH] SQLFreeStmt deletes params, but does not reset the stmt->prepared state. |
Date: | 2014-10-17 12:49:06 |
Message-ID: | 54411042.3050202@iontof.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
>> I hope this is useful, it took quite a while to track this down...
>
> Thank you for your investigation.
>
> According to the following pages
> http://msdn.microsoft.com/en-us/library/ms709284%28v=vs.85%29.aspx
> http://msdn.microsoft.com/en-us/library/ms710926%28v=vs.85%29.aspx
>
> , it seems better to reset APD only keeping IPD intact.
>
> Comments?
>
Thank you for your quick reply,
at first sight that seems to be better, more efficient as the statement
keeps its prepared state. Only thing is I don't know if that would lead
to a memory leak later, no idea when the IPD params are freed.
I can try if that works, too...
regards,
Oliver Freyd
> regards,
> Hiroshi Inoue
>
>> best regards,
>>
>> Oliver Freyd
>>
>> -----------------------------------------------------------------------
>> diff --git a/statement.c b/statement.c
>> index da5abf5..a019d5d 100644
>> --- a/statement.c
>> +++ b/statement.c
>> @@ -581,6 +581,7 @@ SC_free_params(StatementClass *self, char option)
>> {
>> APD_free_params(SC_get_APDF(self), option);
>> IPD_free_params(SC_get_IPDF(self), option);
>> + if (self->prepared!=NOT_YET_PREPARED)\
>> SC_set_prepared(self, NOT_YET_PREPARED);
>> }
>> PDATA_free_params(SC_get_PDTI(self), option);
>> self->data_at_exec = -1;
>>
>>
>>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2014-10-17 15:04:58 | Re: PostgreSQL crash at SQLColAttribute() |
Previous Message | Andreas Buschka | 2014-10-17 12:17:46 | Linking tables from MS Access 2013 works fine, but cannot get table and column comments |