This fix should be in 5.4 and 5.5.
I just push this and previous commit.

My apology for the mess.

--
Yasuo Ohgaki
yohg...@ohgaki.net


2013/7/11 Yasuo Ohgaki <yohg...@php.net>

> Commit:    8679bffaca58cf03737ab6199a2ef3e8712b4ee2
> Author:    Yasuo Ohgaki <yohg...@php.net>         Thu, 11 Jul 2013
> 12:23:11 +0900
> Parents:   2acc38627092123ac462f3a23780bf887bf69286
> Branches:  master
>
> Link:
> http://git.php.net/?p=php-src.git;a=commitdiff;h=8679bffaca58cf03737ab6199a2ef3e8712b4ee2
>
> Log:
> Fixed meta data retrieve when OID is larger than 2^31
>
> Changed paths:
>   M  NEWS
>   M  ext/pdo_pgsql/pgsql_statement.c
>
>
> Diff:
> diff --git a/NEWS b/NEWS
> index eef3c06..2ad4288 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -46,6 +46,9 @@ PHP
>                    NEWS
>    . Allowed PDO_OCI to compile with Oracle Database 12c client libraries.
>      (Chris Jones)
>
> +- PDO_pgsql:
> +  . Fixed meta data retrieve when OID is larger than 2^31. (Yasuo)
> +
>  - Phar:
>    . Fixed Bug #65142 (Missing phar man page). (Remi)
>
> diff --git a/ext/pdo_pgsql/pgsql_statement.c
> b/ext/pdo_pgsql/pgsql_statement.c
> index d58eebf..3ef8919 100644
> --- a/ext/pdo_pgsql/pgsql_statement.c
> +++ b/ext/pdo_pgsql/pgsql_statement.c
> @@ -587,7 +587,7 @@ static int pgsql_stmt_get_column_meta(pdo_stmt_t
> *stmt, long colno, zval *return
>         add_assoc_long(return_value, "pgsql:oid",
> S->cols[colno].pgsql_type);
>
>         /* Fetch metadata from Postgres system catalogue */
> -       spprintf(&q, 0, "SELECT TYPNAME FROM PG_TYPE WHERE OID=%d",
> S->cols[colno].pgsql_type);
> +       spprintf(&q, 0, "SELECT TYPNAME FROM PG_TYPE WHERE OID=%u",
> S->cols[colno].pgsql_type);
>         res = PQexec(S->H->server, q);
>         efree(q);
>
>
> --
> PHP CVS Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

Reply via email to