summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--ext/oci8/oci8_lob.c4
-rw-r--r--ext/oci8/php_oci8_int.h8
3 files changed, 8 insertions, 6 deletions
diff --git a/NEWS b/NEWS
index 21918c3f2b..4f88c191bd 100644
--- a/NEWS
+++ b/NEWS
@@ -56,6 +56,8 @@ PHP NEWS
sets in pdo_mysql). (Ilia)
- Fixed bug #39754 (Some POSIX extension functions not thread safe).
(Ilia, wharmby at uk dot ibm dot com)
+- Fixed bug #39732 (oci_bind_array_by_name doesn't work on Solaris 64bit).
+ (Tony)
- Fixed bug #39724 (Broken build due to spl/filter usage of pcre extension).
(Tony, Ilia)
- Fixed bug #39718 (possible crash if assert.callback is set in ini). (Ilia)
diff --git a/ext/oci8/oci8_lob.c b/ext/oci8/oci8_lob.c
index e459f1fa3d..b95b07ad50 100644
--- a/ext/oci8/oci8_lob.c
+++ b/ext/oci8/oci8_lob.c
@@ -493,7 +493,7 @@ int php_oci_lob_get_buffering (php_oci_descriptor *descriptor)
int php_oci_lob_copy (php_oci_descriptor *descriptor_dest, php_oci_descriptor *descriptor_from, long length TSRMLS_DC)
{
php_oci_connection *connection = descriptor_dest->connection;
- int length_dest, length_from, copy_len;
+ ub4 length_dest, length_from, copy_len;
if (php_oci_lob_get_length(descriptor_dest, &length_dest TSRMLS_CC)) {
return 1;
@@ -760,7 +760,7 @@ int php_oci_lob_truncate (php_oci_descriptor *descriptor, long new_lob_length TS
/* {{{ php_oci_lob_erase()
Erase (or fill with whitespaces, depending on LOB type) the LOB (or its part) */
-int php_oci_lob_erase (php_oci_descriptor *descriptor, long offset, long length, ub4 *bytes_erased TSRMLS_DC)
+int php_oci_lob_erase (php_oci_descriptor *descriptor, long offset, ub4 length, ub4 *bytes_erased TSRMLS_DC)
{
php_oci_connection *connection = descriptor->connection;
OCILobLocator *lob = descriptor->descriptor;
diff --git a/ext/oci8/php_oci8_int.h b/ext/oci8/php_oci8_int.h
index 1de4da54fd..50f8719e06 100644
--- a/ext/oci8/php_oci8_int.h
+++ b/ext/oci8/php_oci8_int.h
@@ -183,9 +183,9 @@ typedef struct { /* php_oci_bind {{{ */
/* ub2 *indicators; */
ub2 *element_lengths;
/* ub2 *retcodes; */
- long current_length;
- long old_length;
- long max_length;
+ ub4 current_length;
+ ub4 old_length;
+ ub4 max_length;
long type;
} array;
sb2 indicator; /* -1 means NULL */
@@ -337,7 +337,7 @@ void php_oci_lob_free(php_oci_descriptor * TSRMLS_DC);
int php_oci_lob_import(php_oci_descriptor *descriptor, char * TSRMLS_DC);
int php_oci_lob_append (php_oci_descriptor *, php_oci_descriptor * TSRMLS_DC);
int php_oci_lob_truncate (php_oci_descriptor *, long TSRMLS_DC);
-int php_oci_lob_erase (php_oci_descriptor *, long, long, ub4 * TSRMLS_DC);
+int php_oci_lob_erase (php_oci_descriptor *, long, ub4, ub4 * TSRMLS_DC);
int php_oci_lob_is_equal (php_oci_descriptor *, php_oci_descriptor *, boolean * TSRMLS_DC);
#if defined(HAVE_OCI_LOB_READ2)
sb4 php_oci_lob_callback (dvoid *ctxp, CONST dvoid *bufxp, oraub8 len, ub1 piece, dvoid **changed_bufpp, oraub8 *changed_lenp);