From 8903f362380d75b6824407a3d6373f27ff0b386c Mon Sep 17 00:00:00 2001 From: Alexandre Tuleu Date: Fri, 22 Jan 2016 19:19:08 +0100 Subject: [PATCH] Fixes lock --- main.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index 41782b1..77e6c24 100644 --- a/main.go +++ b/main.go @@ -218,7 +218,7 @@ func (a *appData) indexAlbum(stopChan <-chan struct{}, if err != nil { a.errors <- fmt.Errorf("[INDEX]: delete failed: %s", err) } - a.dbLock <- true + } } } @@ -227,12 +227,14 @@ func (a *appData) cacheAlbumDescription(getAlbum <-chan *Album, toIndex chan<- * nbAlbums := 0 for album := range getAlbum { nbAlbums++ + a.dbLock <- true albumCache, err := a.db.Get(album.ID) + <-a.dbLock + if err == nil { toIndex <- albumCache continue } - a.dbLock <- true err = a.getter.Get(album) if err != nil { @@ -240,6 +242,7 @@ func (a *appData) cacheAlbumDescription(getAlbum <-chan *Album, toIndex chan<- * <-a.dbLock continue } + a.dbLock <- true err = a.db.AddOrUpdate(album) <-a.dbLock if err != nil {