1.1 --- a/ucx/map.h Mon Feb 20 15:30:45 2012 +0100 1.2 +++ b/ucx/map.h Tue Feb 21 01:13:17 2012 +0100 1.3 @@ -17,7 +17,7 @@ 1.4 typedef struct UcxMapElement UcxMapElement; 1.5 1.6 struct UcxMap { 1.7 - UcxMapElement *map; 1.8 + UcxMapElement **map; 1.9 size_t size; 1.10 }; 1.11 1.12 @@ -35,14 +35,15 @@ 1.13 1.14 1.15 UcxMap *ucx_map_new(size_t size); 1.16 +void ucx_map_free(UcxMap *map); 1.17 1.18 int ucx_map_put(UcxMap *map, UcxKey key, void *data); 1.19 void* ucx_map_get(UcxMap *map, UcxKey key); 1.20 1.21 -#define ucx_map_sstr_put(m, s, d) ucx_map_put(m, ucx_key(s.ptr, s.length), d) 1.22 -#define ucx_map_cstr_put(m, s, d) ucx_map_put(m, ucx_key(s, strlen(s)), d) 1.23 -#define ucx_map_sstr_get(m, s) ucx_map_get(m, ucx_key(s.ptr, s.length)) 1.24 -#define ucx_map_cstr_get(m, s) ucx_map_get(m, ucx_key(s, strlen(s))) 1.25 +#define ucx_map_sstr_put(m, s, d) ucx_map_put(m, ucx_key(s.ptr, 1+s.length), d) 1.26 +#define ucx_map_cstr_put(m, s, d) ucx_map_put(m, ucx_key(s, 1+strlen(s)), d) 1.27 +#define ucx_map_sstr_get(m, s) ucx_map_get(m, ucx_key(s.ptr, 1+s.length)) 1.28 +#define ucx_map_cstr_get(m, s) ucx_map_get(m, ucx_key(s, 1+strlen(s))) 1.29 1.30 UcxKey ucx_key(void *data, size_t len); 1.31