From c171780c0d5b874b152457e7676a6440c420ca27 Mon Sep 17 00:00:00 2001 From: Jakob Borg Date: Thu, 13 Feb 2014 11:33:32 +0100 Subject: [PATCH] Reorder locking to avoid deadlock (fixes #64) --- filequeue.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/filequeue.go b/filequeue.go index 5835de32..94432671 100644 --- a/filequeue.go +++ b/filequeue.go @@ -220,10 +220,10 @@ func (q *FileQueue) SetAvailable(file string, nodes []string) { } func (q *FileQueue) RemoveAvailable(toRemove string) { - q.amut.Lock() q.fmut.Lock() - defer q.fmut.Unlock() + q.amut.Lock() defer q.amut.Unlock() + defer q.fmut.Unlock() for file, nodes := range q.availability { for i, node := range nodes {