diff --git a/sigproc.cc b/sigproc.cc
index ae97f8accf1ef2636261cdc50c0c106851cc39dc..2b32f57448ec16db754510165052b3057da48721 100644
--- a/sigproc.cc
+++ b/sigproc.cc
@@ -237,7 +237,7 @@ namespace SIGPROC {
       
       Glm glm;
 
-      for(int i = minorder; i <= maxorder; i++)
+      for(int i = minorder+1; i <= maxorder+1; i++)
 	{
 	  ColumnVector y = x.Rows(i+1,sizeTS);
 
@@ -250,16 +250,15 @@ namespace SIGPROC {
 	      X.Column(j) = x.Rows(i+1-j,sizeTS-j).AsColumn();	    
 	    }
 	  
-	  // Do OLS for all TS:
 	  glm.setData(y, X, c);
 	  
 	  glm.ComputeResids();
 	  betas = glm.Getb();
 	  
 	  if((abs(betas(i)) < (1/sizeTS) + (2/pow(sizeTS,0.5)) && order == -1) 
-	     || i == maxorder)
+	     || i == maxorder+1)
           {      
-	    order = i;
+	    order = i-1;
 	    break;
 	  }
 	}