This assignement of r is misleading. It does assign a value to r that is never
used by any code.
When the code runs into the while loop, r is always initialized again before any
usage. There isn't any direct jump to the "out" label making this value being
used as a return code.
When the code does exit this while loop, the r value is reassigned before being
used as a return code.
This makes this assignement useless and confusing. This patch simply remove this dead/useless code.