Re: ODBC : SQLGetData question
От | Nick Gorham |
---|---|
Тема | Re: ODBC : SQLGetData question |
Дата | |
Msg-id | 5373408E.2070404@lurcher.org обсуждение исходный текст |
Ответ на | Re: ODBC : SQLGetData question (Dev Kumkar <devdas.kumkar@gmail.com>) |
Ответы |
Re: ODBC : SQLGetData question
|
Список | pgsql-odbc |
On 14/05/14 10:07, Dev Kumkar wrote:
On Wed, May 14, 2014 at 2:17 PM, aihtdikh <aihtdikh@gmail.com> wrote:That will work around the issue, but I'm stumped as to why it was not working for you already.
It seems like your platform must be 64bit, and something somewhere is converting what should be a 64bit SQLLEN into a 32bit value, but I can't find anywhere in the source that does anything unsafe in this regard - it's SQLLEN all the way.
Edit: Ah, Nick may be on the right path there.
Could the driver have been compiled with a different sqltypes.h than the application?
If so, you could try compiling the driver under the same setup as your application to see if that fixes it.
Regards,
HarunYes, the platform is 64-bit.We are deploying the driver as it is and not compiling it in-house currently.
In that case compile the application with the same setup as the driver.
Do you see any issues with the (int) typecast done for SQLLEN?
Yes, if your app ever expects the driver to return an array of results (for example) it will go badly wrong very quickly. Also, if the driver is 64 bit SQLLEN and the application 32 bit, a SQLGetData will be writing to memory that happens to be after the indicator variable, that will not end well.
--
Nick
В списке pgsql-odbc по дате отправления: