Skip to content

Commit 4de7dd2

Browse files
committed
pdo update
1 parent 26cb075 commit 4de7dd2

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

ext/pdo/pdo_stmt.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,9 +271,14 @@ static bool really_register_bound_param(struct pdo_bound_param_data *param, pdo_
271271
}
272272

273273
if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_STR && param->max_value_len <= 0 && !Z_ISNULL_P(parameter)) {
274+
zend_bool is_false = (Z_TYPE_P(parameter) == IS_FALSE);
274275
if (!try_convert_to_string(parameter)) {
275276
return false;
276277
}
278+
/* the pgsql's driver does not handle empty string for false bound parameters */
279+
if (is_false) {
280+
ZVAL_STR(parameter, ZSTR_CHAR('0'));
281+
}
277282
} else if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_INT && (Z_TYPE_P(parameter) == IS_FALSE || Z_TYPE_P(parameter) == IS_TRUE)) {
278283
convert_to_long(parameter);
279284
} else if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_BOOL && Z_TYPE_P(parameter) == IS_LONG) {

0 commit comments

Comments
 (0)