Fix variant switch on PGN loading
authorH.G. Muller <h.g.muller@hccnet.nl>
Mon, 5 Jul 2010 07:55:14 +0000 (09:55 +0200)
committerArun Persaud <arun@nubati.net>
Wed, 14 Jul 2010 04:25:07 +0000 (21:25 -0700)
When the PGN specified an essentially different variant, the
piece bitmaps were not properly adapted, because the switch was done by
calling InitPosition(), rather than Reset(). (The latter would destroy
the PGN tags info.) We now added an explicit call to ResetFrontEnd(),
(which is normally done from Reset()).

backend.c

index 95563f0..4db36c3 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -10188,6 +10188,7 @@ LoadGame(f, gameNumber, title, useList)
         /* [HGM] PGNvariant: automatically switch to variant given in PGN tag */
         if(gameInfo.variant != oldVariant) {
             startedFromPositionFile = FALSE; /* [HGM] loadPos: variant switch likely makes position invalid */
+           ResetFrontEnd(); // [HGM] might need other bitmaps. Cannot use Reset() because it clears gameInfo :-(
            InitPosition(TRUE);
             oldVariant = gameInfo.variant;
            if (appData.debugMode)