]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
cdr_pgsql does not detect when a table is found.
authorLeif Madsen <leif@leifmadsen.com>
Mon, 12 Jul 2010 15:37:01 +0000 (15:37 +0000)
committerLeif Madsen <leif@leifmadsen.com>
Mon, 12 Jul 2010 15:37:01 +0000 (15:37 +0000)
This change adds an ERROR message to let you know when a failure exists to
get the columns from the pgsql database, which typically means that the
table does not exist.

(closes issue #17478)
Reported by: kobaz
Patches:
      cdr_pgsql.patch uploaded by kobaz (license 834)
Tested by: kobaz, russell, lmadsen

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@275626 65c4cc65-6c06-0410-ace0-fbb531ad65f3

cdr/cdr_pgsql.c

index 53e957c266d9f36ce5d9b0083be40af6563d937a..b248a1e754704516580f69e6318e505a58994ee0 100644 (file)
@@ -526,6 +526,13 @@ static int config_module(int reload)
                }
 
                rows = PQntuples(result);
+               if (rows == 0) {
+                       ast_log(LOG_ERROR, "cdr_pgsql: Failed to query database columns. No columns found, does the table exist?\n");
+                       PQclear(result);
+                       unload_module();
+                       return AST_MODULE_LOAD_DECLINE;
+               }
+
                for (i = 0; i < rows; i++) {
                        fname = PQgetvalue(result, i, 0);
                        ftype = PQgetvalue(result, i, 1);