// Find the result. Skip games with no result.
for (move = current_game.moves; move != NULL; move = move->next) {
+ if (move->class == NULL_MOVE) {
+ // Skip games with null moves.
+ return;
+ }
if (move->terminating_result) {
result = move->terminating_result;
}
}
int file_num = current_game.file_number;
long start_position = current_game.start_position;
+ int computer_flag = GlobalState.computer_flag;
// Parse date and time, if it exists. Set invalid dates to year 3000.
const char *date_tag = current_game.tags[DATE_TAG];
fwrite(×tamp, sizeof(timestamp), 1, outputfile);
fwrite(&file_num, sizeof(file_num), 1, outputfile);
fwrite(&start_position, sizeof(start_position), 1, outputfile);
+ putc(computer_flag, outputfile);
putc(strlen((char *)move->move), outputfile);
fwrite(move->move, strlen((char *)move->move), 1, outputfile);
fwrite(×tamp, sizeof(timestamp), 1, outputfile);
fwrite(&file_num, sizeof(file_num), 1, outputfile);
fwrite(&start_position, sizeof(start_position), 1, outputfile);
+ putc(computer_flag, outputfile);
putc(0, outputfile); // No move.
free(bpfen);