diff options
Diffstat (limited to 'ext/mysqli/mysqli_warning.c')
-rw-r--r-- | ext/mysqli/mysqli_warning.c | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/ext/mysqli/mysqli_warning.c b/ext/mysqli/mysqli_warning.c index 27f153a3f3..5ba18c4f45 100644 --- a/ext/mysqli/mysqli_warning.c +++ b/ext/mysqli/mysqli_warning.c @@ -197,49 +197,65 @@ PHP_METHOD(mysqli_warning, next) /* }}} */ /* {{{ property mysqli_warning_message */ -static -zval *mysqli_warning_message(mysqli_object *obj, zval *retval) +static int mysqli_warning_message(mysqli_object *obj, zval *retval, zend_bool quiet) { MYSQLI_WARNING *w; if (!obj->ptr || !((MYSQLI_RESOURCE *)(obj->ptr))->ptr) { - return NULL; + if (!quiet) { + php_error_docref(NULL, E_WARNING, "Couldn't fetch %s", ZSTR_VAL(obj->zo.ce->name)); + } + ZVAL_NULL(retval); + + return FAILURE; } w = (MYSQLI_WARNING *)((MYSQLI_RESOURCE *)(obj->ptr))->ptr; ZVAL_COPY(retval, &w->reason); - return retval; + + return SUCCESS; } /* }}} */ /* {{{ property mysqli_warning_sqlstate */ -static -zval *mysqli_warning_sqlstate(mysqli_object *obj, zval *retval) +static int mysqli_warning_sqlstate(mysqli_object *obj, zval *retval, zend_bool quiet) { MYSQLI_WARNING *w; if (!obj->ptr || !((MYSQLI_RESOURCE *)(obj->ptr))->ptr) { - return NULL; + if (!quiet) { + php_error_docref(NULL, E_WARNING, "Couldn't fetch %s", ZSTR_VAL(obj->zo.ce->name)); + } + ZVAL_NULL(retval); + + return FAILURE; } w = (MYSQLI_WARNING *)((MYSQLI_RESOURCE *)(obj->ptr))->ptr; ZVAL_COPY(retval, &w->sqlstate); - return retval; + + return SUCCESS; } /* }}} */ /* {{{ property mysqli_warning_error */ -static -zval *mysqli_warning_errno(mysqli_object *obj, zval *retval) +static int mysqli_warning_errno(mysqli_object *obj, zval *retval, zend_bool quiet) { MYSQLI_WARNING *w; if (!obj->ptr || !((MYSQLI_RESOURCE *)(obj->ptr))->ptr) { - return NULL; + if (!quiet) { + php_error_docref(NULL, E_WARNING, "Couldn't fetch %s", ZSTR_VAL(obj->zo.ce->name)); + } + ZVAL_NULL(retval); + + return FAILURE; } + w = (MYSQLI_WARNING *)((MYSQLI_RESOURCE *)(obj->ptr))->ptr; ZVAL_LONG(retval, w->errorno); - return retval; + + return SUCCESS; } /* }}} */ |