changeset 354:6ea3aa6c795f

*** empty log message ***
author tkaito
date Fri, 17 Oct 2008 18:40:08 +0900
parents 0d47ff22ee0e
children 98607350f7d1
files rep/optimizers/DeleteInsertOptimizer.java
diffstat 1 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/rep/optimizers/DeleteInsertOptimizer.java	Thu Oct 16 14:25:45 2008 +0900
+++ b/rep/optimizers/DeleteInsertOptimizer.java	Fri Oct 17 18:40:08 2008 +0900
@@ -40,21 +40,21 @@
 
 	private void optimizedAdd(List<REPCommand> output, REPCommand r, int ln) {
 		int lineno = r.lineno;
-		for(int i = ln; i < output.size(); i++){
+		for(int i = ln+1; i < output.size(); i++){
 			REPCommand s = output.get(i);
 			if(s.cmd==REP.REPCMD_INSERT) {
 				if(s.lineno < lineno){
 					lineno --;
 				}else if(s.lineno == lineno){
 
-					lineNumberCorrection(output,r.lineno,i,ln);
+					lineNumberCorrection(output,s.lineno,i,ln);
 					output.remove(r);
 					output.remove(s);
 					ln--;
 					break;
 				}			
 			}else if(s.cmd==REP.REPCMD_DELETE){
-				if(s.lineno < lineno){
+				if(s.lineno <= lineno){
 					lineno ++;
 				}
 			}else{
@@ -64,7 +64,7 @@
 	}
 	
 	private void lineNumberCorrection(List<REPCommand> opt, int ln, int count, int r){
-		for(int i = r; i < count; i++){
+		for(int i = r+1; i < count; i++){
 			REPCommand o = opt.get(i);
 			if(o.lineno == 0){
 			}else if(ln < o.lineno){