aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
diff options
context:
space:
mode:
authorJohn Hurliman2009-09-30 15:53:03 -0700
committerJohn Hurliman2009-09-30 15:53:03 -0700
commit5dfd2643dfc530280e5dcd0056b59add7d49f313 (patch)
tree1e508a2e9be42eda630f0b97c4fac9606a288a7e /OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
parentPrevent null data being sent to the decoder (diff)
downloadopensim-SC_OLD-5dfd2643dfc530280e5dcd0056b59add7d49f313.zip
opensim-SC_OLD-5dfd2643dfc530280e5dcd0056b59add7d49f313.tar.gz
opensim-SC_OLD-5dfd2643dfc530280e5dcd0056b59add7d49f313.tar.bz2
opensim-SC_OLD-5dfd2643dfc530280e5dcd0056b59add7d49f313.tar.xz
* Change the signature of the agent set appearance callback to prevent unnecessary serialization/deserialization of TextureEntry objects and allow TextureEntry to be inspected for missing bakes
* Inspect incoming TextureEntry updates for bakes that do not exist on the simulator and request the missing textures * Properly handle appearance updates that do not have a TextureEntry set
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs14
1 files changed, 8 insertions, 6 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index dae525d..9788f40 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -5272,13 +5272,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5272 // for the client session anyway, in order to protect ourselves against bad code in plugins 5272 // for the client session anyway, in order to protect ourselves against bad code in plugins
5273 try 5273 try
5274 { 5274 {
5275 List<byte> visualparams = new List<byte>(); 5275 byte[] visualparams = new byte[appear.VisualParam.Length];
5276 foreach (AgentSetAppearancePacket.VisualParamBlock x in appear.VisualParam) 5276 for (int i = 0; i < appear.VisualParam.Length; i++)
5277 { 5277 visualparams[i] = appear.VisualParam[i].ParamValue;
5278 visualparams.Add(x.ParamValue); 5278
5279 } 5279 Primitive.TextureEntry te = null;
5280 if (appear.ObjectData.TextureEntry.Length > 1)
5281 te = new Primitive.TextureEntry(appear.ObjectData.TextureEntry, 0, appear.ObjectData.TextureEntry.Length);
5280 5282
5281 handlerSetAppearance(appear.ObjectData.TextureEntry, visualparams); 5283 handlerSetAppearance(te, visualparams);
5282 } 5284 }
5283 catch (Exception e) 5285 catch (Exception e)
5284 { 5286 {