]> granicus.if.org Git - php/commitdiff
Fixed meta data retrieve when OID is larger than 2^31
authorYasuo Ohgaki <yohgaki@php.net>
Thu, 11 Jul 2013 03:23:11 +0000 (12:23 +0900)
committerYasuo Ohgaki <yohgaki@php.net>
Fri, 12 Jul 2013 21:06:23 +0000 (06:06 +0900)
NEWS
ext/pdo_pgsql/pgsql_statement.c

diff --git a/NEWS b/NEWS
index 323fed4d188a8cb37061a1e35e525bc3bff05529..5507b2a29af72fe245b23dcef7c0e0bdcb4a611a 100644 (file)
--- 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)
 
index d58eebf8f439527754da459cb3fe73f6359abb97..3ef89196de71989536c364109f7219e04e157f5a 100644 (file)
@@ -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);