BUG: Abort iteration when dtype buffering errored

This means that if the buffer is smaller then the array,
a transfer may be done up until the first bad element is
reached. This is in line with all other transfers.