Broken List Functions with Mono
|
|
Cypher Ragu
[Mad Scientist]
Join date: 6 Jul 2008
Posts: 174
|
03-20-2009 19:57
I've noticed that some functions used to manipulate lists, such as llListReplaceList, do not work when the script is compiled under Mono. Is this a known issue, or am I just going crazy?
I've tested it in multiple sims with the same results. Everything works fine when the script isn't running on Mono.
Any responses are appreciated.
_____________________
Life is a highway... And I just missed my exit.
|
|
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
|
03-20-2009 20:34
Covering the basics just in case............................
llListReplaceList does not actually manipulate the list, you have to redefine the list as the result of llListReplaceList.
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime. From: someone I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
|
|
Lylani Bellic
Evil Genius
Join date: 2 Jul 2008
Posts: 42
|
03-20-2009 20:37
I use llListRepalceList just find under Mono.
list Menu;
Menu = llListReplaceList(Menu, [ "Button" ], 0, 0);
Is it something more then that? I have yet to see it if so.
|
|
RobbyRacoon Olmstead
Red warrior is hungry!
Join date: 20 Sep 2006
Posts: 1,821
|
03-20-2009 22:16
I'm not having any problems with lists under Mono that I'm aware of, though I do still have several scripts that do not compile under Mono, so it's obviously not 100% compatible yet.
It might help if you can provide some sample code to repro the issue, as it seems you are the only one reporting this so far that I am aware of.
.
|
|
Cypher Ragu
[Mad Scientist]
Join date: 6 Jul 2008
Posts: 174
|
Try something like this:
03-21-2009 10:07
list stuff = ["1", "2", "3", "4", "5"]; default { state_entry() { llListen(0, "", llGetOwner(), ""  ; } listen(integer channel, string name, key id, string mssg) { stuff = llListReplaceList(stuff, [mssg], 2, 2); llOwnerSay("Stuff: " + llDumpList2String(mssg, ", "  ); } }
_____________________
Life is a highway... And I just missed my exit.
|
|
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
|
03-21-2009 12:08
I take it you mean this: list stuff =["1", "2", "3", "4", "5"];
default { state_entry() { llListen(0, "", llGetOwner(), ""); } listen(integer channel, string name, key id, string mssg) { stuff = llListReplaceList(stuff,[mssg], 2, 2); llOwnerSay("Stuff: " + llDumpList2String(stuff, ", "));//not mssg } }
Works fine: [12:07] Jesse Barnett: test [12:07] Object: Stuff: 1, 2, test, 4, 5
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime. From: someone I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
|
|
Cypher Ragu
[Mad Scientist]
Join date: 6 Jul 2008
Posts: 174
|
03-21-2009 21:14
From: Jesse Barnett llOwnerSay("Stuff: " + llDumpList2String(stuff, ", "  );//not mssg Yes, that's what I meant. Hmm, maybe it was just an intermittent problem. I'll test it when I get the chance to log back on.
_____________________
Life is a highway... And I just missed my exit.
|
|
Imaze Rhiano
Registered User
Join date: 27 Dec 2007
Posts: 39
|
03-22-2009 02:29
I don't have any problems with list functions. If your script is using lot's of memory, then your problems might be related to current MONO scheduler problem that is going to be fixed in 12.7. See Babbage's office hour log.
|