Small edit
[satune.git] / src / mymemory.h
index 32dfa51b51e8807f6c906ff64d585f08ba099835..1c7f3b3f2f4924daf3fdcd81ea444f4dad14ba55 100644 (file)
@@ -11,8 +11,8 @@
  *  @brief Memory allocation functions.
  */
 
-#ifndef _MY_MEMORY_H
-#define _MY_MEMORY_H
+#ifndef CSAT_MY_MEMORY_H
+#define CSAT_MY_MEMORY_H
 #include <limits.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include "config.h"
 
 /*
-void * ourmalloc(size_t size);
-void ourfree(void *ptr);
-void * ourcalloc(size_t count, size_t size);
-void * ourrealloc(void *ptr, size_t size);
-*/
+   void * ourmalloc(size_t size);
+   void ourfree(void *ptr);
+   void * ourcalloc(size_t count, size_t size);
+   void * ourrealloc(void *ptr, size_t size);
+ */
 
-static inline void * ourmalloc(size_t size) { return malloc(size); }
+static inline void *ourmalloc(size_t size) { return malloc(size); }
 static inline void ourfree(void *ptr) { free(ptr); }
-static inline void * ourcalloc(size_t count, size_t size) { return calloc(count, size); }
-static inline void * ourrealloc(void *ptr, size_t size) { return realloc(ptr, size); }
+static inline void *ourcalloc(size_t count, size_t size) { return calloc(count, size); }
+static inline void *ourrealloc(void *ptr, size_t size) { return realloc(ptr, size); }
+
+#define CMEMALLOC                           \
+       void *operator new(size_t size) {       \
+               return ourmalloc(size);                \
+       }                                                  \
+       void operator delete(void *p, size_t size) {       \
+               ourfree(p);                                      \
+       }                                                  \
+       void *operator new[](size_t size) {               \
+               return ourmalloc(size);                          \
+       }                                                    \
+       void operator delete[](void *p, size_t size) {       \
+               ourfree(p);                                        \
+       }                                                                     \
+       void *operator new(size_t size, void *p) {                                                                                                                      /* placement new */ \
+               return p;                                                           \
+       }
 
 #endif/* _MY_MEMORY_H */