Fixed memory leak on unused bound name parameters.

This commit is contained in:
Ilia Alshanetsky 2006-08-01 15:06:01 +00:00
parent 5f7750c6e6
commit 2b5a53d6b6

View File

@ -1538,7 +1538,11 @@ static int register_bound_param(INTERNAL_FUNCTION_PARAMETERS, pdo_stmt_t *stmt,
}
ZVAL_ADDREF(param.parameter);
return really_register_bound_param(&param, stmt, is_param TSRMLS_CC);
if (!really_register_bound_param(&param, stmt, is_param TSRMLS_CC)) {
zval_ptr_dtor(&(param.parameter));
return 0;
}
return 1;
} /* }}} */
/* {{{ proto bool PDOStatement::bindValue(mixed $paramno, mixed $param [, int $type ])
@ -1567,7 +1571,11 @@ static PHP_METHOD(PDOStatement, bindValue)
}
ZVAL_ADDREF(param.parameter);
RETURN_BOOL(really_register_bound_param(&param, stmt, TRUE TSRMLS_CC));
if (!really_register_bound_param(&param, stmt, TRUE TSRMLS_CC)) {
zval_ptr_dtor(&(param.parameter));
RETURN_FALSE;
}
RETURN_TRUE;
}
/* }}} */