mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-02-03 06:01:47 +01:00
🐛 只读模式下多项折叠会导致数据类型错误 https://github.com/siyuan-note/siyuan/issues/6557
This commit is contained in:
parent
86804f1c1d
commit
6d8d730262
2 changed files with 24 additions and 11 deletions
|
|
@ -63,17 +63,23 @@ func performTransactions(c *gin.Context) {
|
|||
return
|
||||
}
|
||||
|
||||
if op := model.IsSetAttrs(&transactions); nil != op {
|
||||
setAttrsOps := model.ExtractSetAttrsOps(&transactions)
|
||||
for _, setAttrsOp := range setAttrsOps {
|
||||
attrs := map[string]string{}
|
||||
if err = gulu.JSON.UnmarshalJSON([]byte(op.Data.(string)), &attrs); nil != err {
|
||||
if err = gulu.JSON.UnmarshalJSON([]byte(setAttrsOp.Data.(string)), &attrs); nil != err {
|
||||
return
|
||||
}
|
||||
if err = model.SetBlockAttrs(setAttrsOp.ID, attrs); nil != err {
|
||||
if errors.Is(err, filelock.ErrUnableAccessFile) {
|
||||
ret.Code = 1
|
||||
return
|
||||
}
|
||||
logging.LogFatalf("set block attrs failed: %s", err)
|
||||
return
|
||||
}
|
||||
err = model.SetBlockAttrs(op.ID, attrs)
|
||||
} else {
|
||||
err = model.PerformTransactions(&transactions)
|
||||
}
|
||||
|
||||
if errors.Is(err, filelock.ErrUnableAccessFile) {
|
||||
if err = model.PerformTransactions(&transactions); errors.Is(err, filelock.ErrUnableAccessFile) {
|
||||
ret.Code = 1
|
||||
return
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue