[packages/php/PHP_7_1] correct types in pdo modules to fix build on x32

atler atler at pld-linux.org
Sat Jan 25 03:36:50 CET 2025


commit 9d55527b03aaadd51bc9124281f87d413d347001
Author: Jan Palus <atler at pld-linux.org>
Date:   Thu Jan 23 00:46:07 2025 +0100

    correct types in pdo modules to fix build on x32

 php.spec    |  2 ++
 types.patch | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 79 insertions(+)
---
diff --git a/php.spec b/php.spec
index 0099067..bc3672c 100644
--- a/php.spec
+++ b/php.spec
@@ -221,6 +221,7 @@ Patch73:	icu69.patch
 Patch74:	openssl.patch
 Patch75:	icu70.patch
 Patch76:	libxml2-2.12.patch
+Patch77:	types.patch
 URL:		https://www.php.net/
 %{?with_interbase:%{!?with_interbase_inst:BuildRequires:	Firebird-devel >= 1.0.2.908-2}}
 %{?with_pspell:BuildRequires:	aspell-devel >= 2:0.50.0}
@@ -2049,6 +2050,7 @@ cp -p php.ini-production php.ini
 %patch -P74 -p1
 %patch -P75 -p1
 %patch -P76 -p1
+%patch -P77 -p1
 
 sed -E -i -e '1s,#!\s*/usr/bin/env\s+(.*),#!%{__bindir}\1,' \
       run-tests.php
diff --git a/types.patch b/types.patch
new file mode 100644
index 0000000..d836464
--- /dev/null
+++ b/types.patch
@@ -0,0 +1,77 @@
+--- php-8.0.28/ext/pdo_dblib/dblib_stmt.c.orig	2023-02-14 12:05:44.000000000 +0100
++++ php-8.0.28/ext/pdo_dblib/dblib_stmt.c	2025-01-23 00:05:26.067889731 +0100
+@@ -347,7 +347,7 @@
+ }
+ 
+ static int pdo_dblib_stmt_get_col(pdo_stmt_t *stmt, int colno, char **ptr,
+-	 zend_ulong *len, int *caller_frees)
++	 size_t *len, int *caller_frees)
+ {
+ 
+ 	pdo_dblib_stmt *S = (pdo_dblib_stmt*)stmt->driver_data;
+--- php-8.0.28/ext/pdo_firebird/firebird_statement.c.orig	2023-02-14 12:05:44.000000000 +0100
++++ php-8.0.28/ext/pdo_firebird/firebird_statement.c	2025-01-23 00:16:13.415116725 +0100
+@@ -259,7 +259,7 @@
+ 
+ /* fetch a blob into a fetch buffer */
+ static int firebird_fetch_blob(pdo_stmt_t *stmt, int colno, char **ptr, /* {{{ */
+-	zend_ulong *len, ISC_QUAD *blob_id)
++	size_t *len, ISC_QUAD *blob_id)
+ {
+ 	pdo_firebird_stmt *S = (pdo_firebird_stmt*)stmt->driver_data;
+ 	pdo_firebird_db_handle *H = S->H;
+@@ -341,7 +341,7 @@
+ /* }}} */
+ 
+ static int firebird_stmt_get_col(pdo_stmt_t *stmt, int colno, char **ptr,  /* {{{ */
+-	zend_ulong *len, int *caller_frees)
++	size_t *len, int *caller_frees)
+ {
+ 	pdo_firebird_stmt *S = (pdo_firebird_stmt*)stmt->driver_data;
+ 	XSQLVAR const *var = &S->out_sqlda.sqlvar[colno];
+@@ -561,7 +561,7 @@
+ 
+ 	switch (event_type) {
+ 		char *value;
+-		zend_ulong value_len;
++		size_t  value_len;
+ 		int caller_frees;
+ 		zval *parameter;
+ 
+--- php-8.0.28/ext/pdo_odbc/odbc_stmt.c.orig	2023-02-14 12:05:44.000000000 +0100
++++ php-8.0.28/ext/pdo_odbc/odbc_stmt.c	2025-01-23 00:30:24.886905826 +0100
+@@ -89,7 +89,7 @@
+ }
+ 
+ static int pdo_odbc_ucs22utf8(pdo_stmt_t *stmt, int is_unicode, const char *buf,
+-	zend_ulong buflen, zend_ulong *outlen)
++	zend_ulong buflen, size_t *outlen)
+ {
+ #ifdef PHP_WIN32
+ 	if (is_unicode && buflen) {
+@@ -487,9 +487,9 @@
+ 				P = param->driver_data;
+ 
+ 				if (P->outbuf) {
+-					zend_ulong ulen;
++					size_t ulen;
+ 					char *srcbuf;
+-					zend_ulong srclen = 0;
++					size_t srclen = 0;
+ 
+ 					if (Z_ISREF(param->parameter)) {
+ 						parameter = Z_REFVAL(param->parameter);
+@@ -646,11 +646,11 @@
+ 	return 1;
+ }
+ 
+-static int odbc_stmt_get_col(pdo_stmt_t *stmt, int colno, char **ptr, zend_ulong *len, int *caller_frees)
++static int odbc_stmt_get_col(pdo_stmt_t *stmt, int colno, char **ptr, size_t *len, int *caller_frees)
+ {
+ 	pdo_odbc_stmt *S = (pdo_odbc_stmt*)stmt->driver_data;
+ 	pdo_odbc_column *C = &S->cols[colno];
+-	zend_ulong ulen;
++	size_t ulen;
+ 
+ 	/* if it is a column containing "long" data, perform late binding now */
+ 	if (C->is_long) {
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/php.git/commitdiff/6f09f2e918484e21decfe1c8583f5a0ffab40951



More information about the pld-cvs-commit mailing list