Changeset 3556 for libcaca/trunk/caca/string.c
- Timestamp:
- 07/19/09 22:37:12 (4 years ago)
- File:
-
- 1 edited
-
libcaca/trunk/caca/string.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcaca/trunk/caca/string.c
r3554 r3556 449 449 continue; 450 450 451 dst->chars[dstix + i] = src->chars[srcix + i]; 452 dst->attrs[dstix + i] = src->attrs[srcix + i]; 451 if(dst->chars[dstix + i] != src->chars[srcix + i] || 452 dst->attrs[dstix + i] != src->attrs[srcix + i]) 453 { 454 dst->chars[dstix + i] = src->chars[srcix + i]; 455 dst->attrs[dstix + i] = src->attrs[srcix + i]; 456 caca_add_dirty_rect(dst, x + starti + i, y + j, 1, 1); 457 } 453 458 } 454 459 } 455 460 else 456 461 { 457 memcpy(dst->chars + dstix, src->chars + srcix, stride * 4); 458 memcpy(dst->attrs + dstix, src->attrs + srcix, stride * 4); 462 if(memcmp(dst->chars + dstix, src->chars + srcix, stride * 4) || 463 memcmp(dst->attrs + dstix, src->attrs + srcix, stride * 4)) 464 { 465 /* FIXME be more precise ? */ 466 memcpy(dst->chars + dstix, src->chars + srcix, stride * 4); 467 memcpy(dst->attrs + dstix, src->attrs + srcix, stride * 4); 468 caca_add_dirty_rect(dst, x + starti, y + j, stride, 1); 469 } 459 470 } 460 471 … … 467 478 } 468 479 469 caca_add_dirty_rect(dst, starti + x - bleed_left, startj + y,470 endi - starti + bleed_left + bleed_right,471 endj - startj);472 480 473 481 return 0;
Note: See TracChangeset
for help on using the changeset viewer.
