Index: /trunk/psLib/src/types/psList.c
===================================================================
--- /trunk/psLib/src/types/psList.c	(revision 12308)
+++ /trunk/psLib/src/types/psList.c	(revision 12309)
@@ -7,6 +7,6 @@
  *  @author Joshua Hoblitt, University of Hawaii
  *
- *  @version $Revision: 1.63 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-08 02:13:31 $
+ *  @version $Revision: 1.64 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-03-08 03:59:12 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -294,4 +294,10 @@
     psListElem* cursor = iterator->cursor;
     psList* list = iterator->list;
+
+    if (cursor == NULL && list->head != NULL) {
+        psError(PS_ERR_BAD_PARAMETER_VALUE, true,
+                _("Specified iterator is not valid."));
+        return false;
+    }
 
     psListElem* elem = psAlloc(sizeof(psListElem));
@@ -345,4 +351,11 @@
     psListElem* cursor = iterator->cursor;
     psList* list = iterator->list;
+
+    if (cursor == NULL && list->head != NULL) {
+        psError(PS_ERR_BAD_PARAMETER_VALUE, true,
+                _("Specified iterator is not valid."));
+        return false;
+    }
+
     psListElem* elem = psAlloc(sizeof(psListElem));
 
Index: /trunk/psLib/src/types/psList.h
===================================================================
--- /trunk/psLib/src/types/psList.h	(revision 12308)
+++ /trunk/psLib/src/types/psList.h	(revision 12309)
@@ -5,6 +5,6 @@
  *  @author Robert Daniel DeSonia, MHPCC
  *
- *  @version $Revision: 1.44 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-03-08 03:51:11 $
+ *  @version $Revision: 1.45 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-03-08 03:59:12 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -284,6 +284,5 @@
 
 #define PS_ASSERT_LIST_ITERATOR_NON_NULL(NAME, RVAL) \
-if (!(NAME) || !(NAME)->list || !(NAME)->list->iterators || (NAME)->list->n < 0 || \
-    (!(NAME)->cursor && (NAME)->list->head)) { \
+if (!(NAME) || !(NAME)->list || !(NAME)->list->iterators || (NAME)->list->n < 0) { \
     psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
             "Error: List iterator %s or one of its components is NULL.", \
