Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-06-25 13:14:37 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-06-25 13:14:37 +0400
commitcc0784c1b9c4d813837dedddd5b2b4c52fe291f0 (patch)
treec898623170b1576dddeb38f1ef30aa3cc83d6567 /intern
parent78196d60d1a4585c613f822040f7dc339b9558b4 (diff)
optionally use guarded alloc for tiles compositor, also replace allocation functions with a macro.
Diffstat (limited to 'intern')
-rw-r--r--intern/ghost/GHOST_IEvent.h8
-rw-r--r--intern/ghost/GHOST_IEventConsumer.h4
-rw-r--r--intern/ghost/GHOST_IWindow.h4
-rw-r--r--intern/ghost/GHOST_Rect.h4
-rw-r--r--intern/ghost/intern/GHOST_WindowManager.h4
-rw-r--r--intern/guardedalloc/MEM_guardedalloc.h22
-rw-r--r--intern/string/STR_String.h4
7 files changed, 27 insertions, 23 deletions
diff --git a/intern/ghost/GHOST_IEvent.h b/intern/ghost/GHOST_IEvent.h
index 3c3111a2e6d..ef63c57caa5 100644
--- a/intern/ghost/GHOST_IEvent.h
+++ b/intern/ghost/GHOST_IEvent.h
@@ -86,13 +86,7 @@ public:
virtual GHOST_TEventDataPtr getData() = 0;
#ifdef WITH_CXX_GUARDEDALLOC
-public:
- void *operator new(size_t num_bytes) {
- return MEM_mallocN(num_bytes, "GHOST:GHOST_IEvent");
- }
- void operator delete(void *mem) {
- MEM_freeN(mem);
- }
+ MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_IEvent")
#endif
};
diff --git a/intern/ghost/GHOST_IEventConsumer.h b/intern/ghost/GHOST_IEventConsumer.h
index d437f219f8d..cfc4fae7978 100644
--- a/intern/ghost/GHOST_IEventConsumer.h
+++ b/intern/ghost/GHOST_IEventConsumer.h
@@ -64,9 +64,7 @@ public:
virtual bool processEvent(GHOST_IEvent *event) = 0;
#ifdef WITH_CXX_GUARDEDALLOC
-public:
- void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GHOST:GHOST_IEventConsumer"); }
- void operator delete( void *mem ) { MEM_freeN(mem); }
+ MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_IEventConsumer")
#endif
};
diff --git a/intern/ghost/GHOST_IWindow.h b/intern/ghost/GHOST_IWindow.h
index e754883504d..69aaeeb4b2e 100644
--- a/intern/ghost/GHOST_IWindow.h
+++ b/intern/ghost/GHOST_IWindow.h
@@ -306,9 +306,7 @@ public:
virtual GHOST_TSuccess setCursorGrab(GHOST_TGrabCursorMode mode, GHOST_Rect *bounds) { return GHOST_kSuccess; }
#ifdef WITH_CXX_GUARDEDALLOC
-public:
- void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GHOST:GHOST_IWindow"); }
- void operator delete( void *mem ) { MEM_freeN(mem); }
+ MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_IWindow")
#endif
};
diff --git a/intern/ghost/GHOST_Rect.h b/intern/ghost/GHOST_Rect.h
index 90678c6dfa2..745e402cdc8 100644
--- a/intern/ghost/GHOST_Rect.h
+++ b/intern/ghost/GHOST_Rect.h
@@ -190,9 +190,7 @@ public:
GHOST_TInt32 m_b;
#ifdef WITH_CXX_GUARDEDALLOC
-public:
- void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GHOST:GHOST_Rect"); }
- void operator delete( void *mem ) { MEM_freeN(mem); }
+ MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_Rect")
#endif
};
diff --git a/intern/ghost/intern/GHOST_WindowManager.h b/intern/ghost/intern/GHOST_WindowManager.h
index 47931347ed6..e754595e881 100644
--- a/intern/ghost/intern/GHOST_WindowManager.h
+++ b/intern/ghost/intern/GHOST_WindowManager.h
@@ -162,9 +162,7 @@ protected:
GHOST_IWindow *m_activeWindowBeforeFullScreen;
#ifdef WITH_CXX_GUARDEDALLOC
-public:
- void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GHOST:GHOST_WindowManager"); }
- void operator delete( void *mem ) { MEM_freeN(mem); }
+ MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_WindowManager")
#endif
};
diff --git a/intern/guardedalloc/MEM_guardedalloc.h b/intern/guardedalloc/MEM_guardedalloc.h
index 83d6549218a..bb4c372e46d 100644
--- a/intern/guardedalloc/MEM_guardedalloc.h
+++ b/intern/guardedalloc/MEM_guardedalloc.h
@@ -167,7 +167,27 @@ extern "C" {
#ifndef NDEBUG
const char *MEM_name_ptr(void *vmemh);
#endif
-
+
+#ifdef __cplusplus
+/* alloc funcs for C++ only */
+#define MEM_CXX_CLASS_ALLOC_FUNCS(_id) \
+public: \
+ void *operator new(size_t num_bytes) { \
+ return MEM_mallocN(num_bytes, _id); \
+ } \
+ void operator delete(void *mem) { \
+ MEM_freeN(mem); \
+ } \
+ void *operator new[](size_t num_bytes) { \
+ return MEM_mallocN(num_bytes, _id "[]"); \
+ } \
+ void operator delete[](void *mem) { \
+ MEM_freeN(mem); \
+ } \
+
+#endif
+
+
#ifdef __cplusplus
}
#endif
diff --git a/intern/string/STR_String.h b/intern/string/STR_String.h
index 2f17b059c8f..ac8b855bbe9 100644
--- a/intern/string/STR_String.h
+++ b/intern/string/STR_String.h
@@ -204,9 +204,7 @@ protected:
#ifdef WITH_CXX_GUARDEDALLOC
-public:
- void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "CXX:STR_String"); }
- void operator delete(void *mem) { MEM_freeN(mem); }
+ MEM_CXX_CLASS_ALLOC_FUNCS("CXX:STR_String")
#endif
};