BGE: Fix T45267 Lib load without material caching.

This commit is contained in:
Porteries Tristan 2015-07-02 12:20:13 +02:00 committed by Sergey Sharybin
parent 44309e8eea
commit 2d25656e05
Notes: blender-bot 2023-02-14 08:56:48 +01:00
Referenced by issue #45267, Disabling 'Use Material Caching' causes Blender to crash when calling LibLoad
1 changed files with 10 additions and 6 deletions

View File

@ -1359,14 +1359,18 @@ bool KX_BlenderSceneConverter::MergeScene(KX_Scene *to, KX_Scene *from)
}
MaterialCache::iterator matcacheit = m_mat_cache.find(from);
// Merge cached BL_Material map.
m_mat_cache[to].insert(matcacheit->second.begin(), matcacheit->second.end());
m_mat_cache.erase(matcacheit);
if (matcacheit != m_mat_cache.end()) {
// Merge cached BL_Material map.
m_mat_cache[to].insert(matcacheit->second.begin(), matcacheit->second.end());
m_mat_cache.erase(matcacheit);
}
PolyMaterialCache::iterator polymatcacheit = m_polymat_cache.find(from);
// Merge cached RAS_IPolyMaterial map.
m_polymat_cache[to].insert(polymatcacheit->second.begin(), polymatcacheit->second.end());
m_polymat_cache.erase(polymatcacheit);
if (polymatcacheit != m_polymat_cache.end()) {
// Merge cached RAS_IPolyMaterial map.
m_polymat_cache[to].insert(polymatcacheit->second.begin(), polymatcacheit->second.end());
m_polymat_cache.erase(polymatcacheit);
}
return true;
}