Added INDEXED_LIST_BEGIN/END_SAFE_IDENTIFIER_CHANGE functions which are used by managers to remove objects from indexed lists before their identifiers change and to add them back in afterwards. New module variables DEFINED_LISTS(object_type) and NUMBER_OF_DEFINED_LISTS(object_type) store pointers to all known indexed lists to enable this behaviour -- CREATE and DESTROY have been modified to handle this. New variable ITERATION_COUNT(object_type) remembers the number of times iterations are in-progress for these types of lists and disallows identifier changes if non-zero.
Added INDEXED_LIST_BEGIN/END_SAFE_IDENTIFIER_CHANGE functions which
are used by managers to remove objects from indexed lists before their
identifiers change and to add them back in afterwards. New module
variables DEFINED_LISTS(object_type) and
NUMBER_OF_DEFINED_LISTS(object_type) store pointers to all known
indexed lists to enable this behaviour -- CREATE and DESTROY have been
modified to handle this.
New variable ITERATION_COUNT(object_type) remembers the number of
times iterations are in-progress for these types of lists and
disallows identifier changes if non-zero.


cmiss/cmgui,cmiss/cmgui