• Eugene Baklanov's avatar
    Fix for priority order bug if reordering in SetRandom() · bd14afe3
    Eugene Baklanov authored
    Fix for the problem where order with priorities gets out of whack in case it's
    reordered by SetRandom() while another song is currently playing.
    What happens is, if some song is already playing and you have set some
    priorities before switching on the random mode, and then turn the mode on, the
    original code swaps position of the first song in the order (i.e., the highest
    priority song) with current, so that current is 0 (which it should be). The
    problem is, the "original" first song then goes to the place "current" song was
    after reordering, wherever that is, instead of going after the "current" song.
    This patch fixes the issue.
    Also the fix makes MoveOrder() public, because why shouldn't it be, anyway.  It
    certainly makes more sense than just having SwapOrders() public for some
    reason.
    Signed-off-by: 's avatarEugene Baklanov <miltenfiremage@gmail.com>
    bd14afe3
Queue.hxx 8.46 KB