The logic is indeed weird, nevertheless
the fix is a forward port from SLE11 SP3, so I kept the logic the same as it was
and just did what was needed to make it work.
Above logic is not so nice to do in YCP and I do not want to have different implementation logic of the same functionality in YCP and Ruby.
Small adaptions to be more ruby like are fine, rewritten logic is not.
As long as SLES11 will still be around for many years it makes sense to
keep back- and forward porting as