X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fmisc.c;h=a555a20000531f6ae617cc39ad6e4ab5dd188f38;hb=a19647f4f265bb23bc249aa28a10d1d47a6179e1;hp=9865b9d6c6e29c7e0a724c687db73a3a8210401c;hpb=38c26472a6e9f0f037ddfe535d3919c00772b26f;p=rocksndiamonds.git diff --git a/src/libgame/misc.c b/src/libgame/misc.c index 9865b9d6..a555a200 100644 --- a/src/libgame/misc.c +++ b/src/libgame/misc.c @@ -1533,6 +1533,71 @@ struct FileInfo *getFileListFromConfigList(struct ConfigInfo *config_list, return file_list; } +static void CheckArtworkConfig(struct ArtworkListInfo *artwork_info) +{ + struct FileInfo *file_list = artwork_info->file_list; + struct ConfigInfo *suffix_list = artwork_info->suffix_list; + int num_file_list_entries = artwork_info->num_file_list_entries; + int num_suffix_list_entries = artwork_info->num_suffix_list_entries; + char *filename = getCustomArtworkConfigFilename(artwork_info->type); + struct SetupFileList *setup_file_list; + char *known_token_value = "[KNOWN_TOKEN]"; + int i, j; + + if (!options.verbose) + return; + + if (filename == NULL) + return; + + if ((setup_file_list = loadSetupFileList(filename)) == NULL) + return; + + for (i=0; ivalue, known_token_value) != 0) + { + Error(ERR_RETURN, "custom artwork configuration warning:"); + Error(ERR_RETURN, "- config file: '%s'", filename); + Error(ERR_RETURN, "- config token: '%s'", setup_file_list->token); + Error(ERR_WARN, "token not recognized"); + } + + setup_file_list = setup_file_list->next; + } + + freeSetupFileList(setup_file_list); +} + static void LoadArtworkConfig(struct ArtworkListInfo *artwork_info) { struct FileInfo *file_list = artwork_info->file_list; @@ -1561,47 +1626,47 @@ static void LoadArtworkConfig(struct ArtworkListInfo *artwork_info) if (filename == NULL) return; - if ((setup_file_list = loadSetupFileList(filename))) + if ((setup_file_list = loadSetupFileList(filename)) == NULL) + return; + + for (i=0; i '%s'\n", file_list[i].filename); - else - printf("-> UNDEFINED [-> '%s']\n", file_list[i].default_filename); - } -#endif + for (i=0; i '%s'\n", file_list[i].filename); + else + printf("-> UNDEFINED [-> '%s']\n", file_list[i].default_filename); } +#endif } static void deleteArtworkListEntry(struct ArtworkListInfo *artwork_info, @@ -1784,6 +1849,7 @@ void ReloadCustomArtworkList(struct ArtworkListInfo *artwork_info) struct FileInfo *file_list = artwork_info->file_list; int i; + CheckArtworkConfig(artwork_info); LoadArtworkConfig(artwork_info); #if 0