Maybe a hard to solve bug, and a hard one to report correctly : randomly the client crash while changing theme. I have multiples errors at differents points of the code, I assume it can be a threading problem. Step to reproduce : Change style, change style and change style, pretty fast if possible.
Error 1 : SkinResources.cs, lines 392-399; At foreach instruction, collection has been modified, can't enumerate
Error 2 : FontAssetCore.cs, lines 234-239; AtFT.FT_Set_Char_Size, attempt to read or write protected memory
Error 3 : SkinResources line 524 in "protected virtual void LoadDirectory(string rootDirectoryPath)" method : NullReferenceExeption because of _localResourceFilePaths.Count = 0
There are others errors, but I think there is only one origin so I'll stop enumerate them for now. Ask if you need more error samples.
Cheers.
Smeulf.
Error 1 : SkinResources.cs, lines 392-399; At foreach instruction, collection has been modified, can't enumerate
Code:
protected virtual void CheckResourcesInitialized()
{
if (IsResourcesInitialized)
return;
_localResourceFilePaths = new Dictionary<string, string>();
[B]foreach[/B] (string rootDirectoryPath in _rootDirectoryPaths)
LoadDirectory(rootDirectoryPath);
}
Error 2 : FontAssetCore.cs, lines 234-239; AtFT.FT_Set_Char_Size, attempt to read or write protected memory
Code:
private bool AddGlyph(uint glyphIndex)
{
// FreeType measures font size in terms Of 1/64ths of a point.
// 1 point = 1/72th of an inch. Resolution is in dots (pixels) per inch.
float point_size = 64.0f * _charSet.RenderedSize * 72.0f / _resolution;
[B]FT.FT_Set_Char_Size(_family.Face, (int) point_size, 0, _resolution, 0);[/B]
Code:
if (_localResourceFilePaths.ContainsKey(resourceName))
There are others errors, but I think there is only one origin so I'll stop enumerate them for now. Ask if you need more error samples.
Cheers.
Smeulf.