aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Meskes <meskes@postgresql.org>1999-11-23 10:32:16 +0000
committerMichael Meskes <meskes@postgresql.org>1999-11-23 10:32:16 +0000
commit36b0f67335d38235c21118fc3a3e2619450193a3 (patch)
tree41ca61480a700b9d1de354c903872b7137e62a39 /src
parent7e5e7ab71bdad814361d5fa52a3f30d196a1522c (diff)
downloadpostgresql-36b0f67335d38235c21118fc3a3e2619450193a3.tar.gz
postgresql-36b0f67335d38235c21118fc3a3e2619450193a3.zip
*** empty log message ***
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/ChangeLog6
-rw-r--r--src/interfaces/ecpg/lib/Makefile.in4
-rw-r--r--src/interfaces/ecpg/lib/ecpglib.c10
3 files changed, 17 insertions, 3 deletions
diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog
index adbe47ed4b8..4742b55bb1f 100644
--- a/src/interfaces/ecpg/ChangeLog
+++ b/src/interfaces/ecpg/ChangeLog
@@ -720,3 +720,9 @@ Mon Nov 22 18:26:34 CET 1999
- Clean up parser.
- Set library version to 3.0.6.
- Set ecpg version to 2.6.10.
+
+Tue Nov 23 07:59:01 CET 1999
+
+ - Ignore locale setting in ECPGdo.
+ - Set library version to 3.0.7.
+
diff --git a/src/interfaces/ecpg/lib/Makefile.in b/src/interfaces/ecpg/lib/Makefile.in
index 6a6955f7d87..00265d9443f 100644
--- a/src/interfaces/ecpg/lib/Makefile.in
+++ b/src/interfaces/ecpg/lib/Makefile.in
@@ -6,13 +6,13 @@
# Copyright (c) 1994, Regents of the University of California
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/Makefile.in,v 1.51 1999/11/22 12:48:46 meskes Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/Makefile.in,v 1.52 1999/11/23 10:32:16 meskes Exp $
#
#-------------------------------------------------------------------------
NAME= ecpg
SO_MAJOR_VERSION= 3
-SO_MINOR_VERSION= 0.6
+SO_MINOR_VERSION= 0.7
SRCDIR= @top_srcdir@
include $(SRCDIR)/Makefile.global
diff --git a/src/interfaces/ecpg/lib/ecpglib.c b/src/interfaces/ecpg/lib/ecpglib.c
index 9112ebb55b8..2d16cb72471 100644
--- a/src/interfaces/ecpg/lib/ecpglib.c
+++ b/src/interfaces/ecpg/lib/ecpglib.c
@@ -18,6 +18,7 @@
#include <stdarg.h>
#include <string.h>
#include <ctype.h>
+#include <locale.h>
#include <libpq-fe.h>
#include <libpq/pqcomm.h>
@@ -656,7 +657,6 @@ ECPGexecute(struct statement * stmt)
}
else
{
-/* sqlca.sqlerrd[2] = 0;*/
var = stmt->outlist;
switch (PQresultStatus(results))
{
@@ -1050,6 +1050,11 @@ ECPGdo(int lineno, const char *connection_name, char *query,...)
struct statement *stmt;
struct connection *con = get_connection(connection_name);
bool status;
+ char *locale = setlocale(LC_NUMERIC, NULL);
+
+ /* Make sure we do NOT honor the locale for numeric input/output */
+ /* since the database wants teh standard decimal point */
+ setlocale(LC_NUMERIC, "C");
if (!ecpg_init(con, connection_name, lineno))
return(false);
@@ -1069,6 +1074,9 @@ ECPGdo(int lineno, const char *connection_name, char *query,...)
status = ECPGexecute(stmt);
free_statement(stmt);
+
+ /* and reser value so our application is not affected */
+ setlocale(LC_NUMERIC, locale);
return (status);
}