I'm talking about other cases where error code ignores after your changes (method git_reference_rename), before your changes it's use `cleanup` that return -1, after your changes it sometimes return zero after error occur.