added Verlet scheme and NxN non-bonded functionality
[alexxy/gromacs.git] / src / gmxlib / smalloc.c
index 77069ab5da8009b709057f86c711567920c5f2af..8a78196c2c7cda42d14ddc49a75c71cc0c4c9fa2 100644 (file)
@@ -284,7 +284,7 @@ size_t memavail(void)
  * on systems that lack posix_memalign() and memalign() when 
  * freeing memory that needed to be adjusted to achieve
  * the necessary alignment. */
-void *save_calloc_aligned(const char *name,const char *file,int line,
+void *save_malloc_aligned(const char *name,const char *file,int line,
                           unsigned nelem,size_t elsize,size_t alignment)
 {
     void **aligned=NULL;
@@ -345,11 +345,21 @@ void *save_calloc_aligned(const char *name,const char *file,int line,
            pointer we're going to return */
         aligned[-1] = malloced;
 #endif
-       memset(aligned, 0,(size_t) (nelem * elsize));
     }
     return (void*)aligned;
 }
 
+void *save_calloc_aligned(const char *name,const char *file,int line,
+                          unsigned nelem,size_t elsize,size_t alignment)
+{
+    void *aligned = save_malloc_aligned(name, file, line, nelem, elsize, alignment);
+    if (aligned != NULL)
+    {
+        memset(aligned, 0, (size_t)(nelem * elsize));
+    }
+    return aligned;
+}
+
 /* This routine can NOT be called with any pointer */
 void save_free_aligned(const char *name,const char *file,int line,void *ptr)
 {