Re: crash in LIBPQ_execute_query
От | Dave Page |
---|---|
Тема | Re: crash in LIBPQ_execute_query |
Дата | |
Msg-id | E7F85A1B5FF8D44C8A1AF6885BC9A0E4AC9E32@ratbert.vale-housing.co.uk обсуждение исходный текст |
Ответ на | crash in LIBPQ_execute_query ("Scot Loach" <sloach@sandvine.com>) |
Список | pgsql-odbc |
No probs. I'll apply it to CVS. Thanks for testing. /D > -----Original Message----- > From: Scot Loach [mailto:sloach@sandvine.com] > Sent: 02 September 2005 15:22 > To: Dave Page; pgsql-odbc@postgresql.org > Cc: Anoop Kumar > Subject: RE: [ODBC] crash in LIBPQ_execute_query > > That seems to work. > Thanks for the quick reply Dave. > > -----Original Message----- > From: Dave Page [mailto:dpage@vale-housing.co.uk] > Sent: Friday, September 02, 2005 8:58 AM > To: Scot Loach; pgsql-odbc@postgresql.org > Cc: Anoop Kumar > Subject: RE: [ODBC] crash in LIBPQ_execute_query > > > > > > -----Original Message----- > > From: pgsql-odbc-owner@postgresql.org > > [mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Scot Loach > > Sent: 02 September 2005 13:12 > > To: pgsql-odbc@postgresql.org > > Subject: [ODBC] crash in LIBPQ_execute_query > > > > Some of the queries we use can be very large. > > My code is crashing here: > > > > QResultClass * > > LIBPQ_execute_query(ConnectionClass *self,char *query) > > { > > QResultClass *qres; > > PGresult *pgres; > > char *ptr; > > char cmdbuffer[ERROR_MSG_LENGTH + 1]; > > char errbuffer[ERROR_MSG_LENGTH + 1]; > > int pos=0; > > > > strcpy(cmdbuffer,query); > > > > > > ERROR_MSG_LENGTH is 4096, my query is larger than that. > > What's the rationale here and how do we fix it? This works > > fine with the old driver. > > Urgh. To be honest, I can't see any need to copy that string at all in > there, so the limit is entirely unwarranted. In addition, there's code > in there marked #ifndef USE_LIBPQ (in LIBPQ_Execute!!), and, > it sets the > rowcount to -1 if it can't find a space in the SQL query! > > I've tidied that up - patch attached. Please let me know how it goes. > > Regards, Dave >
В списке pgsql-odbc по дате отправления: