Shouldn't there be an `else` on here to call `unknonwn_error`?