secondlife / jira-archive

2 stars 0 forks source link

[BUG-234969] integer llPaymentExclusive(integer enabled) #11790

Open sl-service-account opened 5 months ago

sl-service-account commented 5 months ago

What just happened?

On occasion, a resident might (either inadvertently or intentionally) insert a second money-handling script into a vendor.

The second script might be a duplicate copy of the vendor script, or some other money-handler such as a profit share script. 

In either case, the result can be very damaging - at the lower end, it might result in the item being delivered twice, but at the severe end, it can result in payments being refunded multiple times. 

What were you doing when it happened?

N/A

What were you expecting to happen instead?

integer llPaymentExclusive(integer enabled)

This proposed function will have the effect of taking exclusive control over any payments made to the task, while the current state is active (and the script still exists and is running).

If another script in the task has requested exclusivity, return FALSE,

Otherwise, this function return TRUE and will have the effect of preventing any other scripts in the task from receiving a money event, until exclusivity is released.

This will have the benefit of allowing most existing content (which may depend on this behaviour) to behave correctly, while providing a prevention mechanism for systems which are designed to handle money atomically.

Other information

Links

Related

Original Jira Fields | Field | Value | | ------------- | ------------- | | Issue | BUG-234969 | | Summary | integer llPaymentExclusive(integer enabled) | | Type | New Feature Request | | Priority | Unset | | Status | Accepted | | Resolution | Unresolved | | Created at | 2024-01-10T07:57:13Z | | Updated at | 2024-01-24T21:38:38Z | ``` { 'Build Id': 'unset', 'Business Unit': ['Platform'], 'Date of First Response': '2024-01-10T13:33:15.023-0600', 'How would you like the feature to work?': '.', 'ReOpened Count': 0.0, 'Severity': 'Unset', 'System': 'SL Simulator', 'Target Viewer Version': 'viewer-development', 'What just happened?': 'On occasion, a resident might (either inadvertently or intentionally) insert a second money-handling script into a vendor.\r\n\r\nThe second script might be a duplicate copy of the vendor script, or some other money-handler such as a profit share script.\xa0\r\n\r\nIn either case, the result can be very damaging - at the lower end, it might result in the item being delivered twice, but at the severe end, it can result in payments being refunded multiple times.\xa0', 'What were you doing when it happened?': 'N/A', 'What were you expecting to happen instead?': 'integer llPaymentExclusive(integer enabled)\r\n\r\nThis proposed function will have the effect of taking exclusive control over any payments made to the object, while the current state is active.\r\n\r\nIf another script in the object has requested exclusivity, return FALSE,\r\n\r\nOtherwise, this function will have the effect of preventing any other scripts in the object from receiving a money event, until exclusivity is released.\r\n\r\nThis will have the benefit of allowing most existing content (which may depend on this behaviour) to behave correctly, while providing a prevention mechanism for systems which are designed to handle money atomically.', 'Why is this feature important to you? How would it benefit the community?': '.', } ```
sl-service-account commented 5 months ago

Spidey Linden commented at 2024-01-10T19:33:15Z

Issue accepted. We have no estimate when it may be implemented. Please see future release notes for this fix.