stickshift.js
function endOperation(cm) {
    var op = cm.curOp, group = op.ownsGroup;
    if (!group) return;

    try { fireCallbacksForOps(group); }
    finally {
      operationGroup = null;
      for (var i = 0; i < group.ops.length; i++)
        group.ops[i].cm.curOp = null;
      endOperations(group);
    }
  }
function endOperation(cm) {
    var op = cm.curOp, group = op.ownsGroup;
    if (!group) return;

    try { fireCallbacksForOps(group); }
    finally {
      operationGroup = null;
      for (var i = 0; i < group.ops.length; i++)
        group.ops[i].cm.curOp = null;
      endOperations(group);
    }
  }
function endOperation ( cm ) { var op = cm . curOp , group = op . ownsGroup ; if ( ! group ) return ; try { fireCallbacksForOps ( group ) ; } finally { operationGroup = null ; for ( var i = 0 ; i < group . ops . length ; i ++ ) group . ops [ i ] . cm . curOp = null ; endOperations ( group ) ; } }
Finish an operation, updating the display and signalling delayed events
Finish an operation updating the display and signalling delayed events