From: Richard Kettlewell Date: Thu, 17 Jun 2010 20:11:58 +0000 (+0100) Subject: Fix trackdb_search() deadlock handling. X-Git-Tag: branchpoint-5.1~73^2~1 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/commitdiff_plain/a5fd820123706886efb2fd9fab2a97e9e172691e Fix trackdb_search() deadlock handling. --- diff --git a/lib/trackdb.c b/lib/trackdb.c index 628498a..24d04ac 100644 --- a/lib/trackdb.c +++ b/lib/trackdb.c @@ -2493,6 +2493,9 @@ char **trackdb_search(char **wordlist, int nwordlist, int *ntracks) { } if(trackdb_closecursor(cursor)) err = DB_LOCK_DEADLOCK; cursor = 0; + if(err) + goto fail; + cursor = 0; /* do a naive search over that (hopefuly fairly small) list of tracks */ u.nvec = 0; for(n = 0; n < v.nvec; ++n) {