The vector iterator needs to be the start of the Data array even if the vector
itself is NULL, or else insertion can have a negative insert position.
This commit is contained in:
Chris Robinson 2014-05-02 11:48:55 -07:00
parent 3bdb3f9db7
commit 2660ecfd4a

View File

@ -32,8 +32,8 @@ ALboolean vector_resize(void *ptr, size_t base_size, size_t obj_count, size_t ob
#define VECTOR_CAPACITY(_x) ((const ALsizei)((_x) ? (_x)->Capacity : 0))
#define VECTOR_SIZE(_x) ((const ALsizei)((_x) ? (_x)->Size : 0))
#define VECTOR_ITER_BEGIN(_x) ((_x) ? (_x)->Data : NULL)
#define VECTOR_ITER_END(_x) ((_x) ? (_x)->Data + (_x)->Size : NULL)
#define VECTOR_ITER_BEGIN(_x) ((_x)->Data + 0)
#define VECTOR_ITER_END(_x) ((_x)->Data + VECTOR_SIZE(_x))
ALboolean vector_insert(void *ptr, size_t base_size, size_t obj_size, void *ins_pos, const void *datstart, const void *datend);
#ifdef __GNUC__