bugfix proposal for ecpglib prepare's parse code

Поиск
Список
Период
Сортировка
От Daniel Verite
Тема bugfix proposal for ecpglib prepare's parse code
Дата
Msg-id 20040930131206.2513124@localhost
обсуждение исходный текст
Ответы Re: bugfix proposal for ecpglib prepare's parse code  (Michael Meskes <meskes@postgresql.org>)
Список pgsql-interfaces
    Hello,

A problem with ecpg reported in pgsql-fr-general:
http://archives.postgresql.org/pgsql-fr-generale/2004-09/msg00024.php
boils down to ecpglib interpreting two consecutive colons as a placeholder
(or maybe two) for a host variable in the context of an EXEC SQL PREPARE :stmt
This leads to failure when '::' is used in the statement as a cast operator, as
it is in the message pointed above.

The small patch below is a fix for this (it applies within pg8.0.0-beta3 to
src/interfaces/ecpg/ecpglib/prepare.c):

*** prepare.c~  Fri May 21 15:50:12 2004
--- prepare.c   Wed Sep 29 17:35:58 2004
***************
*** 46,54 ****                if (!string && *ptr == ':')               {
!                       *ptr = '?';
!                       for (++ptr; *ptr && isvarchar(*ptr); ptr++)
!                               *ptr = ' ';               }       } }
--- 46,59 ----                if (!string && *ptr == ':')               {
!                       if (ptr[1]==':')
!                               ptr+=2; /* skip  '::' */
!                       else
!                       {
!                               *ptr = '?';
!                               for (++ptr; *ptr && isvarchar(*ptr); ptr++)
!                                       *ptr = ' ';
!                       }               }       } }

Regards,

-- DanielPostgreSQL-powered mail user agent and storage: http://www.manitou-mail.org



В списке pgsql-interfaces по дате отправления:

Предыдущее
От: Steve Ellis
Дата:
Сообщение: Problems with Pg.pm
Следующее
От: Oliver D.
Дата:
Сообщение: libpq Windows : Static Link