* Fix a bug in the archiver where I didn't realize a shape still needs its default texture as well as its face textures
parent
53c9ce46b3
commit
cb70299092
|
@ -296,6 +296,7 @@ namespace OpenSim.Framework
|
|||
ProfileBegin = LLObject.PackBeginCut(profileRange.X);
|
||||
ProfileEnd = LLObject.PackEndCut(profileRange.Y);
|
||||
}
|
||||
|
||||
public byte[] ExtraParams
|
||||
{
|
||||
get
|
||||
|
@ -528,6 +529,7 @@ namespace OpenSim.Framework
|
|||
|
||||
return data;
|
||||
}
|
||||
|
||||
public void ReadFlexiData(byte[] data, int pos)
|
||||
{
|
||||
if (data.Length-pos >= 5)
|
||||
|
@ -558,6 +560,7 @@ namespace OpenSim.Framework
|
|||
FlexiForceZ = 0f;
|
||||
}
|
||||
}
|
||||
|
||||
public byte[] GetFlexiBytes()
|
||||
{
|
||||
byte[] data = new byte[16];
|
||||
|
@ -576,6 +579,7 @@ namespace OpenSim.Framework
|
|||
|
||||
return data;
|
||||
}
|
||||
|
||||
public void ReadLightData(byte[] data, int pos)
|
||||
{
|
||||
if (data.Length - pos >= 16)
|
||||
|
@ -605,6 +609,7 @@ namespace OpenSim.Framework
|
|||
LightIntensity = 0f;
|
||||
}
|
||||
}
|
||||
|
||||
public byte[] GetLightBytes()
|
||||
{
|
||||
byte[] data = new byte[16];
|
||||
|
|
|
@ -99,17 +99,22 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
|
|||
m_log.DebugFormat(
|
||||
"[ARCHIVER]: Getting part {0}, {1} for object {2}", part.Name, part.UUID, sceneObject.UUID);
|
||||
|
||||
LLObject.TextureEntry textureEntry = part.Shape.Textures;
|
||||
|
||||
// Get the prim's default texture. This will be used for faces which don't have their own texture
|
||||
assetUuids[textureEntry.DefaultTexture.TextureID] = 1;
|
||||
|
||||
// XXX: Not a great way to iterate through face textures, but there's no
|
||||
// other way to tell how many faces there actually are
|
||||
// other method available to tell how many faces there actually are
|
||||
int i = 0;
|
||||
foreach (LLObject.TextureEntryFace texture in part.Shape.Textures.FaceTextures)
|
||||
foreach (LLObject.TextureEntryFace texture in textureEntry.FaceTextures)
|
||||
{
|
||||
if (texture != null)
|
||||
{
|
||||
m_log.DebugFormat("[ARCHIVER]: Got face {0}", i++);
|
||||
assetUuids[texture.TextureID] = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach (TaskInventoryItem tii in part.TaskInventory.Values)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue