--- libaitio/inc/aitio.h 2012/05/17 08:08:25 1.17.4.4 +++ libaitio/inc/aitio.h 2012/05/17 16:42:01 1.17.4.5 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.17.4.4 2012/05/17 08:08:25 misho Exp $ +* $Id: aitio.h,v 1.17.4.5 2012/05/17 16:42:01 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -634,20 +634,20 @@ int io_arrayVacuum(array_t * __restrict arr, int fromW io_arraySize((_arr)) * sizeof(void*))) #define io_arrayGet2(_arr, _d) (assert((_arr) && (_arr)->arr_num > _d), ((_arr)->arr_data + _d)) -#define io_arrayGet(_arr, _d) (assert((_arr) && (_arr)->arr_num > _d), *((_arr)->arr_data + _d)) +#define io_arrayGet(_arr, _d) (assert((_arr) && (_arr)->arr_num > _d), (_arr)->arr_data[_d]) #define io_array(_arr, _d, _type) (assert((_arr) && (_arr)->arr_num > _d), \ - ((_type) *((_arr)->arr_data + _d))) + ((_type) (_arr)->arr_data[_d])) #define io_arraySet(_arr, _d, _ptr) do { \ assert((_arr) && (_arr)->arr_num > _d); \ if ((_arr)->arr_last < _d) \ (_arr)->arr_last = _d; \ - *((_arr)->arr_data + _d) = (void*) (_ptr); \ + (_arr)->arr_data[_d] = (void*) (_ptr); \ } while (0) #define io_arrayDel(_arr, _d, _fri) do { \ assert((_arr) && (_arr)->arr_num > _d); \ - if (_fri) \ - free(*((_arr)->arr_data + _d)); \ - *((_arr)->arr_data + _d) = NULL; \ + if (_fri && (_arr)->arr_data[_d]) \ + free((_arr)->arr_data[_d]); \ + (_arr)->arr_data[_d] = NULL; \ } while (0) #define io_arraySyncLast(_arr) do { \ assert((_arr)); \