diff options
author | Michael Meskes <meskes@postgresql.org> | 2000-04-05 09:05:40 +0000 |
---|---|---|
committer | Michael Meskes <meskes@postgresql.org> | 2000-04-05 09:05:40 +0000 |
commit | 9fb20f105fc70db9b9c46240b4090ec597f28fa0 (patch) | |
tree | 7f876d53d90315d1555fe10338f8e149f290340b /src/interfaces/ecpg/lib | |
parent | 5f39ba814239688813f15f4bfe50725348f78a1f (diff) | |
download | postgresql-9fb20f105fc70db9b9c46240b4090ec597f28fa0.tar.gz postgresql-9fb20f105fc70db9b9c46240b4090ec597f28fa0.zip |
*** empty log message ***
Diffstat (limited to 'src/interfaces/ecpg/lib')
-rw-r--r-- | src/interfaces/ecpg/lib/error.c | 15 | ||||
-rw-r--r-- | src/interfaces/ecpg/lib/execute.c | 8 |
2 files changed, 14 insertions, 9 deletions
diff --git a/src/interfaces/ecpg/lib/error.c b/src/interfaces/ecpg/lib/error.c index 5aa4b771566..e7e976116b8 100644 --- a/src/interfaces/ecpg/lib/error.c +++ b/src/interfaces/ecpg/lib/error.c @@ -7,9 +7,10 @@ #include <sqlca.h> void -ECPGraise(int line, int code, const char *str) +ECPGraise(int line, int code, char *str) { sqlca.sqlcode = code; + switch (code) { case ECPG_NOT_FOUND: @@ -117,9 +118,13 @@ ECPGraise(int line, int code, const char *str) "Variable is not a character type in line %d.", line); break; - case ECPG_PGSQL: + case ECPG_PGSQL: + /* strip trailing newline */ + if (str[strlen(str)-1] == '\n') + str[strlen(str)-1] = '\0'; + snprintf(sqlca.sqlerrm.sqlerrmc,sizeof(sqlca.sqlerrm.sqlerrmc), - "Postgres error '%s' in line %d.", str, line); + "'%s' in line %d.", str, line); break; case ECPG_TRANS: @@ -134,12 +139,12 @@ ECPGraise(int line, int code, const char *str) default: snprintf(sqlca.sqlerrm.sqlerrmc,sizeof(sqlca.sqlerrm.sqlerrmc), - "SQL error #%d in line %d.",code, line); + "SQL error #%d in line %d.", code, line); break; } sqlca.sqlerrm.sqlerrml = strlen(sqlca.sqlerrm.sqlerrmc); - + /* free all memory we have allocated for the user */ free_auto_mem(); } diff --git a/src/interfaces/ecpg/lib/execute.c b/src/interfaces/ecpg/lib/execute.c index 875eb843115..89d756787e2 100644 --- a/src/interfaces/ecpg/lib/execute.c +++ b/src/interfaces/ecpg/lib/execute.c @@ -479,7 +479,7 @@ ECPGexecute(struct statement * stmt) strncpy(mallocedval + strlen(mallocedval) - 1, "}'", sizeof("}'")); } else - sprintf(mallocedval, "%c,", (*((char *) var->value)) ? 't' : 'f'); + sprintf(mallocedval, "%c", (*((char *) var->value)) ? 't' : 'f'); tobeinserted = mallocedval; break; @@ -541,7 +541,7 @@ ECPGexecute(struct statement * stmt) default: /* Not implemented yet */ - ECPGraise(stmt->lineno, ECPG_UNSUPPORTED, ECPGtype_name(var->type)); + ECPGraise(stmt->lineno, ECPG_UNSUPPORTED, (char *)ECPGtype_name(var->type)); return false; break; } @@ -859,7 +859,7 @@ ECPGdo(int lineno, const char *connection_name, char *query, ...) * * Copyright (c) 2000, Christof Petig <christof.petig@wtal.de> * - * $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/execute.c,v 1.3 2000/04/03 19:34:25 meskes Exp $ + * $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/execute.c,v 1.4 2000/04/05 09:05:28 meskes Exp $ */ PGconn *ECPG_internal_get_connection(char *name); @@ -1024,6 +1024,6 @@ bool ECPGdo_descriptor(int line,const char *connection, } } - ECPGraise(line, ECPG_UNKNOWN_DESCRIPTOR, descriptor); + ECPGraise(line, ECPG_UNKNOWN_DESCRIPTOR, (char *) descriptor); return false; } |