Index: /issm/trunk-jpl/src/c/cores/movingfront_core.cpp
===================================================================
--- /issm/trunk-jpl/src/c/cores/movingfront_core.cpp	(revision 27287)
+++ /issm/trunk-jpl/src/c/cores/movingfront_core.cpp	(revision 27288)
@@ -17,6 +17,5 @@
 	/* intermediaries */
 	bool save_results,isstressbalance,ismasstransport,isthermal,isenthalpy,islevelset,ismovingfront,killicebergs;
-	int  domaintype, num_extrapol_vars, index,reinit_frequency,step;
-	int* extrapol_vars=NULL;
+	int  domaintype, reinit_frequency,step;
 	Analysis  *analysis=NULL;
 	IssmDouble maxVel;
@@ -65,42 +64,22 @@
 
 	/* determine variables for extrapolation */
-	num_extrapol_vars=0;
+	std::vector<int>  extrapol_vars;
 	if(isstressbalance){
-		if(domaintype==Domain3DEnum)
-		 num_extrapol_vars+=3;
-		else
-		 num_extrapol_vars+=2;
+		extrapol_vars.push_back(VxEnum);
+		extrapol_vars.push_back(VyEnum);
+		if(domaintype==Domain3DEnum) extrapol_vars.push_back(VzEnum);
 	}
-	if(ismasstransport) num_extrapol_vars+=1;
-	if(isthermal && domaintype==Domain3DEnum) num_extrapol_vars+=1;
-	extrapol_vars=xNew<int>(num_extrapol_vars);
-	index=0;
-	if(isstressbalance){
-		extrapol_vars[index]=VxEnum; index++;
-		extrapol_vars[index]=VyEnum; index++;
-		if(domaintype==Domain3DEnum){
-			extrapol_vars[index]=VzEnum; index++;
-		}
-	}
-	if(ismasstransport){
-		extrapol_vars[index]=ThicknessEnum; index++;
-	}
+	if(ismasstransport) extrapol_vars.push_back(ThicknessEnum);
 	if(isthermal && domaintype==Domain3DEnum){
-		if(isenthalpy){
-			extrapol_vars[index]=EnthalpyEnum;
-		}
-		else{
-			extrapol_vars[index]=TemperatureEnum;
-		}
-		index++;
+		if(isenthalpy) extrapol_vars.push_back(EnthalpyEnum);
+		else           extrapol_vars.push_back(TemperatureEnum);
 	}
 
 	/* extrapolate */
 	analysis = new ExtrapolationAnalysis();
-	for(int iv=0;iv<num_extrapol_vars;iv++){
+	for(int iv=0;iv<extrapol_vars.size();iv++){
 		femmodel->parameters->SetParam(extrapol_vars[iv],ExtrapolationVariableEnum); 
 		analysis->Core(femmodel);
 	}
-	xDelete<int>(extrapol_vars);
 	delete analysis;	
 
