Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 24281)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 24282)
@@ -4838,5 +4838,5 @@
 	ISSM_MPI_Reduce (&oceanarea_cpu,&oceanarea,1,ISSM_MPI_DOUBLE,ISSM_MPI_SUM,0,IssmComm::GetComm() );
 	ISSM_MPI_Bcast(&oceanarea,1,ISSM_MPI_DOUBLE,0,IssmComm::GetComm());
-			
+
 	//_printf0_("Ocean area: " << oceanarea << "\n");
 
@@ -5096,6 +5096,6 @@
 		else{
 			for(int j=0;j<elements->Size();j++){
+				/*Intermediaries*/
 				TransientInput* transient_input = new TransientInput(transientinput_enum[i]);
-				/*Intermediaries*/
 				Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(j));
 				element->inputs->AddInput(transient_input);
@@ -5142,7 +5142,4 @@
 void FemModel::AverageTransientOutputx(int* transientinput_enum,int* averagedinput_enum,IssmDouble init_time,IssmDouble end_time,int numoutputs){ /*{{{*/
 
-
-	IssmDouble yts;
-	this->parameters->FindParam(&yts,ConstantsYtsEnum);
 	for(int i=0;i<numoutputs;i++){
 		if(transientinput_enum[i]<0){
@@ -5150,5 +5147,5 @@
 		}
 		else{
-			for(int j=0;j<elements->Size();j++){
+			for(int j=0;j<this->elements->Size();j++){
 				Element*    element       = xDynamicCast<Element*>(elements->GetObjectByOffset(j));
 				int         numnodes      = element->GetNumberOfNodes();
@@ -5165,4 +5162,5 @@
 				element->AddInput(averagedinput_enum[i],&time_averaged[0],element->GetElementType());
 				delete gauss;
+				xDelete<IssmDouble>(time_averaged);
 			}
 		}
Index: /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.cpp	(revision 24281)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.cpp	(revision 24282)
@@ -282,15 +282,11 @@
 	int found;
 	int offset,start_offset,end_offset;
-	IssmDouble subdt,yts;
+	IssmDouble subdt;
 	IssmDouble slice_duration;
 
-	IssmDouble time;
-
-	this->parameters->FindParam(&time,TimeEnum);
-	this->parameters->FindParam(&yts,ConstantsYtsEnum);
 	this->parameters->FindParam(&subdt,TimesteppingTimeStepEnum); //duration of each substeps
 
 	Input *averageinput  = NULL;
-	Input *currentinput  = NULL;
+
 
 	slice_duration=end_time-start_time;
@@ -307,4 +303,6 @@
 	//stack the input for each timestep in the slice
 	while(offset <= end_offset ){
+		Input *currentinput  = NULL;
+
 		if (offset==-1){
 			/*get values for the first time: */
@@ -354,4 +352,5 @@
 				_error_("averaging method is not recognised");
 		}
+		delete currentinput;
 		offset+=1;
 	}
