diff options
author | Wez Furlong <wez@php.net> | 2005-02-09 14:32:04 +0000 |
---|---|---|
committer | Wez Furlong <wez@php.net> | 2005-02-09 14:32:04 +0000 |
commit | ad60999858aa702c0e1944e209dbaaba3be3b92c (patch) | |
tree | 4c0aabed5c17bf3e26273f8ec3563d5ef633c020 /ext/pdo_sqlite/sqlite_statement.c | |
parent | 08592b38da80aded6d7740dd259874d5cb5b77c2 (diff) | |
download | php-git-ad60999858aa702c0e1944e209dbaaba3be3b92c.tar.gz |
proper fix for PECL Bug #3412
Diffstat (limited to 'ext/pdo_sqlite/sqlite_statement.c')
-rw-r--r-- | ext/pdo_sqlite/sqlite_statement.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/ext/pdo_sqlite/sqlite_statement.c b/ext/pdo_sqlite/sqlite_statement.c index a2f5ca0826..415f494f0c 100644 --- a/ext/pdo_sqlite/sqlite_statement.c +++ b/ext/pdo_sqlite/sqlite_statement.c @@ -113,10 +113,15 @@ static int pdo_sqlite_stmt_param_hook(pdo_stmt_t *stmt, struct pdo_bound_param_d case PDO_PARAM_STR: default: - i = sqlite3_bind_text(S->stmt, param->paramno + 1, - Z_STRVAL_P(param->parameter), - Z_STRLEN_P(param->parameter), - SQLITE_STATIC); + if (Z_TYPE_P(param->parameter) == IS_NULL) { + i = sqlite3_bind_null(S->stmt, param->paramno + 1); + } else { + convert_to_string(param->parameter); + i = sqlite3_bind_text(S->stmt, param->paramno + 1, + Z_STRVAL_P(param->parameter), + Z_STRLEN_P(param->parameter), + SQLITE_STATIC); + } if (i == SQLITE_OK) return 1; pdo_sqlite_error_stmt(stmt); |