[PECL-CVS] [pecl-database-pdo_oci] main: Merge pull request #21 from wantedxnn/main

[email protected] (Sharad Chandran R via GitHub)
Newsgroups php.pecl.cvs
Message-ID <[email protected]>
Author: Sharad Chandran R (sharadraju)
Committer: GitHub (web-flow)
Pusher: sharadraju
Date: 2025-12-30T06:23:49+05:30

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

Merge pull request #21 from wantedxnn/main

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.