From 475f4be06f9a9cc7335b9b4d2915327630b53671 Mon Sep 17 00:00:00 2001
From: Brett Bryant <bbryant@digium.com>
Date: Thu, 27 Jan 2011 20:09:33 +0000
Subject: [PATCH] Patch that fixes the "realtime show pgsql cache" command
 crash when giving a table name, because of the use of an uninitialized
 variable. Fixes an error introduced in r300882.

(closes issue #18605)
Reported by: romain_proformatique
Patches:
      res_config_pgsql_fix.patch uploaded by romain proformatique (license 975)
Tested by: romain_proformatique



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 res/res_config_pgsql.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/res/res_config_pgsql.c b/res/res_config_pgsql.c
index 82fa25e490..caafb52dfc 100644
--- a/res/res_config_pgsql.c
+++ b/res/res_config_pgsql.c
@@ -267,6 +267,10 @@ static struct tables *find_table(const char *database, const char *orig_tablenam
 		}
 	}
 
+	if (database == NULL) {
+		return NULL;
+	}
+
 	ast_debug(1, "Table '%s' not found in cache, querying now\n", orig_tablename);
 
 	/* Not found, scan the table */
@@ -1514,7 +1518,7 @@ static char *handle_cli_realtime_pgsql_cache(struct ast_cli_entry *e, int cmd, s
 		AST_LIST_UNLOCK(&psql_tables);
 	} else if (a->argc == 5) {
 		/* List of columns */
-		if ((cur = find_table(cur->name, a->argv[4]))) {
+		if ((cur = find_table(NULL, a->argv[4]))) {
 			struct columns *col;
 			ast_cli(a->fd, "Columns for Table Cache '%s':\n", a->argv[4]);
 			ast_cli(a->fd, "%-20.20s %-20.20s %-3.3s %-8.8s\n", "Name", "Type", "Len", "Nullable");
-- 
GitLab