cone & disc distributions
[vg.git] / vg_mem_pool.h
index 2326a3f469f70684c38852ffd47adde68053f2e4..412d2c0a3b11be67d43c5e75f97a80d80bc3fb52 100644 (file)
@@ -1,9 +1,9 @@
 #ifndef VG_MEM_POOL_H
 #define VG_MEM_POOL_H
 
-#include "vg/vg_mem.h"
+#include "vg_mem.h"
 #include "stddef.h"
-#include "vg/vg_stdint.h"
+#include "vg_stdint.h"
 
 typedef struct vg_pool vg_pool;
 typedef struct vg_pool_node vg_pool_node;
@@ -38,8 +38,10 @@ static vg_pool_node *vg_pool_nodeptr( vg_pool *pool, u16 id ){
 }
 
 static void *vg_pool_item( vg_pool *pool, u16 id ){
-   if( !id ) return NULL;
-   else return pool->buffer + pool->stride*(size_t)(id-1);
+   if( (id == 0) || (id > pool->count) ) 
+      return NULL;
+
+   return pool->buffer + pool->stride*(size_t)(id-1);
 }
 
 static void vg_pool_init( vg_pool *pool ){