d1f6631 Fix traceback in MMDResolver when transitive dependency cannot be satisfied.

Authored and Committed by jkaluza 5 years ago
    Fix traceback in MMDResolver when transitive dependency cannot be satisfied.
    
    This fixes problems from #1184 when new platform stream is added and the
    input module depends on another module which is not built against this
    new platform, but in the same time the input module wants to be built
    against this new platform stream. See the unit-test for more info.
    
    The problem is that `MMDResolver.solve()` method sets the `alternative`
    to an empty list and stores the data there only if the alternative
    is found valid. If the alternative is not found valid, then it stays
    set to an empty list, but the code using `alternative` later expects
    it to only contains valid alternatives.
    
    This commit fixes this by setting the `alternative` only in a case
    we found it is valid alternative.
    
        
file modified
+27 -0