# HG changeset patch # User Thinker K.F. Li # Date 1261492793 -28800 # Node ID 47a860beaa44461b7f9c0767b600b6184f96885e # Parent 3f695a6177b2a054868c6a4933bf9d7f144f85b6 Every coord can only appear at mot one time in the dirty coord list. rdman_coord_changed() will check COF_DIRTY flags to make sure never add a coord into dirty coord list more than one time. So, we don't need to check it, again, in clean_rdman_dirties(). diff -r 3f695a6177b2 -r 47a860beaa44 src/redraw_man.c --- a/src/redraw_man.c Tue Dec 22 22:31:38 2009 +0800 +++ b/src/redraw_man.c Tue Dec 22 22:39:53 2009 +0800 @@ -1864,23 +1864,21 @@ coords = rdman->dirty_coords.ds; for(i = 0; i < rdman->dirty_coords.num; i++) { coord = coords[i]; - if(coord->flags & COF_DIRTY) { - if(!coord_get_flags(coord, COF_OWN_CANVAS)) - SWAP(coord->cur_area, coord->last_area, area_t *); - else { - coord->last_area = coord->cur_area; - coord->cur_area = &coord->canvas_info->owner_mems_area; - /* coord->cur_area are reseted to another area at - * #RST. - * - * coord->cur_area of a cached coord is aggregated - * area. But, its meaning is changed back to be area - * of members to compute. It can avoid specialized - * code for cached coords to change meaning of - * cur_area temporary when computing area of a cached - * coord. - */ - } + if(!coord_get_flags(coord, COF_OWN_CANVAS)) + SWAP(coord->cur_area, coord->last_area, area_t *); + else { + coord->last_area = coord->cur_area; + coord->cur_area = &coord->canvas_info->owner_mems_area; + /* coord->cur_area are reseted to another area at + * #RST. + * + * coord->cur_area of a cached coord is aggregated + * area. But, its meaning is changed back to be area + * of members to compute. It can avoid specialized + * code for cached coords to change meaning of + * cur_area temporary when computing area of a cached + * coord. + */ } }