summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/emualloc.h
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2012-01-26 20:35:51 +0000
committer Aaron Giles <aaron@aarongiles.com>2012-01-26 20:35:51 +0000
commiteb79c00418108690670219fc1e2231c6bab5b9d4 (patch)
tree9c9f8092ffca04af622bb4ddfcd20bdee1da460e /src/emu/emualloc.h
parentbc6f400f2721379f29cfaec57ef5b7d5ddff2b52 (diff)
Wrapped the global_resource_pool into a function in an attempt to
ensure it is initialized before anyone that references it.
Diffstat (limited to 'src/emu/emualloc.h')
-rw-r--r--src/emu/emualloc.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/emu/emualloc.h b/src/emu/emualloc.h
index f13deeb906c..48f2897a1d5 100644
--- a/src/emu/emualloc.h
+++ b/src/emu/emualloc.h
@@ -74,11 +74,11 @@
#define pool_free(_pool, v) (_pool).remove(v)
// global allocation helpers
-#define global_alloc(_type) pool_alloc(global_resource_pool, _type)
-#define global_alloc_clear(_type) pool_alloc_clear(global_resource_pool, _type)
-#define global_alloc_array(_type, _num) pool_alloc_array(global_resource_pool, _type, _num)
-#define global_alloc_array_clear(_type, _num) pool_alloc_array_clear(global_resource_pool, _type, _num)
-#define global_free(v) pool_free(global_resource_pool, v)
+#define global_alloc(_type) pool_alloc(global_resource_pool(), _type)
+#define global_alloc_clear(_type) pool_alloc_clear(global_resource_pool(), _type)
+#define global_alloc_array(_type, _num) pool_alloc_array(global_resource_pool(), _type, _num)
+#define global_alloc_array_clear(_type, _num) pool_alloc_array_clear(global_resource_pool(), _type, _num)
+#define global_free(v) pool_free(global_resource_pool(), v)
@@ -281,7 +281,7 @@ private:
public:
resource_pool(int hash_size = 193);
- ~resource_pool();
+ virtual ~resource_pool();
void add(resource_pool_item &item);
void remove(resource_pool_item &item) { remove(item.m_ptr); }
@@ -308,13 +308,13 @@ private:
// GLOBAL VARIABLES
//**************************************************************************
-// global resource pool
-extern resource_pool global_resource_pool;
-
// dummy objects to pass to the specialized new variants
extern const zeromem_t zeromem;
+resource_pool &global_resource_pool();
+
+
//**************************************************************************
// ADDDITIONAL MACROS