diff --git a/OpenSim/Framework/PrimitiveBaseShape.cs b/OpenSim/Framework/PrimitiveBaseShape.cs index 6607d9fe93..5056c04156 100644 --- a/OpenSim/Framework/PrimitiveBaseShape.cs +++ b/OpenSim/Framework/PrimitiveBaseShape.cs @@ -343,12 +343,14 @@ namespace OpenSim.Framework case 1: // torus shape.ProfileCurve = (byte)ProfileShape.Circle | (byte)HollowShape.Triangle; shape.PathCurve = (byte)Extrusion.Curve1; + shape._pathScaleY = 150; break; case 2: // torus with hollow (a sl viewer whould see 4 faces on a hollow sphere) shape.ProfileCurve = (byte)ProfileShape.Circle | (byte)HollowShape.Triangle; shape.PathCurve = (byte)Extrusion.Curve1; shape.ProfileHollow = 27500; + shape._pathScaleY = 150; break; case 3: // cylinder diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index a404b1b0c8..4a76ffc6c3 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -5887,6 +5887,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP profileBegin = 9375; if(profileHollow == 1) profileHollow = 27500; + // fix torus hole size Y that also confuse some viewers + if(update.ProfileCurve == (byte)ProfileShape.Circle && update.PathScaleY < 150) + update.PathScaleY = 150; } else {