MCPcopy Create free account
hub / github.com/defold/defold / DeleteFactory

Function DeleteFactory

engine/resource/src/resource.cpp:343–379  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

341}
342
343void DeleteFactory(HFactory factory)
344{
345 factory->m_JobThreadContext = 0;
346
347 ReleaseBuiltinsArchive(factory);
348
349 if (factory->m_Mounts)
350 dmResourceMounts::Destroy(factory->m_Mounts);
351
352 dmResourceProvider::ArchiveLoaderParams archive_loader_params;
353 archive_loader_params.m_Factory = factory;
354 archive_loader_params.m_HttpCache = 0;
355 dmResourceProvider::FinalizeLoaders(&archive_loader_params);
356
357 if (factory->m_Socket)
358 {
359 dmMessage::DeleteSocket(factory->m_Socket);
360 }
361 if (factory->m_LoadMutex)
362 {
363 dmMutex::Delete(factory->m_LoadMutex);
364 }
365
366 if (factory->m_Resources && !factory->m_Resources->Empty())
367 {
368 dmLogError("Leaked resources:");
369 factory->m_Resources->Iterate<>(&ResourceIteratorCallback, (void*)0);
370 }
371
372 delete factory->m_Resources;
373 delete factory->m_ResourceToHash;
374 if (factory->m_ResourceHashToFilename)
375 delete factory->m_ResourceHashToFilename;
376 if (factory->m_ResourceReloadedCallbacks)
377 delete factory->m_ResourceReloadedCallbacks;
378 delete factory;
379}
380
381static void Dispatch(dmMessage::Message* message, void* user_ptr)
382{

Callers 15

TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TESTFunction · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85
TearDownMethod · 0.85

Calls 6

ReleaseBuiltinsArchiveFunction · 0.85
FinalizeLoadersFunction · 0.85
DeleteSocketFunction · 0.85
DestroyFunction · 0.70
DeleteFunction · 0.70
EmptyMethod · 0.45

Tested by 15

TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TESTFunction · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68
TearDownMethod · 0.68