On Sat, Mar 22, 2014 at 10:33:29PM +0800, Axel Lin wrote: > current_remaining_bytes is an unsigned long and cannot be below 0.
> - if (xfer->bits_per_word > 8) {
> +
> + if (xfer->bits_per_word > 8)
> as->current_remaining_bytes -= 2;
> - if (as->current_remaining_bytes < 0)
> - as->current_remaining_bytes = 0;
> - } else {
> + else
> as->current_remaining_bytes--;
> - }
This removes an error check in the case that we set the remaining bytes
to -1. The length validation the core does should ensure that never
happens but it seems wrong to just ignore that - we should at least note
in the changelog that the analysis has been done.
Are you sure that the best fix isn't to just use an int here?
signature.asc
Description: Digital signature
