diff --git a/OpenSim/Framework/ISceneAgent.cs b/OpenSim/Framework/ISceneAgent.cs
index 1e8f896c50..ca1399c784 100644
--- a/OpenSim/Framework/ISceneAgent.cs
+++ b/OpenSim/Framework/ISceneAgent.cs
@@ -65,6 +65,11 @@ namespace OpenSim.Framework
         /// 
         AvatarAppearance Appearance { get; set; }
 
+        /// 
+        /// Set if initial data about the scene (avatars, objects) has been sent to the client.
+        /// 
+        bool SentInitialDataToClient { get; }
+
         /// 
         /// Send initial scene data to the client controlling this agent
         /// 
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
index 0df22bf72d..708a0a1d04 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
@@ -1740,7 +1740,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
                         AgentCircuitData aCircuit = m_scene.AuthenticateHandler.GetAgentCircuitData(uccp.CircuitCode.Code);
                         bool tp = (aCircuit.teleportFlags > 0);
                         // Let's delay this for TP agents, otherwise the viewer doesn't know where to get resources from
-                        if (!tp)
+                        if (!tp && !client.SceneAgent.SentInitialDataToClient)
                             client.SceneAgent.SendInitialDataToClient();
                     }
                 }
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 025ae38dad..9d398ca67b 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -286,9 +286,6 @@ namespace OpenSim.Region.Framework.Scenes
             }
         }
 
-        /// 
-        /// Set if initial data about the scene (avatars, objects) has been sent to the ControllingClient.
-        /// 
         public bool SentInitialDataToClient { get; private set; }
 
         /// 
@@ -3350,9 +3347,9 @@ namespace OpenSim.Region.Framework.Scenes
             // Send all scene object to the new client
             Util.RunThreadNoTimeout(delegate
             {
-                m_log.DebugFormat(
-                    "[SCENE PRESENCE]: Sending initial data to {0} agent {1} in {2}, tp flags {3}", 
-                    IsChildAgent ? "child" : "root", Name, Scene.Name, m_teleportFlags);
+//                m_log.DebugFormat(
+//                    "[SCENE PRESENCE]: Sending initial data to {0} agent {1} in {2}, tp flags {3}", 
+//                    IsChildAgent ? "child" : "root", Name, Scene.Name, m_teleportFlags);
 
                 // we created a new ScenePresence (a new child agent) in a fresh region.
                 // Request info about all the (root) agents in this region