Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0005005opensim[REGION] Scripting Enginepublic2010-08-30 20:022015-08-18 09:35
Assigned Tojustincc 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0005005: [PATCH] llRegionSay() script function does not trigger a ChatFromWorldEvent
Description- A region module with a ChatFromWorldEvent handler was not picking up messages from llRegionSay() script events in an object.
- Other scripted objects listening on the appropriate channel were reacting to those messages.
- The same ChatFromWorldEvent handler was picking up messages from scripted llSay() events.

llSay(), llShout() and llWhisper() in LSL_Api.cs all seem to trigger a ChatFromWorldEvent via the World.SimChat() call, which is absent from the llRegionSay() method.

Copying the following line to from llSay() to llRegionSay() yielded the behaviour I was expecting (i.e. the event handler picking up the message):

World.SimChat(Utils.StringToBytes(text), ChatTypeEnum.Region, channelID, m_host.ParentGroup.RootPart.AbsolutePosition, m_host.Name, m_host.UUID, false);
Additional InformationIn passing, I noticed that llShout() calls World.SimChat() with the "fromAgent" parameter set to true, while the others are false. Is that by design, or by accident?
TagsNo tags attached.
Git Revision or version number0
Run Mode Standalone (Multiple Regions)
Physics Engine
EnvironmentMono / Linux32
Mono VersionOther
Attached Filespatch file icon e4d16e6-Fix-Region-Say.patch [^] (3,165 bytes) 2014-09-08 20:22 [Show Content]
patch file icon regionsayfix-c61aec7 2014-09-15 11:56:49 -0700.patch [^] (3,664 bytes) 2014-09-15 12:13 [Show Content]

- Relationships
related to 0007330closedjustincc llRegionSayTo() now says it twice... 

-  Notes
justincc (administrator)
2012-05-25 18:59

I think this was fixed by git master 679da63d
nebadon (administrator)
2013-08-13 22:12

was asked by DrCuriosity to reopen this mantis!
DrCuriosity (reporter)
2013-08-13 22:14
edited on: 2013-08-13 22:17

This bug seems to have come back in 0.7.5, somehow. The fix remains as in the initial description.

eeyore (reporter)
2014-09-08 20:27

Submitted patch. It's my first attempt at a patch, so keep a good eye on it.
eeyore (reporter)
2014-09-10 16:09

The patch employs the solution listed by DrCuriosity by adding World.SimChat() to llRegionSay. This also repairs llRegionSayTo() by adding an additional override to SimChatToAgent();
justincc (administrator)
2014-09-12 15:14

From visual inspection, the functionality of the patch looks good to me. However, I do have the following points:

1. Please could you make the patch subject line reflect what it's doing and which Mantis (i.e. this one) it addresses.

2. Please could you reformat the patch to use 4 space indents and not tabs.

3. You have the World.SimChatToAgent() call inside the wComm != null check. However, if it's to be consistent with other LSL_Api behaviour (and indeed with your first change!) this should be before the IWorldComm module check.

If you could make these corrections then I think that this looks like a good patch to put in. Thanks.
eeyore (reporter)
2014-09-15 12:39

regionsayfix-c61aec7 2014-09-15 11:56:49 -0700.patch
includes the suggestions made by justincc
justincc (administrator)
2014-09-17 15:52

Thanks eeyore. Patch commited in master as 1f40630.

Also just another point I should have mentioned originally, could you make sure commits don't include that "modified" text and that a summary appears as the first line? As you can see from the log, having all that text concatenated together screws up the log. But I didn't want to do another back and forth this time as the patch is fairly small in the grand scheme and the content is at least there. Thanks!
aiaustin (developer)
2015-08-18 09:35

Resolved issue marked as closed. Please open a new issue and refer to this one if problems arise.

- Issue History
Date Modified Username Field Change
2010-08-30 20:02 DrCuriosity New Issue
2010-08-30 20:02 DrCuriosity Git Revision => 0
2010-08-30 20:02 DrCuriosity SVN Revision => 0
2010-08-30 20:02 DrCuriosity Run Mode => Standalone (Multiple Regions)
2010-08-30 20:02 DrCuriosity Environment => Mono / Linux32
2010-08-30 20:02 DrCuriosity Mono Version => Other
2012-05-25 18:59 justincc Note Added: 0021548
2012-05-25 18:59 justincc Status new => resolved
2012-05-25 18:59 justincc Resolution open => fixed
2012-05-25 18:59 justincc Assigned To => justincc
2013-08-13 22:12 nebadon Note Added: 0024274
2013-08-13 22:12 nebadon Status resolved => feedback
2013-08-13 22:12 nebadon Resolution fixed => reopened
2013-08-13 22:14 DrCuriosity Note Added: 0024275
2013-08-13 22:14 DrCuriosity Status feedback => assigned
2013-08-13 22:14 nebadon Note Added: 0024276
2013-08-13 22:14 nebadon Note Deleted: 0024276
2013-08-13 22:17 DrCuriosity Note Edited: 0024275 View Revisions
2014-09-08 20:22 eeyore File Added: e4d16e6-Fix-Region-Say.patch
2014-09-08 20:27 eeyore Note Added: 0026810
2014-09-10 16:09 eeyore Note Added: 0026826
2014-09-10 16:09 eeyore Status assigned => patch included
2014-09-12 15:14 justincc Note Added: 0026837
2014-09-12 15:14 justincc Status patch included => patch feedback
2014-09-15 12:13 eeyore File Added: regionsayfix-c61aec7 2014-09-15 11:56:49 -0700.patch
2014-09-15 12:39 eeyore Note Added: 0026840
2014-09-15 12:40 eeyore Summary llRegionSay() script function does not trigger a ChatFromWorldEvent => [PATCH] llRegionSay() script function does not trigger a ChatFromWorldEvent
2014-09-17 15:52 justincc Note Added: 0026842
2014-09-17 15:52 justincc Status patch feedback => resolved
2014-09-17 15:52 justincc Resolution reopened => fixed
2014-09-21 12:55 Mata Hari Relationship added related to 0007330
2015-08-18 09:35 aiaustin Note Added: 0029293
2015-08-18 09:35 aiaustin Status resolved => closed

Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker