wez Sat Sep 24 14:55:56 2005 EDT Modified files: (Branch: PHP_5_1) /php-src/ext/pdo_sqlite sqlite_statement.c Log: Refs #34630 http://cvs.php.net/diff.php/php-src/ext/pdo_sqlite/sqlite_statement.c?r1=1.18.2.1&r2=1.18.2.2&ty=u Index: php-src/ext/pdo_sqlite/sqlite_statement.c diff -u php-src/ext/pdo_sqlite/sqlite_statement.c:1.18.2.1 php-src/ext/pdo_sqlite/sqlite_statement.c:1.18.2.2 --- php-src/ext/pdo_sqlite/sqlite_statement.c:1.18.2.1 Sun Sep 11 01:00:12 2005 +++ php-src/ext/pdo_sqlite/sqlite_statement.c Sat Sep 24 14:55:56 2005 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: sqlite_statement.c,v 1.18.2.1 2005/09/11 05:00:12 wez Exp $ */ +/* $Id: sqlite_statement.c,v 1.18.2.2 2005/09/24 18:55:56 wez Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -93,7 +93,6 @@ } switch (PDO_PARAM_TYPE(param->param_type)) { - case PDO_PARAM_LOB: case PDO_PARAM_STMT: return 0; @@ -103,7 +102,23 @@ } pdo_sqlite_error_stmt(stmt); return 0; - + + case PDO_PARAM_LOB: + if (Z_TYPE_P(param->parameter) == IS_RESOURCE) { + php_stream *stm; + php_stream_from_zval_no_verify(stm, ¶m->parameter); + if (stm) { + SEPARATE_ZVAL_IF_NOT_REF(¶m->parameter); + Z_TYPE_P(param->parameter) = IS_STRING; + Z_STRLEN_P(param->parameter) = php_stream_copy_to_mem(stm, + &Z_STRVAL_P(param->parameter), PHP_STREAM_COPY_ALL, 0); + } else { + pdo_raise_impl_error(stmt->dbh, stmt, "HY105", "Expected a stream resource"); + return 0; + } + } + /* fall through */ + case PDO_PARAM_STR: default: if (Z_TYPE_P(param->parameter) == IS_NULL) { @@ -113,9 +128,9 @@ } else { convert_to_string(param->parameter); if(SQLITE_OK == sqlite3_bind_text(S->stmt, param->paramno + 1, - Z_STRVAL_P(param->parameter), - Z_STRLEN_P(param->parameter), - SQLITE_STATIC)) { + Z_STRVAL_P(param->parameter), + Z_STRLEN_P(param->parameter), + SQLITE_STATIC)) { return 1; } }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php