From 4694e1c02039114915704f0206f1ffb7a0efe4ad Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Fri, 24 Apr 2015 18:08:18 +0200 Subject: Remove PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT Use the generic ATTR_EMULATE_PREPARES instead. --- ext/pdo_pgsql/pdo_pgsql.c | 1 - ext/pdo_pgsql/pgsql_driver.c | 14 ------- ext/pdo_pgsql/php_pdo_pgsql_int.h | 3 +- ext/pdo_pgsql/tests/bug48764.phpt | 84 +-------------------------------------- ext/pdo_pgsql/tests/bug68371.phpt | 13 ------ 5 files changed, 3 insertions(+), 112 deletions(-) (limited to 'ext/pdo_pgsql') diff --git a/ext/pdo_pgsql/pdo_pgsql.c b/ext/pdo_pgsql/pdo_pgsql.c index abb0ee1c39..83d243f072 100644 --- a/ext/pdo_pgsql/pdo_pgsql.c +++ b/ext/pdo_pgsql/pdo_pgsql.c @@ -81,7 +81,6 @@ ZEND_GET_MODULE(pdo_pgsql) */ PHP_MINIT_FUNCTION(pdo_pgsql) { - REGISTER_PDO_CLASS_CONST_LONG("PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT", PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT); REGISTER_PDO_CLASS_CONST_LONG("PGSQL_ATTR_DISABLE_PREPARES", PDO_PGSQL_ATTR_DISABLE_PREPARES); REGISTER_PDO_CLASS_CONST_LONG("PGSQL_TRANSACTION_IDLE", (zend_long)PGSQL_TRANSACTION_IDLE); REGISTER_PDO_CLASS_CONST_LONG("PGSQL_TRANSACTION_ACTIVE", (zend_long)PGSQL_TRANSACTION_ACTIVE); diff --git a/ext/pdo_pgsql/pgsql_driver.c b/ext/pdo_pgsql/pgsql_driver.c index 4c907cc631..0a7ce6368d 100644 --- a/ext/pdo_pgsql/pgsql_driver.c +++ b/ext/pdo_pgsql/pgsql_driver.c @@ -243,10 +243,6 @@ static int pgsql_handle_preparer(pdo_dbh_t *dbh, const char *sql, size_t sql_len spprintf(&S->cursor_name, 0, "pdo_crsr_%08x", ++H->stmt_counter); emulate = 1; } else if (driver_options) { - if (pdo_attr_lval(driver_options, PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT, H->disable_native_prepares) == 1) { - php_error_docref(NULL, E_DEPRECATED, "PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead"); - emulate = 1; - } if (pdo_attr_lval(driver_options, PDO_ATTR_EMULATE_PREPARES, H->emulate_prepares) == 1) { emulate = 1; } @@ -390,11 +386,6 @@ static int pdo_pgsql_get_attribute(pdo_dbh_t *dbh, zend_long attr, zval *return_ ZVAL_BOOL(return_value, H->emulate_prepares); break; - case PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT: - php_error_docref(NULL, E_DEPRECATED, "PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead"); - ZVAL_BOOL(return_value, H->disable_native_prepares); - break; - case PDO_PGSQL_ATTR_DISABLE_PREPARES: ZVAL_BOOL(return_value, H->disable_prepares); break; @@ -1156,11 +1147,6 @@ static int pdo_pgsql_set_attr(pdo_dbh_t *dbh, zend_long attr, zval *val) convert_to_long(val); H->emulate_prepares = 0 != Z_LVAL_P(val); return 1; - case PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT: - convert_to_long(val); - php_error_docref(NULL, E_DEPRECATED, "PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead"); - H->disable_native_prepares = 0 != Z_LVAL_P(val); - return 1; case PDO_PGSQL_ATTR_DISABLE_PREPARES: convert_to_long(val); H->disable_prepares = 0 != Z_LVAL_P(val); diff --git a/ext/pdo_pgsql/php_pdo_pgsql_int.h b/ext/pdo_pgsql/php_pdo_pgsql_int.h index d25cbff979..2f33e4efdf 100644 --- a/ext/pdo_pgsql/php_pdo_pgsql_int.h +++ b/ext/pdo_pgsql/php_pdo_pgsql_int.h @@ -90,8 +90,7 @@ extern struct pdo_stmt_methods pgsql_stmt_methods; #define pdo_pgsql_sqlstate(r) PQresultErrorField(r, PG_DIAG_SQLSTATE) enum { - PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT = PDO_ATTR_DRIVER_SPECIFIC, - PDO_PGSQL_ATTR_DISABLE_PREPARES, + PDO_PGSQL_ATTR_DISABLE_PREPARES = PDO_ATTR_DRIVER_SPECIFIC, }; struct pdo_pgsql_lob_self { diff --git a/ext/pdo_pgsql/tests/bug48764.phpt b/ext/pdo_pgsql/tests/bug48764.phpt index 83fa5655d8..715c60a68f 100644 --- a/ext/pdo_pgsql/tests/bug48764.phpt +++ b/ext/pdo_pgsql/tests/bug48764.phpt @@ -31,64 +31,20 @@ bug($db, array(PDO::ATTR_EMULATE_PREPARES => 0)); bug($db, array(PDO::ATTR_EMULATE_PREPARES => 1)); echo "Test 3\n"; -bug($db, array(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 0)); -bug($db, array(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 1)); - -echo "Test 4\n"; $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 1); bug($db); $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 0); bug($db); -echo "Test 5\n"; -$db->setAttribute(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT, 1); -bug($db); -$db->setAttribute(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT, 0); -bug($db); - - putenv('PDOTEST_ATTR='.serialize(array( PDO::ATTR_EMULATE_PREPARES => 1, ))); $db = PDOTest::factory('PDO', false); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); -echo "Test 6\n"; -bug($db); -bug($db, array(PDO::ATTR_EMULATE_PREPARES => 0)); -bug($db, array(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 0)); - - -putenv('PDOTEST_ATTR='.serialize(array( - PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 1, -))); - -$db = PDOTest::factory('PDO', false); -$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - -echo "Test 7\n"; -bug($db); -bug($db, array(PDO::ATTR_EMULATE_PREPARES => 0)); -bug($db, array(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 0)); - - -putenv('PDOTEST_ATTR='.serialize(array( - PDO::ATTR_EMULATE_PREPARES => 1, - PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 1, -))); - -$db = PDOTest::factory('PDO', false); -$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - -echo "Test 8\n"; +echo "Test 4\n"; bug($db); bug($db, array(PDO::ATTR_EMULATE_PREPARES => 0)); -bug($db, array(PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 0)); -bug($db, array( - PDO::ATTR_EMULATE_PREPARES => 0, - PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => 0, -)); - putenv('PDOTEST_ATTR'); @@ -111,44 +67,8 @@ Test 2 42P18 OK Test 3 -42P18 - -Deprecated: PDO::prepare(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -OK -Test 4 -OK -42P18 -Test 5 - -Deprecated: PDO::setAttribute(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d - -Deprecated: PDO::prepare(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -OK - -Deprecated: PDO::setAttribute(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -42P18 -Test 6 OK 42P18 -OK - -Deprecated: PDO::__construct(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -Test 7 - -Deprecated: PDO::prepare(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -OK - -Deprecated: PDO::prepare(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -OK -42P18 - -Deprecated: PDO::__construct(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -Test 8 - -Deprecated: PDO::prepare(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -OK - -Deprecated: PDO::prepare(): PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT is deprecated, use PDO::ATTR_EMULATE_PREPARES instead in %s on line %d -OK +Test 4 OK 42P18 diff --git a/ext/pdo_pgsql/tests/bug68371.phpt b/ext/pdo_pgsql/tests/bug68371.phpt index d599fda7c8..636b22f52e 100644 --- a/ext/pdo_pgsql/tests/bug68371.phpt +++ b/ext/pdo_pgsql/tests/bug68371.phpt @@ -16,7 +16,6 @@ $pdo->setAttribute (\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); $attrs = array( // Extensive test: default value and set+get values - PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => array(null, true, false), PDO::ATTR_EMULATE_PREPARES => array(null, true, false), PDO::PGSQL_ATTR_DISABLE_PREPARES => array(null, true, false), @@ -68,18 +67,6 @@ foreach ($attrs as $a => $vals) { ?> --EXPECTF-- -Deprecated: PDO::getAttribute(): %s -bool(false) - -Deprecated: PDO::setAttribute(): %s - -Deprecated: PDO::getAttribute(): %s -OK - -Deprecated: PDO::setAttribute(): %s - -Deprecated: PDO::getAttribute(): %s -OK bool(false) OK OK -- cgit v1.2.1