// Returns handle // Not frequently called PreFile::FileHandle *PreMgr::getContainedFile(const char *pName) { Dbg_AssertPtr(pName); // replace all '/' with '\' char cleaned_name[128]; const char *pCharIn = pName; char *pCharOut = cleaned_name; while (1) { *pCharOut = *pCharIn; if (*pCharIn == '\0') break; if (*pCharOut == '/') *pCharOut = '\\'; pCharIn++; pCharOut++; } PreFile::FileHandle *pHandle = NULL; mp_table->IterateStart(); PreFile *pPre = mp_table->IterateNext(); while(pPre) { pHandle = pPre->GetContainedFile(cleaned_name); if (pHandle) { mp_activePre = pPre; mp_activeHandle = pHandle; mp_activeData = pPre->GetContainedFileByHandle(pHandle); # ifdef __PLAT_NGPS__ scePrintf("+++ %s is in PRE\n", cleaned_name); # endif return pHandle; } pPre = mp_table->IterateNext(); } # ifdef __PLAT_NGPS__ scePrintf("--- %s not found in PRE\n", cleaned_name); # endif return NULL; }
// ErrorMessage: Displays message and goes into an infinite loop // continues rendering void _gsDebugAssert (const char *string) { scePrintf(string); while(1);; }