Skip to content

Commit 1d461a6

Browse files
committed
- MFH
1 parent b1cebf3 commit 1d461a6

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

ext/pdo/pdo_stmt.c

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,6 @@ static int really_register_bound_param(struct pdo_bound_param_data *param, pdo_s
283283
param->stmt = stmt;
284284
param->is_param = is_param;
285285

286-
ZVAL_ADDREF(param->parameter);
287286
if (param->driver_params) {
288287
ZVAL_ADDREF(param->driver_params);
289288
}
@@ -395,7 +394,6 @@ static PHP_METHOD(PDOStatement, execute)
395394
zval_ptr_dtor(&param.parameter);
396395
RETURN_FALSE;
397396
}
398-
zval_ptr_dtor(&param.parameter);
399397

400398
zend_hash_move_forward(Z_ARRVAL_P(input_params));
401399
}
@@ -1472,6 +1470,7 @@ static int register_bound_param(INTERNAL_FUNCTION_PARAMETERS, pdo_stmt_t *stmt,
14721470
return 0;
14731471
}
14741472

1473+
ZVAL_ADDREF(param.parameter);
14751474
return really_register_bound_param(&param, stmt, is_param TSRMLS_CC);
14761475
} /* }}} */
14771476

@@ -1490,16 +1489,17 @@ static PHP_METHOD(PDOStatement, bindValue)
14901489
if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz/|l", &param.name,
14911490
&param.namelen, &param.parameter, &param.param_type)) {
14921491
RETURN_FALSE;
1493-
}
1492+
}
14941493
}
1495-
1494+
14961495
if (param.paramno > 0) {
14971496
--param.paramno; /* make it zero-based internally */
14981497
} else if (!param.name) {
14991498
pdo_raise_impl_error(stmt->dbh, stmt, "HY093", "Columns/Parameters are 1-based" TSRMLS_CC);
15001499
RETURN_FALSE;
15011500
}
1502-
1501+
1502+
ZVAL_ADDREF(param.parameter);
15031503
RETURN_BOOL(really_register_bound_param(&param, stmt, TRUE TSRMLS_CC));
15041504
}
15051505
/* }}} */
@@ -1657,6 +1657,7 @@ static PHP_METHOD(PDOStatement, getColumnMeta)
16571657
pdo_raise_impl_error(stmt->dbh, stmt, "42P10", "column number must be non-negative" TSRMLS_CC);
16581658
RETURN_FALSE;
16591659
}
1660+
16601661
if (!stmt->methods->get_column_meta) {
16611662
pdo_raise_impl_error(stmt->dbh, stmt, "IM001", "driver doesn't support meta data" TSRMLS_CC);
16621663
RETURN_FALSE;

0 commit comments

Comments
 (0)