Previous blitting code could potentially write past the end of the buffer if the x or y position was odd, and for the same underlying reason, didn't get the chroma registration correct in the odd position case. https://bugzilla.gnome.org/show_bug.cgi?id=647830