* Patch from Dr Schofld's (IBM). In his own words

all TerrainEngine.LoadFromFileX(string filename) methods don't set the dirty bits in heightmap.diff[,] in contrast to the TerrainEngine.LoadFromFileX(string filename, int dimensionX, int dimensionY, int lowerboundX, int lowerboundY) cousins. this has the unpleasant drawback that the Scene.SendTerrainUpdate(bool) will not send layer data to the client.

the attached patch fixes all LoadFromFileX(.) methods.

Thanks!

* Also small build fix for AvatarFactoryModule
ThreadPoolClientBranch
Justin Clarke Casey 2008-02-13 16:35:42 +00:00
parent d91c03e23b
commit df21da6dec
2 changed files with 6 additions and 4 deletions

View File

@ -178,9 +178,11 @@ namespace OpenSim.Region.Environment.Modules
if (m_avatarsAppearance.ContainsKey(clientView.AgentId))
{
AvatarAppearance avatAppearance = null;
lock (m_avatarsAppearance)
{
AvatarAppearance avatAppearance = m_avatarsAppearance[clientView.AgentId];
avatAppearance = m_avatarsAppearance[clientView.AgentId];
}
avatAppearance.Wearables[wear.Type].AssetID = assetId;
avatAppearance.Wearables[wear.Type].ItemID = wear.ItemID;

View File

@ -817,7 +817,7 @@ namespace OpenSim.Region.Terrain
{
for (x = 0; x < h; x++)
{
heightmap.map[x, y] = bs.ReadDouble();
heightmap.Set(x, y, (double) bs.ReadSingle());
}
}
@ -842,7 +842,7 @@ namespace OpenSim.Region.Terrain
{
for (x = 0; x < w; x++)
{
heightmap.map[x, y] = (double) bs.ReadSingle();
heightmap.Set(x, y, (double) bs.ReadSingle());
}
}
@ -954,7 +954,7 @@ namespace OpenSim.Region.Terrain
{
for (x = 0; x < w; x++)
{
heightmap.map[x, y] = (double) bs.ReadByte()*((double) bs.ReadByte()/127.0);
heightmap.Set(x, y, (double) bs.ReadByte()*((double) bs.ReadByte()/127.0));
bs.ReadBytes(11); // Advance the stream to next bytes.
}
}