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
