Index: trunk/psLib/src/collections/psArray.c
===================================================================
--- trunk/psLib/src/collections/psArray.c	(revision 485)
+++ trunk/psLib/src/collections/psArray.c	(revision 486)
@@ -8,6 +8,6 @@
  *  @author Ross Harman, MHPCC
  *   
- *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-04-21 00:18:05 $
+ *  @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-04-21 00:40:32 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -19,5 +19,4 @@
 #include "psMemory.h"
 #include "psArray.h"
-#include "psLogMsg.h"
 
 /******************************************************************************/
@@ -54,4 +53,46 @@
 /* FUNCTION IMPLEMENTATION - PUBLIC                                          */
 /*****************************************************************************/
+
+psIntArray* psIntArrayAlloc(int nalloc)
+{
+    psIntArray *psArr = (psIntArray*)p_psAlloc(sizeof(psIntArray), __FILE__, __LINE__);
+    psArr->type.dimen = PS_DIMEN_VECTOR;
+    psArr->type.type = PS_TYPE_INT;
+    psArr->nalloc = nalloc;
+    psArr->n = 0;
+
+    if(nalloc == 0) {
+        psArr->arr = NULL;
+    } else {
+        psArr->arr = p_psAlloc(nalloc*sizeof(int), __FILE__, __LINE__);
+    }
+
+    return psArr;
+}
+
+psIntArray *psIntArrayRealloc(psIntArray *psArr, int nalloc)
+{
+    if(psArr == NULL) {
+        return psIntArrayAlloc(nalloc);
+    }
+    if(nalloc <= psArr->nalloc) {
+        if (psArr->n < nalloc) {
+            psArr->n = nalloc;
+        }
+    } else {
+        psArr->arr = p_psRealloc(psArr->arr, nalloc*sizeof(int), __FILE__, __LINE__);
+        psArr->nalloc = nalloc;
+    }
+    return psArr;
+}
+
+void psIntArrayFree(psIntArray *restrict psArr)
+{
+    if (psArr == NULL) {
+        return;
+    }
+    p_psFree(psArr->arr, __FILE__, __LINE__);
+    p_psFree(psArr, __FILE__, __LINE__);
+}
 
 psFloatArray* psFloatArrayAlloc(int nalloc)
@@ -97,9 +138,9 @@
 }
 
-psIntArray* psIntArrayAlloc(int nalloc)
+psDoubleArray* psDoubleArrayAlloc(int nalloc)
 {
-    psIntArray *psArr = (psIntArray*)p_psAlloc(sizeof(psIntArray), __FILE__, __LINE__);
+    psDoubleArray *psArr = (psDoubleArray*)p_psAlloc(sizeof(psDoubleArray), __FILE__, __LINE__);
     psArr->type.dimen = PS_DIMEN_VECTOR;
-    psArr->type.type = PS_TYPE_INT;
+    psArr->type.type = PS_TYPE_DOUBLE;
     psArr->nalloc = nalloc;
     psArr->n = 0;
@@ -108,5 +149,5 @@
         psArr->arr = NULL;
     } else {
-        psArr->arr = p_psAlloc(nalloc*sizeof(int), __FILE__, __LINE__);
+        psArr->arr = p_psAlloc(nalloc*sizeof(double), __FILE__, __LINE__);
     }
 
@@ -114,8 +155,8 @@
 }
 
-psIntArray *psIntArrayRealloc(psIntArray *psArr, int nalloc)
+psDoubleArray *psDoubleArrayRealloc(psDoubleArray *psArr, int nalloc)
 {
     if(psArr == NULL) {
-        return psIntArrayAlloc(nalloc);
+        return psDoubleArrayAlloc(nalloc);
     }
     if(nalloc <= psArr->nalloc) {
@@ -124,5 +165,5 @@
         }
     } else {
-        psArr->arr = p_psRealloc(psArr->arr, nalloc*sizeof(int), __FILE__, __LINE__);
+        psArr->arr = p_psRealloc(psArr->arr, nalloc*sizeof(double), __FILE__, __LINE__);
         psArr->nalloc = nalloc;
     }
@@ -130,5 +171,5 @@
 }
 
-void psIntArrayFree(psIntArray *restrict psArr)
+void psDoubleArrayFree(psDoubleArray *restrict psArr)
 {
     if (psArr == NULL) {
