summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2011-11-08 10:11:25 +0000
committerDmitry Stogov <dmitry@php.net>2011-11-08 10:11:25 +0000
commite86830273b4fb86a69cdb634a603be8a04e83846 (patch)
treef08674fe7d507d402e9bccccd6f152575221388c /ext
parent326c58df666080deceb6fdcb5d7353a626c2e264 (diff)
downloadphp-git-e86830273b4fb86a69cdb634a603be8a04e83846.tar.gz
Fixed bug #60104 (Segmentation Fault in pdo_sqlite when using sqliteCreateFunction())
Diffstat (limited to 'ext')
-rwxr-xr-xext/pdo/pdo_dbh.c4
-rw-r--r--ext/pdo_sqlite/tests/bug60104.phpt2
2 files changed, 2 insertions, 4 deletions
diff --git a/ext/pdo/pdo_dbh.c b/ext/pdo/pdo_dbh.c
index d9035f23fb..fbf43d8c34 100755
--- a/ext/pdo/pdo_dbh.c
+++ b/ext/pdo/pdo_dbh.c
@@ -1310,9 +1310,9 @@ int pdo_hash_methods(pdo_dbh_t *dbh, int kind TSRMLS_DC)
ifunc->scope = dbh->std.ce;
ifunc->prototype = NULL;
if (funcs->flags) {
- ifunc->fn_flags = funcs->flags;
+ ifunc->fn_flags = funcs->flags | ZEND_ACC_NEVER_CACHE;
} else {
- ifunc->fn_flags = ZEND_ACC_PUBLIC;
+ ifunc->fn_flags = ZEND_ACC_PUBLIC | ZEND_ACC_NEVER_CACHE;
}
if (funcs->arg_info) {
zend_internal_function_info *info = (zend_internal_function_info*)funcs->arg_info;
diff --git a/ext/pdo_sqlite/tests/bug60104.phpt b/ext/pdo_sqlite/tests/bug60104.phpt
index 44ca273c12..fd36b57b76 100644
--- a/ext/pdo_sqlite/tests/bug60104.phpt
+++ b/ext/pdo_sqlite/tests/bug60104.phpt
@@ -1,7 +1,5 @@
--TEST--
Bug #60104 (Segmentation Fault in pdo_sqlite when using sqliteCreateFunction())
---XFAIL--
-see bug #60104, not fix yet
--SKIPIF--
<?php
if (!extension_loaded('pdo_sqlite')) print 'skip not loaded';