Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0007910opensim[REGION] OpenSim Corepublic2016-05-20 12:522016-06-18 06:27
ReporterJeffKelley 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusnewResolutionopen 
PlatformOSOS Version
Product Versionmaster (dev code) 
Target VersionFixed in Version 
Summary0007910: Setting PRIM_FLEXIBLE with llSetPrimitiveParams corrupts PRIM_TYPE
DescriptionTube becomes box
Ring becomes prism
Torus becomes cylinder
Sphere becomes "Line -> Half-Circle" (Firestorm category)

Types box, cylinder, prism are unaffected.
Steps To ReproduceDrop this script into a prim :

default
{
    state_entry()
    {
        llSetPrimitiveParams (
        [ PRIM_FLEXIBLE, 0, 0, 0.0, 0.0, 0.0, 0.0, <0.0,0.0,0.0> ]
        );
    }
}

Change prim type with the viewer then reset script.
TagsNo tags attached.
Git Revision or version number1e44aba
Run Mode Grid (Multiple Regions per Sim)
Physics EngineBulletSim
Script Engine
EnvironmentMono / Linux64
Mono Version3.2
ViewerFirestorm 4.7.7
Attached Files

- Relationships
related to 0007896closedDiva PRIM_TYPE reports incorrectly when flexi-prim is enabled 

-  Notes
(0030465)
Diva (administrator)
2016-06-12 14:04

Patch applied

[14:02] <cia-opensim> opensim: mandarinka.tasty * r634d85a30d2b OpenSim/Region/Framework/Scenes (SceneObjectPart.cs):
[14:02] <cia-opensim> Detection of Cylinder and Prism for flexi prims
[14:02] <cia-opensim>
[14:02] <cia-opensim> Signed-off-by: Mandarinka Tasty <mandarinka.tasty@gmail.com>
[14:02] <cia-opensim> Signed-off-by: Diva Canto <diva@metaverseink.com>
(0030544)
Diva (administrator)
2016-06-16 16:46

Can someone please verify if this is fixed?
(0030551)
kcozens (administrator)
2016-06-17 11:48

I just updated my test grid that runs master and I am still seeing the reported problem.
(0030552)
Mandarinka Tasty (reporter)
2016-06-17 11:58

Hello.

I have solved this mantis: http://opensimulator.org/mantis/view.php?id=7896 [^]

That is very similar but not identical problem.

In 7896, there was problem that setting Flexi type for Cylinder and Prism via

the viewer edit tool, is not detected by llGetPrimitiveParams

And it has been fuixed.


but Here in mantis reported by JeffKelley,

he uses llSetPrimitiveParams to force such prim types

like: Tube, Ring, Torus, Sphere to be Flexible.

but they should not be considered in this way,

because Tube, Ring, Torus, Sphere cant be set flexble in the viewer

so for what to set them Flexible via llsetPrimitiveParams ?

Certainly, i agree, that applying llSetPrimitiveparams in

this problematic place, should not change type of the prim, even if it meets

such icorrect setting.
(0030557)
kcozens (administrator)
2016-06-17 13:19
edited on: 2016-06-17 13:20

Mandarinka is correct. The viewer only allows the setting of Flexible for box, cylinder, or prism shapes. The sitauation is getting more interesting. Trying to set flexible via the script changes their shape for the other types. If you try to set flexible for a box, cylinder, or prism the flexible setting is not enabled.

(0030558)
Mandarinka Tasty (reporter)
2016-06-17 13:28

So for this mantis: 7910,

we need to disallow setting flexible prims via llSetPrimitiveParams,

if it concerns situation: that type of prim is different than Box, Cylinder, Prism.

In other words, when person tries to set flexible prim via script, then

if prim is one of Tube, Ring, Torus, Sphere, then return should be still

Tube, Ring, Torus, Sphere = script should not do anything

if it comes to Tube, Ring, Torus, Sphere.
(0030559)
Mandarinka Tasty (reporter)
2016-06-17 13:31

Though, personally for me, that is "strange" situaion.

I would not write the script to make it set flexible for prims, that should not

be flexi from their definition.
(0030563)
JeffKelley (reporter)
2016-06-18 06:27

Still present in d0c65d1. However, setting the PRIM_FLEXIBLE property for anything other than box, cylinder and prims is irrelevant. The issue appeared in a clone script, reading all properties via llGetPrimitiveParams and blindly applying them with llSetPrimitiveParams to a seed prim.

Preventing such corruption can be handled either at the script level or the code level (or both), checking if PRIM_TYPE is compatible with PRIM_FLEXIBLE.

- Issue History
Date Modified Username Field Change
2016-05-20 12:52 JeffKelley New Issue
2016-05-20 13:35 Mata Hari Relationship added related to 0007896
2016-06-12 14:04 Diva Note Added: 0030465
2016-06-16 16:46 Diva Note Added: 0030544
2016-06-17 11:48 kcozens Note Added: 0030551
2016-06-17 11:58 Mandarinka Tasty Note Added: 0030552
2016-06-17 13:19 kcozens Note Added: 0030557
2016-06-17 13:20 kcozens Note Edited: 0030557 View Revisions
2016-06-17 13:28 Mandarinka Tasty Note Added: 0030558
2016-06-17 13:31 Mandarinka Tasty Note Added: 0030559
2016-06-18 06:27 JeffKelley Note Added: 0030563


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker