allow zero-length scratch adds as well

(and fix -Werror failing out for overflow issues
with other ways of writing that assert...)

Change-Id: I796844f82fef1f475a134741c3267ea1227bf936