| 319 | } |
| 320 | |
| 321 | ProjectInfo* ProjectInfo::Load(const String& path) |
| 322 | { |
| 323 | // Try to reuse loaded file |
| 324 | for (int32 i = 0; i < ProjectsCache.Count(); i++) |
| 325 | { |
| 326 | if (ProjectsCache[i]->ProjectPath == path) |
| 327 | return ProjectsCache[i]; |
| 328 | } |
| 329 | |
| 330 | // Load |
| 331 | PROFILE_MEM(Editor); |
| 332 | auto project = New<ProjectInfo>(); |
| 333 | if (project->LoadProject(path)) |
| 334 | { |
| 335 | Delete(project); |
| 336 | return nullptr; |
| 337 | } |
| 338 | |
| 339 | // Cache project |
| 340 | ProjectsCache.Add(project); |
| 341 | return project; |
| 342 | } |
no test coverage detected