🐛 折叠标题移动到下方后触发状态异常并导致数据丢失 https://github.com/siyuan-note/siyuan/issues/7163

This commit is contained in:
Liang Ding 2023-01-26 01:09:36 +08:00
parent 85481e50ee
commit 2dec9f2434
No known key found for this signature in database
GPG key ID: 136F30F901A2231D

View file

@ -310,6 +310,14 @@ func (tx *Transaction) doMove(operation *Operation) (ret *TxErr) {
targetNode = targetChildren[l-1]
}
}
for _, headingChild := range headingChildren {
if headingChild.ID == targetNode.ID {
// 不能将折叠标题移动到自己下方节点的前或后 https://github.com/siyuan-note/siyuan/issues/7163
return
}
}
for i := len(headingChildren) - 1; -1 < i; i-- {
c := headingChildren[i]
targetNode.InsertAfter(c)
@ -352,6 +360,13 @@ func (tx *Transaction) doMove(operation *Operation) (ret *TxErr) {
return &TxErr{code: TxErrCodeBlockNotFound, id: targetParentID}
}
for _, headingChild := range headingChildren {
if headingChild.ID == targetNode.ID {
// 不能将折叠标题移动到自己下方节点的前或后 https://github.com/siyuan-note/siyuan/issues/7163
return
}
}
processed := false
if ast.NodeSuperBlock == targetNode.Type {
// 在布局节点后插入