diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-15 18:27:28 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-15 18:27:28 +0000 |
commit | 38fd8683e9ed47b93c57dc9af19469f682be1bda (patch) | |
tree | 56a779803f2e281852e411ce8c4de40157260e21 /cdr/cdr_pgsql.c | |
parent | 028a9e1f61e385237b333b058952ff604c8acb50 (diff) |
Merged revisions 164349 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
........
r164349 | tilghman | 2008-12-15 12:09:58 -0600 (Mon, 15 Dec 2008) | 4 lines
When querying for the structure of the CDR table, remove the schema, if it
exists.
(Closes issue #14058)
........
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@164355 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'cdr/cdr_pgsql.c')
-rw-r--r-- | cdr/cdr_pgsql.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/cdr/cdr_pgsql.c b/cdr/cdr_pgsql.c index a5733a8dd..1203e1644 100644 --- a/cdr/cdr_pgsql.c +++ b/cdr/cdr_pgsql.c @@ -476,12 +476,20 @@ static int config_module(int reload) if (PQstatus(conn) != CONNECTION_BAD) { char sqlcmd[512]; char *fname, *ftype, *flen, *fnotnull, *fdef; + char *tableptr; int i, rows; ast_debug(1, "Successfully connected to PostgreSQL database.\n"); connected = 1; + /* Remove any schema name from the table */ + if ((tableptr = strrchr(table, '.'))) { + tableptr++; + } else { + tableptr = table; + } + /* Query the columns */ - snprintf(sqlcmd, sizeof(sqlcmd), "select a.attname, t.typname, a.attlen, a.attnotnull, d.adsrc from pg_class c, pg_type t, pg_attribute a left outer join pg_attrdef d on a.atthasdef and d.adrelid = a.attrelid and d.adnum = a.attnum where c.oid = a.attrelid and a.atttypid = t.oid and (a.attnum > 0) and c.relname = '%s' order by c.relname, attnum", table); + snprintf(sqlcmd, sizeof(sqlcmd), "select a.attname, t.typname, a.attlen, a.attnotnull, d.adsrc from pg_class c, pg_type t, pg_attribute a left outer join pg_attrdef d on a.atthasdef and d.adrelid = a.attrelid and d.adnum = a.attnum where c.oid = a.attrelid and a.atttypid = t.oid and (a.attnum > 0) and c.relname = '%s' order by c.relname, attnum", tableptr); result = PQexec(conn, sqlcmd); if (PQresultStatus(result) != PGRES_TUPLES_OK) { pgerror = PQresultErrorMessage(result); |