Don't panic when a DefBuffer contains less bytes than its size
If a DefBuffer contains less bytes than its size, the remaining bytes should
be initialized to `0`. I overlooked that `copy_from_slice` requires that
its two slices are the same size, and so this panics in these cases. This
was picked up by fuzzing.