diff options
Diffstat (limited to 'ext/oci8/oci8.c')
-rw-r--r-- | ext/oci8/oci8.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/oci8/oci8.c b/ext/oci8/oci8.c index 68e3d41142..a2b0f01a5f 100644 --- a/ext/oci8/oci8.c +++ b/ext/oci8/oci8.c @@ -697,7 +697,9 @@ _oci_bind_post_exec(void *data TSRMLS_DC) if (bind->indicator == -1) { /* NULL */ zval *val = bind->zval; - *Z_STRVAL_P(val) = '\0'; /* XXX avoid warning in debug mode */ + if (Z_TYPE_P(val) == IS_STRING && (Z_STRVAL_P(val) != empty_string)) { + *Z_STRVAL_P(val) = '\0'; /* XXX avoid warning in debug mode */ + } zval_dtor(val); ZVAL_NULL(val); } else if (Z_TYPE_P(bind->zval) == IS_STRING && (Z_STRVAL_P(bind->zval) != empty_string)) { |