static void Create_GC_List(char *FullPath)
{
	FILE *fp = fopen(FullPath, "rb");
	if(!fp && strstr(FullPath, "/root") != NULL) //fst folder
	{
		*(strstr(FullPath, "/root") + 1) = '\0';
		if(strlen(FullPath) + FST_APPEND_SIZE < MAX_MSG_SIZE) strcat(FullPath, FST_APPEND);
		fp = fopen(FullPath, "rb");
	}
	if(fp)
	{
		fread((void*)&gc_hdr, 1, sizeof(gc_discHdr), fp);
		if(gc_hdr.magic == GC_MAGIC)
		{
			AddISO((const char*)gc_hdr.id, (const char*)gc_hdr.title,
					FullPath, 0x000000, TYPE_GC_GAME);
			/* Check for disc 2 */
			fseek(fp, 6, SEEK_SET);
			fread(gc_disc, 1, 1, fp);
			if(gc_disc[0])
			{
				wcslcat(m_gameList.back().title, L" disc 2", 63);
				m_gameList.back().settings[0] = 1;
			}
		}
		fclose(fp);
	}
}
Example #2
0
size_t
SDL_wcslcat(wchar_t *dst, const wchar_t *src, size_t maxlen)
{
#if defined(HAVE_WCSLCAT)
    return wcslcat(dst, src, maxlen);
#else
    size_t dstlen = SDL_wcslen(dst);
    size_t srclen = SDL_wcslen(src);
    if (dstlen < maxlen) {
        SDL_wcslcpy(dst + dstlen, src, maxlen - dstlen);
    }
    return dstlen + srclen;
#endif /* HAVE_WCSLCAT */
}