CHECKALLOC (buffer);
int l = sprintf (buffer, "nbplayers: %d\n", nbplayers);
- l += sprintf (buffer + l, "lang: %s\n", lang);
- l += sprintf (buffer + l, "board: %s\n", board);
- l += sprintf (buffer + l, "play: %s\n", play->tab);
- l += sprintf (buffer + l, "draw: %s\n", draw->tiles);
+ l += sprintf (buffer + l, "lang: \"%s\"\n", lang);
+ l += sprintf (buffer + l, "board: \"%s\"\n", board);
+ l += sprintf (buffer + l, "play: \"%s\"\n", play->tab);
+ l += sprintf (buffer + l, "nbtiles: %d\n", draw->nbtiles);
+ l += sprintf (buffer + l, "tiles: \"%s\"\n", draw->tiles);
for (i = 0; i < nbplayers; i++) {
- l += sprintf (buffer + l, "game[%d]: %s\n", i, game[i]->tiles);
+ l += sprintf (buffer + l, "game[%d]: \"%s\"\n", i, game[i]->tiles);
}
- l += sprintf (buffer + l, "n: %d\n", n);
- l += sprintf (buffer + l, "turn[%d]: %s\n", n, turn[n]->tab);
+ l += sprintf (buffer + l, "current: %d\n", n);
+ l += sprintf (buffer + l, "turn[%d]: \"%s\"\n", n, turn[n]->tab);
for (i = 0; i < nbplayers; i++) {
l += sprintf (buffer + l, "score[%d]: %d\n", i, score[i]);
}
int ret = 0;
FILE *fd = fopen (filename, "w");
if (fd) {
- fwrite (data, strlen (data), 1, fd);
+ size_t n = fwrite (data, strlen (data), 1, fd);
fclose (fd);
- ret = 1;
+ ret = (n == strlen (data));
}
return ret;
}
drawwindow (game[n], score[n], xdrawwin[n], ydrawwin[n], 1);
int nbpoints = 0;
int stop = 0;
+ char *data = NULL;
while (!stop) {
char highlight = current = gessletter (play, x, y);
if ((current == ' ') && (letter != '\0')) {
stop = 1;
break;
case 's':
- {
- char *data = savedata (nbplayers, language, boardname, play, draw, game, n, turn, score);
- writedata ("data.scr", data);
- free (data);
- }
+ data = savedata (nbplayers, language, boardname, play, draw, game, n, turn, score);
+ writedata ("data.scr", data);
+ free (data);
break;
case 't':
mode ^= 1;