Index: /issm/trunk-jpl/src/c/classes/ExternalResults/GenericExternalResult.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/ExternalResults/GenericExternalResult.h	(revision 23689)
+++ /issm/trunk-jpl/src/c/classes/ExternalResults/GenericExternalResult.h	(revision 23690)
@@ -56,15 +56,22 @@
 
 			MARSHALLING_ENUM(this->ObjectEnum());
-
-			bool isnull=true;
-			if(marshall_direction==MARSHALLING_FORWARD || marshall_direction == MARSHALLING_SIZE) if(value) isnull=false;
-
 			MARSHALLING(id);
-			MARSHALLING(result_name);
-			MARSHALLING(isnull)
-			if (!isnull) MARSHALLING(value) else value=0;
 			MARSHALLING(step);
 			MARSHALLING(time);
 
+			/*Marshal result name*/
+			int size = 0;
+			if(marshall_direction==MARSHALLING_FORWARD || marshall_direction == MARSHALLING_SIZE) size=strlen(result_name)+1;
+			MARSHALLING(size);
+			MARSHALLING_DYNAMIC(result_name,char,size);
+
+			/*Marshall value*/
+			this->value=0;
+			bool isnull=true;
+			if(marshall_direction==MARSHALLING_FORWARD || marshall_direction == MARSHALLING_SIZE){
+				if(value) isnull=false;
+			}
+			MARSHALLING(isnull);
+			if(!isnull) MARSHALLING(value)
 		}  /*}}}*/
 
@@ -77,5 +84,5 @@
 			step        = 0;
 			time        = 0;
-			value       = NULL;
+			value       = 0;
 		} /*}}}*/
 		GenericExternalResult(int in_id, int in_enum_type,ResultType in_values, int in_M,int in_N,int in_step,IssmDouble in_time){/*{{{*/
Index: /issm/trunk-jpl/src/c/datastructures/DataSet.cpp
===================================================================
--- /issm/trunk-jpl/src/c/datastructures/DataSet.cpp	(revision 23689)
+++ /issm/trunk-jpl/src/c/datastructures/DataSet.cpp	(revision 23690)
@@ -293,4 +293,10 @@
 				this->AddObject(penpair);
 			}
+			else if(obj_enum==DoubleExternalResultEnum){
+				GenericExternalResult<double>* result=new GenericExternalResult<double>();
+				result->Marshall(pmarshalled_data,pmarshalled_data_size,marshall_direction);
+				result->Echo();
+				this->AddObject(result);
+			}
 			else _error_("could not recognize enum type: " << obj_enum << ": " << EnumToStringx(obj_enum) ); 
 		}
