summaryrefslogtreecommitdiff
path: root/ext/oci8/oci8_statement.c
diff options
context:
space:
mode:
authorAntony Dovgal <tony2001@php.net>2006-04-12 19:21:35 +0000
committerAntony Dovgal <tony2001@php.net>2006-04-12 19:21:35 +0000
commit5751903b1baad353521a47a0421c57ea16f614f5 (patch)
tree1ec26039a8e9be52d8468980a0d08b8cb8c7eee2 /ext/oci8/oci8_statement.c
parent2d2f1cf0c696b49640dca7a034924131f6946737 (diff)
downloadphp-git-5751903b1baad353521a47a0421c57ea16f614f5.tar.gz
fix #37059 (oci_bind_by_name() doesn't support RAW and LONG RAW fields)
add tests
Diffstat (limited to 'ext/oci8/oci8_statement.c')
-rw-r--r--ext/oci8/oci8_statement.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/oci8/oci8_statement.c b/ext/oci8/oci8_statement.c
index f930fdaa77..16a2b7e182 100644
--- a/ext/oci8/oci8_statement.c
+++ b/ext/oci8/oci8_statement.c
@@ -493,6 +493,9 @@ int php_oci_statement_execute(php_oci_statement *statement, ub4 mode TSRMLS_DC)
case SQLT_BIN:
default:
define_type = SQLT_CHR;
+ if (outcol->data_type == SQLT_BIN) {
+ define_type = SQLT_BIN;
+ }
if ((outcol->data_type == SQLT_DAT) || (outcol->data_type == SQLT_NUM)
#ifdef SQLT_TIMESTAMP
|| (outcol->data_type == SQLT_TIMESTAMP)
@@ -813,6 +816,9 @@ int php_oci_bind_by_name(php_oci_statement *statement, char *name, int name_len,
mode = OCI_DEFAULT;
break;
+ case SQLT_LBI:
+ case SQLT_BIN:
+ case SQLT_LNG:
case SQLT_CHR:
/* this is the default case when type was not specified */
convert_to_string(var);