diff options
Diffstat (limited to 'weed/mount/weedfs_file_lseek.go')
| -rw-r--r-- | weed/mount/weedfs_file_lseek.go | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/weed/mount/weedfs_file_lseek.go b/weed/mount/weedfs_file_lseek.go index 73564fdbe..a7e3a2b46 100644 --- a/weed/mount/weedfs_file_lseek.go +++ b/weed/mount/weedfs_file_lseek.go @@ -58,10 +58,14 @@ func (wfs *WFS) Lseek(cancel <-chan struct{}, in *fuse.LseekIn, out *fuse.LseekO // Create a context that will be cancelled when the cancel channel receives a signal ctx, cancelFunc := context.WithCancel(context.Background()) + defer cancelFunc() // Ensure cleanup + go func() { select { case <-cancel: cancelFunc() + case <-ctx.Done(): + // Clean exit when lseek operation completes } }() |
