X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=menus.c;h=653d978d32d0f366184399ebec18ffbda1ff9878;hb=54def5260846784eea25fad94a8ef0c34dcf807b;hp=9d2b286229c5d5656a79881cec324a0c44af633c;hpb=c927f6b84a06bd7ed84adf0216b24acb042115d2;p=xboard.git diff --git a/menus.c b/menus.c index 9d2b286..653d978 100644 --- a/menus.c +++ b/menus.c @@ -173,10 +173,12 @@ ReloadPositionProc () void LoadPositionProc() { + static char buf[MSG_SIZ]; if (gameMode == AnalyzeMode || gameMode == AnalyzeFile) { Reset(FALSE, TRUE); } - FileNamePopUp(_("Load position file name?"), "", ".fen .epd .pos", LoadPosition, "rb"); + snprintf(buf, MSG_SIZ, "%s/", appData.positionDir); + FileNamePopUp(_("Load position file name?"), buf, ".fen .epd .pos", LoadPosition, "rb"); } void @@ -1176,6 +1178,7 @@ InstallNewEngine (char *command, char *dir, char *variants, char *protocol) snprintf(buf + strlen(buf), MSG_SIZ - strlen(buf), " -fd %s", dir); if(!strcmp(protocol, "uci")) snprintf(buf + strlen(buf), MSG_SIZ - strlen(buf), " -fUCI"); + if(strstr(firstChessProgramNames, buf)) return; // avoid duplicats // append line quote = malloc(strlen(firstChessProgramNames) + strlen(buf) + 2); sprintf(quote, "%s%s\n", firstChessProgramNames, buf);