From 87107413f5c854844fdae4a1067e599a625054f5 Mon Sep 17 00:00:00 2001
From: Nick Craig-Wood <nick@craig-wood.com>
Date: Thu, 27 Oct 2016 09:57:52 +0100
Subject: [PATCH] fuse: add missing locking on filehandle read #823 #802

---
 cmd/mount/read.go | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/cmd/mount/read.go b/cmd/mount/read.go
index 3fd4f0128..53befdfb5 100644
--- a/cmd/mount/read.go
+++ b/cmd/mount/read.go
@@ -69,6 +69,8 @@ func (fh *ReadFileHandle) seek(offset int64) error {
 
 // Read from the file handle
 func (fh *ReadFileHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error {
+	fh.mu.Lock()
+	defer fh.mu.Unlock()
 	fs.Debug(fh.o, "ReadFileHandle.Read size %d offset %d", req.Size, req.Offset)
 	if fh.closed {
 		fs.ErrorLog(fh.o, "ReadFileHandle.Read error: %v", errClosedFileHandle)