mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 17:05:55 +08:00
Added patch from Johan. First attempt to solve the LibSL.Packet GC problem. Works with LibSL rev>1532
This commit is contained in:
@@ -241,7 +241,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
MainLog.Instance.Verbose(
|
||||
"INVENTORY",
|
||||
"Moving item for " + remoteClient.AgentId.ToStringHyphenated());
|
||||
"Moving item for " + remoteClient.AgentId.ToString());
|
||||
|
||||
CachedUserInfo userInfo = CommsManager.UserProfileCacheService.GetUserDetails(remoteClient.AgentId);
|
||||
if (userInfo == null)
|
||||
|
||||
@@ -88,7 +88,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
protected SceneCommunicationService m_sceneGridService;
|
||||
protected SceneXmlLoader m_sceneXmlLoader;
|
||||
|
||||
protected Dictionary<LLUUID, Caps> m_capsHandlers = new Dictionary<LLUUID, Caps>();
|
||||
protected Dictionary<LLUUID, OpenSim.Region.Capabilities.Caps> m_capsHandlers = new Dictionary<LLUUID, OpenSim.Region.Capabilities.Caps>();
|
||||
protected BaseHttpServer httpListener;
|
||||
|
||||
protected Dictionary<string, IRegionModule> Modules = new Dictionary<string, IRegionModule>();
|
||||
@@ -990,6 +990,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
}
|
||||
|
||||
/* Tree has been removed from libSL
|
||||
public void AddTree(LLVector3 scale, LLQuaternion rotation, LLVector3 position,
|
||||
libsecondlife.ObjectManager.Tree treeType, bool newTree)
|
||||
{
|
||||
@@ -1001,7 +1002,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
treeShape.State = (byte)treeType;
|
||||
AddNewPrim(LLUUID.Random(), position, rotation, treeShape);
|
||||
}
|
||||
|
||||
*/
|
||||
public void RemovePrim(uint localID, LLUUID avatar_deleter)
|
||||
{
|
||||
m_innerScene.RemovePrim(localID, avatar_deleter);
|
||||
@@ -1323,8 +1324,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
if (agent.CapsPath != "")
|
||||
{
|
||||
Caps cap =
|
||||
new Caps(AssetCache, httpListener, m_regInfo.ExternalHostName, httpListener.Port,
|
||||
OpenSim.Region.Capabilities.Caps cap =
|
||||
new OpenSim.Region.Capabilities.Caps(AssetCache, httpListener, m_regInfo.ExternalHostName, httpListener.Port,
|
||||
agent.CapsPath, agent.AgentID, m_dumpAssetsToFile);
|
||||
|
||||
Util.SetCapsURL(agent.AgentID, "http://" + m_regInfo.ExternalHostName + ":" + httpListener.Port.ToString() +
|
||||
@@ -1335,7 +1336,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
if (m_capsHandlers.ContainsKey(agent.AgentID))
|
||||
{
|
||||
//MainLog.Instance.Warn("client", "Adding duplicate CAPS entry for user " +
|
||||
// agent.AgentID.ToStringHyphenated());
|
||||
// agent.AgentID.ToString());
|
||||
try
|
||||
{
|
||||
m_capsHandlers[agent.AgentID] = cap;
|
||||
|
||||
@@ -1030,8 +1030,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
foreach (TaskInventoryItem item in TaskInventory.Values)
|
||||
{
|
||||
invString.AddItemStart();
|
||||
invString.AddNameValueLine("item_id", item.item_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("parent_id", item.parent_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("item_id", item.item_id.ToString());
|
||||
invString.AddNameValueLine("parent_id", item.parent_id.ToString());
|
||||
|
||||
invString.AddPermissionsStart();
|
||||
invString.AddNameValueLine("base_mask", "0x7FFFFFFF");
|
||||
@@ -1039,13 +1039,13 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
invString.AddNameValueLine("group_mask", "0x7FFFFFFF");
|
||||
invString.AddNameValueLine("everyone_mask", "0x7FFFFFFF");
|
||||
invString.AddNameValueLine("next_owner_mask", "0x7FFFFFFF");
|
||||
invString.AddNameValueLine("creator_id", item.creator_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("owner_id", item.owner_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("last_owner_id", item.last_owner_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("group_id", item.group_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("creator_id", item.creator_id.ToString());
|
||||
invString.AddNameValueLine("owner_id", item.owner_id.ToString());
|
||||
invString.AddNameValueLine("last_owner_id", item.last_owner_id.ToString());
|
||||
invString.AddNameValueLine("group_id", item.group_id.ToString());
|
||||
invString.AddSectionEnd();
|
||||
|
||||
invString.AddNameValueLine("asset_id", item.asset_id.ToStringHyphenated());
|
||||
invString.AddNameValueLine("asset_id", item.asset_id.ToString());
|
||||
invString.AddNameValueLine("type", item.type);
|
||||
invString.AddNameValueLine("inv_type", item.inv_type);
|
||||
invString.AddNameValueLine("flags", "0x00");
|
||||
@@ -1255,12 +1255,12 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
tex.FaceTextures[i].RGBA = tmpcolor;
|
||||
}
|
||||
}
|
||||
tmpcolor = tex.DefaultTexture.RGBA;
|
||||
tmpcolor = tex.FaceTextures[0].RGBA;
|
||||
tmpcolor.A = tmpcolor.A * 255;
|
||||
tmpcolor.R = tmpcolor.R * 255;
|
||||
tmpcolor.G = tmpcolor.G * 255;
|
||||
tmpcolor.B = tmpcolor.B * 255;
|
||||
tex.DefaultTexture.RGBA = tmpcolor;
|
||||
tex.FaceTextures[0].RGBA = tmpcolor;
|
||||
UpdateTextureEntry(tex.ToBytes());
|
||||
}
|
||||
|
||||
@@ -1544,8 +1544,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
public InventoryStringBuilder(LLUUID folderID, LLUUID parentID)
|
||||
{
|
||||
BuildString += "\tinv_object\t0\n\t{\n";
|
||||
AddNameValueLine("obj_id", folderID.ToStringHyphenated());
|
||||
AddNameValueLine("parent_id", parentID.ToStringHyphenated());
|
||||
AddNameValueLine("obj_id", folderID.ToString());
|
||||
AddNameValueLine("parent_id", parentID.ToString());
|
||||
AddNameValueLine("type", "category");
|
||||
AddNameValueLine("name", "Contents");
|
||||
AddSectionEnd();
|
||||
|
||||
@@ -1033,11 +1033,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
LLVector3 pos = m_pos;
|
||||
LLVector3 vel = Velocity;
|
||||
LLQuaternion rot;
|
||||
rot.X = m_bodyRot.x;
|
||||
rot.Y = m_bodyRot.y;
|
||||
rot.Z = m_bodyRot.z;
|
||||
rot.W = m_bodyRot.w;
|
||||
LLQuaternion rot=new LLQuaternion(m_bodyRot.x, m_bodyRot.y, m_bodyRot.z, m_bodyRot.w);
|
||||
remoteClient.SendAvatarTerseUpdate(m_regionHandle, 64096, LocalId, new LLVector3(pos.X, pos.Y, pos.Z),
|
||||
new LLVector3(vel.X, vel.Y, vel.Z), rot);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user