diff --git a/share/eds/store.go b/share/eds/store.go index 12993e8069..69e3c6b4a4 100644 --- a/share/eds/store.go +++ b/share/eds/store.go @@ -569,7 +569,7 @@ type inMemoryOnceMount struct { } func (m *inMemoryOnceMount) Fetch(ctx context.Context) (mount.Reader, error) { - if !m.readOnce.Swap(true) { + if m.buf != nil && !m.readOnce.Swap(true) { reader := &inMemoryReader{Reader: bytes.NewReader(m.buf.Bytes())} // release memory for gc, otherwise buffer will stick forever m.buf = nil