]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 164349 via svnmerge from
authorTilghman Lesher <tilghman@meg.abyt.es>
Mon, 15 Dec 2008 18:26:46 +0000 (18:26 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Mon, 15 Dec 2008 18:26:46 +0000 (18:26 +0000)
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: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@164354 65c4cc65-6c06-0410-ace0-fbb531ad65f3

cdr/cdr_pgsql.c

index af191b7788ac188085df7e0de2ebd52b8e565aa2..11823406ea6e327a36021a6bd892f28ee44696b5 100644 (file)
@@ -475,12 +475,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);