In Canola's case, largely for similar reasons to maemo (though I really don'r see the commercial reasoning). It was a managerial decision entirely beyond the developers (and one which the developers, as with maemo, attempted to fight).
I'm not sure if you meant the 'unequal players' bit to apply to Canola, but that's at least one case where their contributed code far outweighs the size and significance of their closed code.