This is a regression from ad0f061. If a VMware cursor rect was split up over multiple read()s then the stream would become corrupted as we set the restore point at the wrong place.
ad0f061