Signed-off-by: Daniel <845765@qq.com>
This commit is contained in:
Daniel 2026-02-01 15:34:46 +08:00
parent 92ab347405
commit a6104015ae
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
2 changed files with 26 additions and 0 deletions

View file

@ -44,6 +44,11 @@ func RenderAttributeView(blockID, avID, viewID, query string, page, pageSize int
return
}
if !ast.IsNodeIDPattern(avID) {
err = ErrInvalidID
return
}
attrView = av.NewAttributeView(avID)
if err = av.SaveAttributeView(attrView); err != nil {
logging.LogErrorf("save attribute view [%s] failed: %s", avID, err)
@ -499,6 +504,11 @@ func RenderRepoSnapshotAttributeView(indexID, avID string) (viewable av.Viewable
}
if nil == avFile {
if !ast.IsNodeIDPattern(avID) {
err = ErrInvalidID
return
}
attrView = av.NewAttributeView(avID)
} else {
data, readErr := repo.OpenFile(avFile)
@ -507,6 +517,11 @@ func RenderRepoSnapshotAttributeView(indexID, avID string) (viewable av.Viewable
return
}
if !ast.IsNodeIDPattern(avID) {
err = ErrInvalidID
return
}
attrView = av.NewAttributeView(avID)
if err = gulu.JSON.UnmarshalJSON(data, attrView); err != nil {
logging.LogErrorf("unmarshal attribute view [%s] failed: %s", avID, err)
@ -544,6 +559,11 @@ func RenderHistoryAttributeView(blockID, avID, viewID, query string, page, pageS
}
if !gulu.File.IsExist(avJSONPath) {
logging.LogWarnf("attribute view [%s] not found in current data", avID)
if !ast.IsNodeIDPattern(avID) {
err = ErrInvalidID
return
}
attrView = av.NewAttributeView(avID)
} else {
data, readErr := os.ReadFile(avJSONPath)
@ -552,6 +572,11 @@ func RenderHistoryAttributeView(blockID, avID, viewID, query string, page, pageS
return
}
if !ast.IsNodeIDPattern(avID) {
err = ErrInvalidID
return
}
attrView = av.NewAttributeView(avID)
if err = gulu.JSON.UnmarshalJSON(data, attrView); err != nil {
logging.LogErrorf("unmarshal attribute view [%s] failed: %s", avID, err)

View file

@ -182,6 +182,7 @@ var (
ErrTreeNotFound = errors.New("tree not found")
ErrIndexing = errors.New("indexing")
ErrBoxUnindexed = errors.New("notebook unindexed")
ErrInvalidID = errors.New("invalid id")
)
func LoadTreeByBlockIDWithReindex(id string) (ret *parse.Tree, err error) {