From 9de3f69b8f4299d894ea4fe23f8d75e5f7a327a2 Mon Sep 17 00:00:00 2001 From: ZRHan <56144550+ZRHann@users.noreply.github.com> Date: Thu, 24 Sep 2026 01:46:14 +0800 Subject: [PATCH] fix(fs): only list parent dir for related objs when file is video (#3113) --- server/handles/fsread.go | 10 ++++++---- server/mcp/fs_get.go | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/server/handles/fsread.go b/server/handles/fsread.go index 073d02272..841cb5afb 100644 --- a/server/handles/fsread.go +++ b/server/handles/fsread.go @@ -347,11 +347,13 @@ func FsGet(c *gin.Context, req *FsGetReq, user *model.User) { } } } - var related []model.Obj parentPath := stdpath.Dir(reqPath) - sameLevelFiles, err := fs.List(c.Request.Context(), parentPath, &fs.ListArgs{}) - if err == nil { - related = filterRelated(sameLevelFiles, obj) + var related []model.Obj + if !obj.IsDir() && utils.GetFileType(obj.GetName()) == conf.VIDEO { + sameLevelFiles, err := fs.List(c.Request.Context(), parentPath, &fs.ListArgs{}) + if err == nil { + related = filterRelated(sameLevelFiles, obj) + } } parentMeta, _ := op.GetNearestMeta(parentPath) thumb, _ := model.GetThumb(obj) diff --git a/server/mcp/fs_get.go b/server/mcp/fs_get.go index a7a7e58ce..c975695fd 100644 --- a/server/mcp/fs_get.go +++ b/server/mcp/fs_get.go @@ -68,9 +68,11 @@ func (s *Server) callFSGet(c *gin.Context, raw json.RawMessage) (any, *rpcError) parentPath := stdpath.Dir(reqPath) var related []model.Obj - sameLevelFiles, err := fs.List(ctx, parentPath, &fs.ListArgs{}) - if err == nil { - related = filterRelatedObjs(sameLevelFiles, obj) + if !obj.IsDir() && utils.GetFileType(obj.GetName()) == conf.VIDEO { + sameLevelFiles, err := fs.List(ctx, parentPath, &fs.ListArgs{}) + if err == nil { + related = filterRelatedObjs(sameLevelFiles, obj) + } } parentMeta, _ := op.GetNearestMeta(parentPath)