An interesting case, and one of the downsides of using explicit return checking to handle errors.  I would prefer in this case that you check success anyway.  If you are right, then the check will never disrupt the execution flow, but it will still help set the culture of checking these status returns.  Your claim that success will never be false is hard to verify reading this code, and that certainty could change inadvertently, leaving this code in error.  Add the check to be safe, unless you are ready to get rid of the status returns completely.