The last fix, to try to return the last error, really returns the first
return code after the last error, which could be zero. Instead, return
the last error. Also, change rc to err to make it visually distinct from
rv, which is the cause of my error in e54bb0ad8058.
Reported by: Bill Sommerfeld
Fixes: e54bb0ad8058
Sponsored by: Netflix