Crash was caused by the difference in how compositor walks tile rectangles and how they were walked in partial update function: compositor excludes right / top bound and partial update handled it which lead to reading / writing to wrong memory. Switch partial update routines to the same logic as it's used in tile compositor, which made it kind of unified with render rectangle update.