[PECL-CVS] [pecl-database-pdo_oci] main: Update PDO_OCI constants registration for PHP 8.5+

[email protected] (X3N0N via GitHub)
Newsgroups php.pecl.cvs
Message-ID <[email protected]>
Author: X3N0N (wantedxnn)
Committer: GitHub (web-flow)
Pusher: sharadraju
Date: 2025-10-23T13:11:17+03:00

Commit: https://github.com/php/pecl-database-pdo_oci/commit/a8d203bd80485e2293d4c9f7a15256c1e1fb0187
Raw diff: https://github.com/php/pecl-database-pdo_oci/commit/a8d203bd80485e2293d4c9f7a15256c1e1fb0187.diff

Update PDO_OCI constants registration for PHP 8.5+

Changed paths:
  M  pdo_oci.c


Diff:

diff --git a/pdo_oci.c b/pdo_oci.c
index f951faa..49bc846 100644
--- a/pdo_oci.c
+++ b/pdo_oci.c
@@ -81,11 +81,21 @@ static MUTEX_T pdo_oci_env_mutex;
 /* {{{ PHP_MINIT_FUNCTION */
 PHP_MINIT_FUNCTION(pdo_oci)
 {
+#if PHP_VERSION_ID < 80500
 	REGISTER_PDO_CLASS_CONST_LONG("OCI_ATTR_ACTION", (zend_long)PDO_OCI_ATTR_ACTION);
 	REGISTER_PDO_CLASS_CONST_LONG("OCI_ATTR_CLIENT_INFO", (zend_long)PDO_OCI_ATTR_CLIENT_INFO);
 	REGISTER_PDO_CLASS_CONST_LONG("OCI_ATTR_CLIENT_IDENTIFIER", (zend_long)PDO_OCI_ATTR_CLIENT_IDENTIFIER);
 	REGISTER_PDO_CLASS_CONST_LONG("OCI_ATTR_MODULE", (zend_long)PDO_OCI_ATTR_MODULE);
 	REGISTER_PDO_CLASS_CONST_LONG("OCI_ATTR_CALL_TIMEOUT", (zend_long)PDO_OCI_ATTR_CALL_TIMEOUT);
+#else
+	zend_class_entry *pdo_ce = php_pdo_get_dbh_ce();
+
+	zend_declare_class_constant_long(pdo_ce, "OCI_ATTR_ACTION", sizeof("OCI_ATTR_ACTION") - 1, (zend_long)PDO_OCI_ATTR_ACTION);
+	zend_declare_class_constant_long(pdo_ce, "OCI_ATTR_CLIENT_INFO", sizeof("OCI_ATTR_CLIENT_INFO") - 1, (zend_long)PDO_OCI_ATTR_CLIENT_INFO);
+	zend_declare_class_constant_long(pdo_ce, "OCI_ATTR_CLIENT_IDENTIFIER", sizeof("OCI_ATTR_CLIENT_IDENTIFIER") - 1, (zend_long)PDO_OCI_ATTR_CLIENT_IDENTIFIER);
+	zend_declare_class_constant_long(pdo_ce, "OCI_ATTR_MODULE", sizeof("OCI_ATTR_MODULE") - 1, (zend_long)PDO_OCI_ATTR_MODULE);
+	zend_declare_class_constant_long(pdo_ce, "OCI_ATTR_CALL_TIMEOUT", sizeof("OCI_ATTR_CALL_TIMEOUT") - 1, (zend_long)PDO_OCI_ATTR_CALL_TIMEOUT);
+#endif
 
 	if (FAILURE == php_pdo_register_driver(&pdo_oci_driver)) {
 		return FAILURE;
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.