The problem is that this bug appears some times and some times not. It
happes when a player dance from the bar, but not everytime a player
dances. The assert error comes from line 1793 in play.c. It says
assert(!fComputing)
in the beginning of NextTurn()
The funny thing is that a message window pop up first and says:
player cannot move
player cannot move
(Look at the screenshots in the bugtracker.)
The only function I can imagine creates this message is ShowAutoMove(),
also located in play.c.
It also looks like a new game is started in the game record list, if it
is open.
What I'm trying to find, is the reason ShowAutoMove is called, which
call it is, and what happens from that point on untill NextTurn() is
called.
There is a call to ShowAutoMove() in line 1440. This call is in
ComputerTurn(), so I don't believe it's this call.
There is also a call to ShowAutoMove() in line 1782. This is in
TryBearoff(), so I don't think it's this call either.
Now what about the call to ShowAutoMove() in line 3072? This is in a
function called CommandMove(). This can be it!