summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorChristopher Kings-Lynne <chriskl@php.net>2005-03-20 02:46:02 +0000
committerChristopher Kings-Lynne <chriskl@php.net>2005-03-20 02:46:02 +0000
commit721d34bebc88ef88a157e4b7f93a6d75fd7f0ece (patch)
tree39e02d2ef60c76dfe29bf77b74fb45bf8981a443 /ext
parent1b42ccfbff992c755a825e1c1c639de8c2652878 (diff)
downloadphp-git-721d34bebc88ef88a157e4b7f93a6d75fd7f0ece.tar.gz
Two of the diagnostic definitions were added in 8.0. Add appropriate #ifdefs.
Diffstat (limited to 'ext')
-rw-r--r--ext/pgsql/pgsql.c11
-rw-r--r--ext/pgsql/tests/03sync_query.phpt10
2 files changed, 17 insertions, 4 deletions
diff --git a/ext/pgsql/pgsql.c b/ext/pgsql/pgsql.c
index 9a9c81cbc6..abb6c1ba9a 100644
--- a/ext/pgsql/pgsql.c
+++ b/ext/pgsql/pgsql.c
@@ -491,8 +491,12 @@ PHP_MINIT_FUNCTION(pgsql)
REGISTER_LONG_CONSTANT("PGSQL_DIAG_MESSAGE_DETAIL", PG_DIAG_MESSAGE_DETAIL, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PGSQL_DIAG_MESSAGE_HINT", PG_DIAG_MESSAGE_HINT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PGSQL_DIAG_STATEMENT_POSITION", PG_DIAG_STATEMENT_POSITION, CONST_CS | CONST_PERSISTENT);
+#ifdef PG_DIAG_INTERNAL_POSITION
REGISTER_LONG_CONSTANT("PGSQL_DIAG_INTERNAL_POSITION", PG_DIAG_INTERNAL_POSITION, CONST_CS | CONST_PERSISTENT);
+#endif
+#ifdef PG_DIAG_INTERNAL_QUERY
REGISTER_LONG_CONSTANT("PGSQL_DIAG_INTERNAL_QUERY", PG_DIAG_INTERNAL_QUERY, CONST_CS | CONST_PERSISTENT);
+#endif
REGISTER_LONG_CONSTANT("PGSQL_DIAG_CONTEXT", PG_DIAG_CONTEXT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PGSQL_DIAG_SOURCE_FILE", PG_DIAG_SOURCE_FILE, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PGSQL_DIAG_SOURCE_LINE", PG_DIAG_SOURCE_LINE, CONST_CS | CONST_PERSISTENT);
@@ -3484,8 +3488,11 @@ PHP_FUNCTION(pg_result_error_field)
RETURN_FALSE;
}
if (fieldcode & (PG_DIAG_SEVERITY|PG_DIAG_SQLSTATE|PG_DIAG_MESSAGE_PRIMARY|PG_DIAG_MESSAGE_DETAIL
- |PG_DIAG_MESSAGE_HINT|PG_DIAG_STATEMENT_POSITION|PG_DIAG_INTERNAL_POSITION
- |PG_DIAG_INTERNAL_QUERY|PG_DIAG_CONTEXT|PG_DIAG_SOURCE_FILE|PG_DIAG_SOURCE_LINE
+ |PG_DIAG_MESSAGE_HINT|PG_DIAG_STATEMENT_POSITION
+#ifdef PG_DIAG_INTERNAL_POSITION && PG_DIAG_INTERNAL_QUERY
+ |PG_DIAG_INTERNAL_POSITION|PG_DIAG_INTERNAL_QUERY
+#endif
+ |PG_DIAG_CONTEXT|PG_DIAG_SOURCE_FILE|PG_DIAG_SOURCE_LINE
|PG_DIAG_SOURCE_FUNCTION)) {
field = (char *)PQresultErrorField(pgsql_result, fieldcode);
if (field == NULL) {
diff --git a/ext/pgsql/tests/03sync_query.phpt b/ext/pgsql/tests/03sync_query.phpt
index a2ea7de4e9..8a61496e00 100644
--- a/ext/pgsql/tests/03sync_query.phpt
+++ b/ext/pgsql/tests/03sync_query.phpt
@@ -38,8 +38,14 @@ pg_result_error_field($result, PGSQL_DIAG_MESSAGE_PRIMARY);
pg_result_error_field($result, PGSQL_DIAG_MESSAGE_DETAIL);
pg_result_error_field($result, PGSQL_DIAG_MESSAGE_HINT);
pg_result_error_field($result, PGSQL_DIAG_STATEMENT_POSITION);
-pg_result_error_field($result, PGSQL_DIAG_INTERNAL_POSITION);
-pg_result_error_field($result, PGSQL_DIAG_INTERNAL_QUERY);
+if (defined('PGSQL_DIAG_INTERNAL_POSITION'))
+{
+ pg_result_error_field($result, PGSQL_DIAG_INTERNAL_POSITION);
+}
+if (defined('PGSQL_DIAG_INTERNAL_QUERY'))
+{
+ pg_result_error_field($result, PGSQL_DIAG_INTERNAL_QUERY);
+}
pg_result_error_field($result, PGSQL_DIAG_CONTEXT);
pg_result_error_field($result, PGSQL_DIAG_SOURCE_FILE);
pg_result_error_field($result, PGSQL_DIAG_SOURCE_LINE);