浏览代码

:bug: fix https://github.com/siyuan-note/siyuan/issues/9178

Vanessa 1 年之前
父节点
当前提交
a84cd4a6dd
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. 6 0
      app/src/protyle/undo/index.ts

+ 6 - 0
app/src/protyle/undo/index.ts

@@ -68,6 +68,12 @@ export class Undo {
     }
 
     public replace(doOperations: IOperation[]) {
+        // undo 引发 replace 导致 stack 错误 https://github.com/siyuan-note/siyuan/issues/9178
+        if (this.hasUndo && this.redoStack.length > 0) {
+            this.undoStack.push(this.redoStack.pop())
+            this.redoStack = [];
+            this.hasUndo = false;
+        }
         if (this.undoStack.length > 0) {
             this.undoStack[this.undoStack.length - 1].doOperations = doOperations;
         }