fix the block of teleport to same region handle
							parent
							
								
									730a35eedc
								
							
						
					
					
						commit
						0cf3ec553a
					
				|  | @ -559,22 +559,13 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
| 
 | ||||
|             if (finalDestination == null) | ||||
|             { | ||||
|                 m_log.WarnFormat( "{0} Final destination is having problems. Unable to teleport {1} {2}: {3}", | ||||
|                 m_log.WarnFormat( "{0} Unable to teleport {1} {2}: {3}", | ||||
|                                         LogHeader, sp.Name, sp.UUID, reason); | ||||
| 
 | ||||
|                 sp.ControllingClient.SendTeleportFailed(reason); | ||||
|                 return; | ||||
|             } | ||||
| 
 | ||||
|             // Check that these are not the same coordinates | ||||
|             if (finalDestination.RegionLocX == sp.Scene.RegionInfo.RegionLocX && | ||||
|                 finalDestination.RegionLocY == sp.Scene.RegionInfo.RegionLocY) | ||||
|             { | ||||
|                 // Can't do. Viewer crashes | ||||
|                 sp.ControllingClient.SendTeleportFailed("Space warp! You would crash. Move to a different region and try again."); | ||||
|                 return; | ||||
|             } | ||||
| 
 | ||||
|             if (!ValidateGenericConditions(sp, reg, finalDestination, teleportFlags, out reason)) | ||||
|             { | ||||
|                 sp.ControllingClient.SendTeleportFailed(reason); | ||||
|  | @ -691,6 +682,12 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
| 
 | ||||
|             ulong destinationHandle = finalDestination.RegionHandle; | ||||
| 
 | ||||
|             if(destinationHandle == sourceRegion.RegionHandle) | ||||
|             { | ||||
|                 sp.ControllingClient.SendTeleportFailed("Can't teleport to a region on same map position. Try going other region first, then retry"); | ||||
|                 return; | ||||
|             } | ||||
| 
 | ||||
|             // Let's do DNS resolution only once in this process, please! | ||||
|             // This may be a costly operation. The reg.ExternalEndPoint field is not a passive field, | ||||
|             // it's actually doing a lot of work. | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 UbitUmarov
						UbitUmarov