summaryrefslogtreecommitdiff
path: root/ext/session/tests/bug60634_error_4.phpt
diff options
context:
space:
mode:
authorOndřej Surý <ondrej@sury.org>2012-01-11 15:43:42 +0100
committerOndřej Surý <ondrej@sury.org>2012-01-11 15:43:42 +0100
commit8f1428d29ef91d74b4d272af171675f2971eb15b (patch)
treea1f4f4d7dc5bfe8096806dd5c5266634e19fa07a /ext/session/tests/bug60634_error_4.phpt
parentc6e4182351e0173fe58de141e143aac2eacf5efe (diff)
downloadphp-upstream/5.3.9.tar.gz
Imported Upstream version 5.3.9upstream/5.3.9
Diffstat (limited to 'ext/session/tests/bug60634_error_4.phpt')
-rw-r--r--ext/session/tests/bug60634_error_4.phpt48
1 files changed, 48 insertions, 0 deletions
diff --git a/ext/session/tests/bug60634_error_4.phpt b/ext/session/tests/bug60634_error_4.phpt
new file mode 100644
index 000000000..60bc0dcf5
--- /dev/null
+++ b/ext/session/tests/bug60634_error_4.phpt
@@ -0,0 +1,48 @@
+--TEST--
+Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) - exception in write after exec
+--XFAIL--
+Long term low priority bug, working on it
+--INI--
+session.save_path=
+session.name=PHPSESSID
+--SKIPIF--
+<?php include('skipif.inc'); ?>
+--FILE--
+<?php
+
+ob_start();
+
+function open($save_path, $session_name) {
+ return true;
+}
+
+function close() {
+ echo "close: goodbye cruel world\n";
+ exit;
+}
+
+function read($id) {
+ return '';
+}
+
+function write($id, $session_data) {
+ echo "write: goodbye cruel world\n";
+ throw new Exception;
+}
+
+function destroy($id) {
+ return true;
+}
+
+function gc($maxlifetime) {
+ return true;
+}
+
+session_set_save_handler('open', 'close', 'read', 'write', 'destroy', 'gc');
+session_start();
+
+?>
+--EXPECTF--
+write: goodbye cruel world
+
+Fatal error: Uncaught exception 'Exception' in %s