Index: /trunk/psLib/src/collections/psMetadata.c
===================================================================
--- /trunk/psLib/src/collections/psMetadata.c	(revision 3779)
+++ /trunk/psLib/src/collections/psMetadata.c	(revision 3780)
@@ -12,6 +12,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.60 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-04-28 02:45:12 $
+*  @version $Revision: 1.61 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-04-28 19:52:48 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -266,23 +266,17 @@
     }
 
-    // if the metadataItem is MULTI, just add the encapsulated entries
+    // if the metadataItem is MULTI, just create a MULTI node.
     if (metadataItem->type == PS_META_MULTI) {
+        if (metadataItem->data.list == NULL || metadataItem->data.list->size > 0) {
+            psError(PS_ERR_BAD_PARAMETER_VALUE,true,
+                    "Specified PS_META_MULTI item is not defined properly "
+                    "(list allocated with zero size).");
+            return false;
+        }
 
         // make sure the existing entry is PS_META_MULTI
         existingEntry = makeMetaMulti(mdTable,key,existingEntry);
 
-        psBool status = true;
-        // add all the items in the incoming entry to metadata
-        psList* list = metadataItem->data.list;
-        if (list != NULL) {
-            psListIterator* iter = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-            psMetadataItem* listItem;
-            while (status && (listItem=(psMetadataItem*)psListGetAndIncrement(iter)) != NULL) {
-                status |= psMetadataAddItem(md,listItem,location,flags);
-            }
-            psFree(iter);
-        }
-
-        return status; // all done.
+        return true; // all done.
     }
 
Index: /trunk/psLib/src/types/psMetadata.c
===================================================================
--- /trunk/psLib/src/types/psMetadata.c	(revision 3779)
+++ /trunk/psLib/src/types/psMetadata.c	(revision 3780)
@@ -12,6 +12,6 @@
 *  @author Ross Harman, MHPCC
 *
-*  @version $Revision: 1.60 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-04-28 02:45:12 $
+*  @version $Revision: 1.61 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-04-28 19:52:48 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -266,23 +266,17 @@
     }
 
-    // if the metadataItem is MULTI, just add the encapsulated entries
+    // if the metadataItem is MULTI, just create a MULTI node.
     if (metadataItem->type == PS_META_MULTI) {
+        if (metadataItem->data.list == NULL || metadataItem->data.list->size > 0) {
+            psError(PS_ERR_BAD_PARAMETER_VALUE,true,
+                    "Specified PS_META_MULTI item is not defined properly "
+                    "(list allocated with zero size).");
+            return false;
+        }
 
         // make sure the existing entry is PS_META_MULTI
         existingEntry = makeMetaMulti(mdTable,key,existingEntry);
 
-        psBool status = true;
-        // add all the items in the incoming entry to metadata
-        psList* list = metadataItem->data.list;
-        if (list != NULL) {
-            psListIterator* iter = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-            psMetadataItem* listItem;
-            while (status && (listItem=(psMetadataItem*)psListGetAndIncrement(iter)) != NULL) {
-                status |= psMetadataAddItem(md,listItem,location,flags);
-            }
-            psFree(iter);
-        }
-
-        return status; // all done.
+        return true; // all done.
     }
 
