Ingo 3 will cause condition 2 to be '-' and condition 3 to be '', thus
breaking the rule.

The code seems to have some confusion as to if $vars->userheader is
supposed to be an array or a straight value.

The attached patch fixes at least this problem by forcing it to always
be treated as a straight value that is unconditionally set to the user
header in question.
(For an actual commit, the lines should at the very least be deleted
and the indendation corrected.)