diff --git a/cdr/cdr_pgsql.c b/cdr/cdr_pgsql.c index 82dce65e7bae4dd0707c57863578db421a8c5167..4ccd4aa83b614087cb20236479e531e3bd661538 100644 --- a/cdr/cdr_pgsql.c +++ b/cdr/cdr_pgsql.c @@ -87,9 +87,9 @@ static int pgsql_log(struct ast_cdr *cdr) connected = 1; } else { pgerror = PQerrorMessage(conn); - PQfinish(conn); ast_log(LOG_ERROR, "cdr_pgsql: Unable to connect to database server %s. Calls will not be logged!\n", pghostname); ast_log(LOG_ERROR, "cdr_pgsql: Reason: %s\n", pgerror); + PQfinish(conn); conn = NULL; } } @@ -146,9 +146,9 @@ static int pgsql_log(struct ast_cdr *cdr) connected = 1; } else { pgerror = PQerrorMessage(conn); - PQfinish(conn); ast_log(LOG_ERROR, "cdr_pgsql: Unable to reconnect to database server %s. Calls will not be logged!\n", pghostname); ast_log(LOG_ERROR, "cdr_pgsql: Reason: %s\n", pgerror); + PQfinish(conn); conn = NULL; connected = 0; ast_mutex_unlock(&pgsql_lock);