fscanf(file, "%d", &highscore[i].Score);
fgets(line, MAX_LINE_LEN, file);
- if (line[strlen(line)-1] == '\n')
- line[strlen(line)-1] = '\0';
+ if (line[strlen(line) - 1] == '\n')
+ line[strlen(line) - 1] = '\0';
for (line_ptr = line; *line_ptr; line_ptr++)
{
if (*line_ptr != ' ' && *line_ptr != '\t' && *line_ptr != '\0')
{
- strncpy(highscore[i].Name, line_ptr, MAX_NAMELEN - 1);
- highscore[i].Name[MAX_NAMELEN - 1] = '\0';
+ strncpy(highscore[i].Name, line_ptr, MAX_PLAYER_NAME_LEN);
+ highscore[i].Name[MAX_PLAYER_NAME_LEN] = '\0';
break;
}
}
/* level directory info */
{ TYPE_STRING, &ldi.name, "name" },
+ { TYPE_STRING, &ldi.name_short, "name_short" },
{ TYPE_STRING, &ldi.author, "author" },
{ TYPE_INTEGER, &ldi.levels, "levels" },
{ TYPE_INTEGER, &ldi.first_level, "first_level" },
static void setLevelDirInfoToDefaults(struct LevelDirInfo *ldi)
{
ldi->name = getStringCopy(ANONYMOUS_NAME);
+ ldi->name_short = NULL;
ldi->author = getStringCopy(ANONYMOUS_NAME);
ldi->levels = 0;
ldi->first_level = 0;
setSetupInfo(i, getTokenValue(setup_file_list, token_info[i].text));
leveldir[current_entry] = ldi;
+ if (leveldir[current_entry].name_short == NULL)
+ leveldir[current_entry].name_short =
+ getStringCopy(leveldir[current_entry].name);
+
leveldir[current_entry].filename = getStringCopy(dir_entry->d_name);
leveldir[current_entry].last_level =
leveldir[current_entry].first_level +
setLevelDirInfoToDefaults(&ldi);
ldi.name = getLoginName();
+ ldi.name_short = getLoginName();
ldi.author = getRealName();
ldi.levels = 100;
ldi.first_level = 1;
freeSetupFileList(setup_file_list);
/* needed to work around problems with fixed length strings */
- if (strlen(setup.player_name) >= MAX_NAMELEN)
- setup.player_name[MAX_NAMELEN - 1] = '\0';
- else if (strlen(setup.player_name) < MAX_NAMELEN - 1)
+ if (strlen(setup.player_name) > MAX_PLAYER_NAME_LEN)
+ setup.player_name[MAX_PLAYER_NAME_LEN] = '\0';
+ else if (strlen(setup.player_name) < MAX_PLAYER_NAME_LEN)
{
- char *new_name = checked_malloc(MAX_NAMELEN);
+ char *new_name = checked_malloc(MAX_PLAYER_NAME_LEN + 1);
strcpy(new_name, setup.player_name);
free(setup.player_name);