changeset 433:bd883b059360

merge test worked, but checked.
author one
date Sun, 03 Jan 2010 19:09:50 +0900
parents 46199cf0046e
children 0e72945867bb
files rep/handler/Translator.java
diffstat 1 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/rep/handler/Translator.java	Sun Jan 03 01:27:17 2010 +0900
+++ b/rep/handler/Translator.java	Sun Jan 03 19:09:50 2010 +0900
@@ -64,7 +64,8 @@
 			output.add( createUndo(cmd0) );
 		}
 		for( REPCommand cmd0 : editor.getSentList()) {
-			cmds.add(cmd0);
+			if (cmd0.cmd==REP.REPCMD_INSERT || cmd0.cmd==REP.REPCMD_DELETE)
+				cmds.add(cmd0);
 		}
 		output.addAll(cmds);
 		// ACKが来たものは必ず先頭
@@ -88,6 +89,7 @@
 			merge_mode = false;
 			return false;
 		}
+		assert(sentMergedList.size()==0);
 		for(REPCommand c:output1) {
 			REPCommand m = new REPCommand(c);
 			m.setEID(REP.MERGE_EID.id);
@@ -130,7 +132,7 @@
 	 */
 	public void transReceiveCmd(REPNode nextEditor,REPCommand cmd){
 		assert (cmd.eid != eid);
-		unMergedCmds.addLast(cmd);
+		unMergedCmds.addFirst(cmd);
 	}
 
 	public void setEid(int _eid){
@@ -138,9 +140,9 @@
 	}
 
 	public boolean checkMergeConflict(REPCommand command) {
-		unMergedCmds.addLast(command);
+		unMergedCmds.addFirst(command);
 		REPCommand prev = sentMergedList.remove();
-		//assert (prev.seq==command.seq);
+		assert (prev.seq==command.seq);
 		
 		if (mergeAgain) {
 			return true;