Index: trunk/psLib/src/collections/psArray.c
===================================================================
--- trunk/psLib/src/collections/psArray.c	(revision 1228)
+++ trunk/psLib/src/collections/psArray.c	(revision 1385)
@@ -8,6 +8,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.9 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-07-15 22:18:02 $
+ *  @version $Revision: 1.10 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-08-04 23:37:39 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -67,16 +67,17 @@
         psError(__func__, "Null input vector\n");
         return NULL;
-    } else if(in->nalloc != nalloc) {                    // No need to realloc to same size
-        if(nalloc < in->n) {
-            for (int i = nalloc; i < in->n; i++) {   // For reduction in vector size
-                psFree(in->data[i]);
+    } else
+        if(in->nalloc != nalloc) {                    // No need to realloc to same size
+            if(nalloc < in->n) {
+                for (int i = nalloc; i < in->n; i++) {   // For reduction in vector size
+                    psFree(in->data[i]);
+                }
+                in->n = nalloc;
             }
-            in->n = nalloc;
+
+            // Realloc after decrementation to avoid accessing freed array elements
+            in->data = psRealloc(in->data,nalloc*sizeof(psPTR));
+            in->nalloc = nalloc;
         }
-
-        // Realloc after decrementation to avoid accessing freed array elements
-        in->data = psRealloc(in->data,nalloc*sizeof(psPTR));
-        in->nalloc = nalloc;
-    }
 
     return in;
