Skip to content

Commit be34129

Browse files
committed
fix: issue #10
1 parent 9f89f88 commit be34129

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

src/play/main.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ unsigned char playTicTacToe(const Configuration* config, char* localFilePath) {
1818
newList(&players);
1919
newList(&playersAfterMatch);
2020

21-
requestPlayerNames(&players);
21+
if (!requestPlayerNames(&players)) {
22+
printf("> Error! An error occurred on get player names.");
23+
return 0;
24+
};
2225

2326
randomSort(&players);
2427

src/play/utilities.c

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,17 @@ unsigned char requestPlayerNames(List* players) {
1414
player.points = 0;
1515
player.assignedForm = ' ';
1616

17-
do {
17+
printf("> Enter a player name (0 to exit): ");
18+
fflush(stdin);
19+
fgets(player.name, PLAYER_NAME_LENGTH, stdin);
20+
puts("");
21+
22+
lineBreak = strrchr(player.name, '\n');
23+
if (lineBreak != NULL) *lineBreak = '\0';
24+
25+
if (*(player.name) == '0' || !pushElement(players, &player, sizeof(player))) return 0;
26+
27+
while (*(player.name) != '0') {
1828
printf("> Enter a player name (0 to exit): ");
1929
fflush(stdin);
2030
fgets(player.name, PLAYER_NAME_LENGTH, stdin);
@@ -23,10 +33,9 @@ unsigned char requestPlayerNames(List* players) {
2333
lineBreak = strrchr(player.name, '\n');
2434
if (lineBreak != NULL) *lineBreak = '\0';
2535

26-
if (*(player.name) == '0') continue;
36+
if (*(player.name) == '0') break;
2737
if (!pushElement(players, &player, sizeof(player))) return 0;
28-
29-
} while (*(player.name) != '0');
38+
};
3039

3140
return 1;
3241
}

0 commit comments

Comments
 (0)