diff --git a/res/res_config_sqlite.c b/res/res_config_sqlite.c index 39564100c4bbbb735d4652bb641a15a99fd77898..ef1e1808c0b1808ebaafcf4a45c4510c0bfa876b 100644 --- a/res/res_config_sqlite.c +++ b/res/res_config_sqlite.c @@ -686,12 +686,14 @@ static struct sqlite_cache_tables *find_table(const char *tablename) ast_log(LOG_WARNING, "SQLite error %d: %s\n", err, errstr); ast_free(errstr); free_table(tblptr); + AST_RWLIST_UNLOCK(&sqlite_tables); return NULL; } ast_mutex_unlock(&mutex); if (AST_LIST_EMPTY(&(tblptr->columns))) { free_table(tblptr); + AST_RWLIST_UNLOCK(&sqlite_tables); return NULL; }