closure defer not works as I think

This commit is contained in:
siddontang 2014-10-11 10:31:34 +08:00
parent 1583ae90fc
commit e3c2102080
1 changed files with 11 additions and 10 deletions

View File

@ -46,20 +46,21 @@ func (l *Ledis) Dump(w io.Writer) error {
var commitID uint64 var commitID uint64
var snap *store.Snapshot var snap *store.Snapshot
{
l.wLock.Lock() l.wLock.Lock()
defer l.wLock.Unlock()
if l.r != nil { if l.r != nil {
if commitID, err = l.r.LastCommitID(); err != nil { if commitID, err = l.r.LastCommitID(); err != nil {
l.wLock.Unlock()
return err return err
} }
} }
if snap, err = l.ldb.NewSnapshot(); err != nil { if snap, err = l.ldb.NewSnapshot(); err != nil {
l.wLock.Unlock()
return err return err
} }
}
l.wLock.Unlock()
wb := bufio.NewWriterSize(w, 4096) wb := bufio.NewWriterSize(w, 4096)