[bug #27790] Variant switch not detected

View: New views
6 Messages — Rating Filter:   Alert me  

[bug #27790] Variant switch not detected

by Sylvain Beucler-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


URL:
  <http://savannah.gnu.org/bugs/?27790>

                 Summary: Variant switch not detected
                 Project: XBoard
            Submitted by: None
            Submitted on: Fri 23 Oct 2009 12:13:54 PM UTC
                Category: None
                Severity: 3 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

When observing a FRC game on FICS right from move 1 (with follow or gnotify)
xboard stays in variant normal. I suspected that xboard doesn't request a move
list in that case. To verify that, I did a triple guest login at FICS. 2
player starting a FRC without moving. The 3rd observes (start position
displayed correctly but variant=normal). After manually giving the "moves"
command for the observer, xboard does switch to FRC but also shuffles the
startposition.






    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?27790>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-XBoard mailing list
Bug-XBoard@...
http://lists.gnu.org/mailman/listinfo/bug-xboard

[bug #27790] Variant switch not detected

by Sylvain Beucler-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Follow-up Comment #1, bug #27790 (project xboard):

It seems that when observing a game, one _always_ has to fetch a move list to
know which variant it was, even if you see the very first board. FICS gives an
indication of the variant after saying "You are now observing game #.", but
ICC doesn't, and immediately dumps a board on you. For games you play yourself
this is not needed, as the "Creating ..." message before contains the variant
indication.

Can you try changing line 3541 of backend.c:

        } else if (moveNum > 0 && newGameMode != IcsIdle &&

to:

        } else if ((moveNum > 0 || newGameMode == IcsObserving) && newGameMode !=
IcsIdle &&

? I think this should solve it.

H.G. Muller

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?27790>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-XBoard mailing list
Bug-XBoard@...
http://lists.gnu.org/mailman/listinfo/bug-xboard

[bug #27790] Variant switch not detected

by Sylvain Beucler-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Follow-up Comment #2, bug #27790 (project xboard):

Tried that and the variant is recognized now. But as in that manual case I
described, the initial board of the observer gets an extra shuffle in all wild
variants. The position is repaired after white's first move, though.

Apropos FRC - there is another unguarded debug printf in parser.[lc]:

fprintf(debugFP, "Parser FRC long %d %dn", ff, ft);


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?27790>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-XBoard mailing list
Bug-XBoard@...
http://lists.gnu.org/mailman/listinfo/bug-xboard

[bug #27790] Variant switch not detected

by Sylvain Beucler-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Follow-up Comment #3, bug #27790 (project xboard):

OK, I think I fully understand how it works now. The new game starts with a
board, but as the board oof FRC is not recognizably strange, you stay in
VariantNormal. (That it is not the regular opening position is no clue, as
there are many wilds with non-standard starting positions that are played as
VariantNormal.) But then the move list is requested (even when the board was
for move number 0), and triggers an offending VariantSwitch: normally
VariantSwitch redraws the current board in the context of the new variant,
after initializing the variant. The latter also sets up board 0, and in
shuffle games triggers a re-shuffle there. This is unwanted, and later
corrected when the board for the initial position comes in again with the move
list. But the latter is never displayed, as movelists are supposed to be
fetched in the background. So although it is setup in boards[0], it is neer
displayed, and the wrong shuffle hangs in the display until a move occurs.

I will fix it by putting back the original board after initializing the new
variant, when the board to display was boards[0], and thus must have contained
the original shuffle.

H.G. Muller

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?27790>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-XBoard mailing list
Bug-XBoard@...
http://lists.gnu.org/mailman/listinfo/bug-xboard

[bug #27790] Variant switch not detected

by Sylvain Beucler-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Update of bug #27790 (project xboard):

                  Status:                    None => Ready For Test        

    _______________________________________________________

Follow-up Comment #4:

Is this completely fixed now?

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?27790>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-XBoard mailing list
Bug-XBoard@...
http://lists.gnu.org/mailman/listinfo/bug-xboard

[bug #27790] Variant switch not detected

by Sylvain Beucler-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Follow-up Comment #5, bug #27790 (project xboard):

The points mentioned in "original submission" & "comment #2" are working now.

I haven't tested the follow-up points mentioned in the commit messages
regarding "Variant Switch"

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?27790>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-XBoard mailing list
Bug-XBoard@...
http://lists.gnu.org/mailman/listinfo/bug-xboard