com php-src: add test for bug #70861: ext/pdo_pgsql/tests/bug 70861.phpt

From: Date: Thu, 05 Nov 2015 18:48:08 +0000
Subject: com php-src: add test for bug #70861: ext/pdo_pgsql/tests/bug 70861.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-89602@lists.php.net to get a copy of this message
Commit: 1184f0aca5a4fafc893f131f6012dc44cf5846c4 Author: Anatol Belski <ab@php.net> Thu, 5 Nov 2015 19:48:08 +0100 Parents: 1fcadf67e652622577ab0467e40c812e132ec9f3 Branches: PHP-7.0 master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=1184f0aca5a4fafc893f131f6012dc44cf5846c4 Log: add test for bug #70861 Bugs: https://bugs.php.net/70861 Changed paths: A ext/pdo_pgsql/tests/bug70861.phpt Diff: diff --git a/ext/pdo_pgsql/tests/bug70861.phpt b/ext/pdo_pgsql/tests/bug70861.phpt new file mode 100644 index 0000000...7edebba --- /dev/null +++ b/ext/pdo_pgsql/tests/bug70861.phpt @@ -0,0 +1,46 @@ +--TEST-- +Bug #70861 Segmentation fault in pdo_parse_params() during Drupal 8 test suite +--SKIPIF-- +<?php +if (!extension_loaded('pdo') || !extension_loaded('pdo_pgsql')) die('skip not loaded'); +require dirname(__FILE__) . '/config.inc'; +require dirname(__FILE__) . '/.../../../ext/pdo/tests/pdo_test.inc'; +PDOTest::skip(); +?> +--FILE-- +<?php +require dirname(__FILE__) . '/../../../ext/pdo/tests/pdo_test.inc'; +$db = PDOTest::test_factory(dirname(__FILE__) . '/common.phpt'); + +$db->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, true); + +try { + @$db->query("SET bytea_output = 'escape'"); +} catch (Exception $e) { +} + +$db->query('DROP TABLE IF EXISTS test_blob_crash CASCADE'); +$db->query('CREATE TABLE test_blob_crash (id SERIAL NOT NULL, blob1 BYTEA)'); + +class HelloWrapper { + public function stream_open() { return true; } + public function stream_eof() { return true; } + public function stream_read() { return NULL; } + public function stream_stat() { return array(); } +} +stream_wrapper_register("hello", "HelloWrapper"); + +$f = fopen("hello://there", "r"); + +$stmt = $db->prepare("INSERT INTO test_one_blob (blob1) VALUES (:foo)", array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL)); + +$stmt->bindparam(':foo', $f, PDO::PARAM_LOB); +$stmt->execute(); + +fclose($f); + +?> ++++DONE+++ +--EXPECTF-- +%a ++++DONE+++

« previous php.cvs (#89602) next »