Index: /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp
===================================================================
--- /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp	(revision 6395)
+++ /issm/trunk/src/c/modules/OutputResultsx/OutputResultsx.cpp	(revision 6396)
@@ -55,5 +55,4 @@
 		parameters->FindParam(&outputfilename,OutputFileNameEnum);
 
-
 		/*What strategy? : */
 		parameters->FindParam(&io_gather,IoGatherEnum);
@@ -68,4 +67,5 @@
 			fid=pfopen(cpu_outputfilename ,"wb");
 		}
+		xfree((void**)&outputfilename);
 		
 		/*Add file pointer in parameters for further calls to OutputResultsx: */
@@ -86,13 +86,13 @@
 	#ifdef _PARALLEL_
 		delete results; results=new Results();
+
+		/*Close output file? :*/
+		if((step==1) && (time==0)){
+			if(io_gather){
+				if(my_rank==0) pfclose(fid,outputfilename);
+			}
+			else pfclose(fid,cpu_outputfilename);
+		}
 	#endif
-
-	/*Close output file? :*/
-	if((step==1) && (time==0)){
-		if(io_gather){
-			if(my_rank==0) pfclose(fid,outputfilename);
-		}
-		else pfclose(fid,cpu_outputfilename);
-	}
 
 	/*Assign output pointers:*/
