More on switching the root folder from under the viewer. More experiments.

0.7.4.1
Diva Canto 2012-03-27 20:36:54 -07:00
parent 4007f62158
commit af96b99356
2 changed files with 18 additions and 15 deletions

View File

@ -2675,21 +2675,6 @@ namespace OpenSim.Region.Framework.Scenes
// Cache the user's name // Cache the user's name
CacheUserName(sp, aCircuit); CacheUserName(sp, aCircuit);
// Let's send the Suitcase or the real root folder folder for incoming HG agents
// Visiting agents get their suitcase contents; incoming local users get their real root folder's content
if ((aCircuit.teleportFlags & (uint)Constants.TeleportFlags.ViaHGLogin) != 0)
{
// HACK FOR NOW. JUST TESTING, SO KEEPING EVERYONE ELSE OUT OF THESE TESTS
IConfig config = m_config.Configs["HGEntityTransfer"];
if (config != null && config.GetBoolean("RestrictInventoryAccessAbroad", false))
{
m_log.DebugFormat("[SCENE]: Sending root folder to viewer...");
InventoryFolderBase root = InventoryService.GetRootFolder(client.AgentId);
//InventoryCollection rootContents = InventoryService.GetFolderContent(client.AgentId, root.ID);
client.SendBulkUpdateInventory(root);
}
}
EventManager.TriggerOnNewClient(client); EventManager.TriggerOnNewClient(client);
if (vialogin) if (vialogin)
EventManager.TriggerOnClientLogin(client); EventManager.TriggerOnClientLogin(client);

View File

@ -32,6 +32,7 @@ using System.Reflection;
using System.Timers; using System.Timers;
using OpenMetaverse; using OpenMetaverse;
using log4net; using log4net;
using Nini.Config;
using OpenSim.Framework; using OpenSim.Framework;
using OpenSim.Framework.Client; using OpenSim.Framework.Client;
using OpenSim.Region.Framework.Interfaces; using OpenSim.Region.Framework.Interfaces;
@ -1162,6 +1163,23 @@ namespace OpenSim.Region.Framework.Scenes
friendsModule.SendFriendsOnlineIfNeeded(ControllingClient); friendsModule.SendFriendsOnlineIfNeeded(ControllingClient);
} }
// HACK HACK -- just seeing how the viewer responds
// Let's send the Suitcase or the real root folder folder for incoming HG agents
// Visiting agents get their suitcase contents; incoming local users get their real root folder's content
AgentCircuitData aCircuit = m_scene.AuthenticateHandler.GetAgentCircuitData(UUID);
if ((aCircuit.teleportFlags & (uint)Constants.TeleportFlags.ViaHGLogin) != 0)
{
// HACK FOR NOW. JUST TESTING, SO KEEPING EVERYONE ELSE OUT OF THESE TESTS
IConfig config = m_scene.Config.Configs["HGEntityTransferModule"];
if (config != null && config.GetBoolean("RestrictInventoryAccessAbroad", false))
{
m_log.DebugFormat("[SCENE]: Sending root folder to viewer...");
InventoryFolderBase root = m_scene.InventoryService.GetRootFolder(client.AgentId);
//InventoryCollection rootContents = InventoryService.GetFolderContent(client.AgentId, root.ID);
client.SendBulkUpdateInventory(root);
}
}
// m_log.DebugFormat( // m_log.DebugFormat(
// "[SCENE PRESENCE]: Completing movement of {0} into region {1} took {2}ms", // "[SCENE PRESENCE]: Completing movement of {0} into region {1} took {2}ms",
// client.Name, Scene.RegionInfo.RegionName, (DateTime.Now - startTime).Milliseconds); // client.Name, Scene.RegionInfo.RegionName, (DateTime.Now - startTime).Milliseconds);