Skip to content
This repository was archived by the owner on Apr 4, 2025. It is now read-only.

[BUG-139176] Issue with OBJECT_REZZER_KEY reporting incorrectly after linking and delinking prims. #2394

Open
1 task
sl-service-account opened this issue Oct 4, 2017 · 0 comments

Comments

@sl-service-account
Copy link

sl-service-account commented Oct 4, 2017

Attn: Simon Linden

Information

During testing of llCreateLink() and llBreakLink() for future Animesh applications I noticed listens filtered for rezzer key in broken links were not working resulting in prims not dying. After investigating I found that rezzer key of rezzed objects were changing once the object was linked to the rezzer and yet again after being delinked.

Repro:

Rez a cube and save the following script inside:

key rezzer_key = NULL_KEY;
default
{
    state_entry()
    {
        llOwnerSay("starting rezzer key: " + (string)(rezzer_key = llList2Key(llGetObjectDetails(llGetKey(),[OBJECT_REZZER_KEY]),0)));
        llSetText(llGetObjectName() + "\nMy Key: " + (string)llGetKey() + "\nRezzer Key: " + (string)rezzer_key,<1.0,1.0,1.0>,1.0);
        llSetTimerEvent(0.25);
    }
    on_rez(integer i)
    {
        llResetScript();
    }
    touch_end(integer i)
    {
        if ((llDetectedKey(0) == llGetOwner()) && llGetInventoryNumber(INVENTORY_OBJECT))
        {
            llRezAtRoot(llGetInventoryName(INVENTORY_OBJECT,0),llGetPos() + <0.0,0.0,1.0>,ZERO_VECTOR,ZERO_ROTATION,1);
        }
    }
    timer()
    {
        if ((rezzer_key = llList2Key(llGetObjectDetails(llGetKey(),[OBJECT_REZZER_KEY]),0)) != rezzer_key)
        {
            llOwnerSay("rezzer key is now " + (string)rezzer_key);
        }
        llSetText(llGetObjectName() + "\nMy Key: " + (string)llGetKey() + "\nRezzer Key: " + (string)rezzer_key,<1.0,1.0,1.0>,1.0);
    }
}

Once saved, shift copy the cube three times making 4 cubes with scripts.
Link 3 of the cubes and change the names to "A", "B" and "C", making "A" the root.
Take this linkset into inventory and place in the remaining cube. Change the name of the remaining cube to "Rezzer".
Click the rezzer cube and linkset "A" should be rezzed.
Select the rezzed linkset then select the rezzer then link together making the rezzer the root.
Notice now that all child prims have their rezzer key change to the rezzer key of the root prim.
Delink all links.
Notice now that prims, "C" and "B" have their rezzer keys change to NULL_KEY and prim "A" has its rezzer key change back to the rezzer key it had when rezzed.

Expected Behavior

Rezzer keys should never change under any condition. Period.

Other Information

This is most likely the cause for the problem mentioned in https://jira.secondlife.com/browse/BUG-11431 of which at the time I didn't have a repro.
Strangely, I don't recall this problem during testing for that issue or during testing the constant before release.

Attachments

Links

Related

Original Jira Fields
Field Value
Issue BUG-139176
Summary Issue with OBJECT_REZZER_KEY reporting incorrectly after linking and delinking prims.
Type Bug
Priority Unset
Status Accepted
Resolution Accepted
Reporter Lucia Nightfire (lucia.nightfire)
Created at 2017-10-04T22:05:29Z
Updated at 2017-12-14T16:25:29Z
{
  'Business Unit': ['Platform'],
  'ReOpened Count': 0.0,
  'Severity': 'Unset',
  'System': 'SL Simulator',
  'Target Viewer Version': 'viewer-development',
  'What just happened?': 'Filling in...',
  'What were you doing when it happened?': 'Filling in...',
  'What were you expecting to happen instead?': 'Filling in...',
}
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant