[Opensim-users] ossl functions fail

Frank W Sweet fwsweet at backintyme.com
Thu Nov 20 20:47:39 UTC 2008


I get a runtime error whenever I try to execute a OSSL function in a
script. Specifically, osSetDynamicTextureURL() fails every time. I am
running stand-alone server version 0.6.0 (7275) on Windows. I get the
same error with the latest Hippo viewer, the latest realXtend viewer,
and the latest Linden viewer. The error message is:

===block quote starts===
Primitive: Runtime error:
Server stack trace:
   at OpenSim.Region.ScriptEngine.Shared.Api.OSSL_Api.OSSLError(String
msg)
   at
OpenSim.Region.ScriptEngine.Shared.Api.OSSL_Api.CheckThreatLevel(ThreatLevel
level, String function)
   at
OpenSim.Region.ScriptEngine.Shared.Api.OSSL_Api.osSetDynamicTextureURL(String
dynamicID, String contentType, String url, String extraParams, Int32
timer)
   at
System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr
md, Object[] args, Object server, Int32 methodPtr, Boolean
fExecuteInContext, Object[]& outArgs)
   at
System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle
md, Object[] args, Object server, Int32 methodPtr, Boolean
fExecuteInContext, Object[]& outArgs)
   at
System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage
msg, Int32 methodPtr, Boolean fExecuteInContext)
Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage
===block quote ends===

The failing script is the following weather display, which is included
in the opensim release library:

===block quote starts===
integer count = 0;
integer refreshRate = 300;
string URL1 =
"http://icons.wunderground.com/data/640x480/2xus_rd.gif";
string URL2 =
"http://icons.wunderground.com/data/640x480/2xus_sf.gif";
string URL3 =
"http://icons.wunderground.com/data/640x480/2xus_st.gif";
string dynamicID="";
string contentType="image";

refresh_texture()
{
    count++;
    string url = "";
    integer c = count % 3;

    if (c == 0) {
        url = URL1;
    } else if (c == 1) {
        url = URL2;
    } else {
        url = URL3;
    }
    llSay(0,"touched");
    // refresh rate is not yet respected here, which is why we need
the timer
    osSetDynamicTextureURL(dynamicID, contentType ,url , "",
refreshRate );
}

default
{
    state_entry()
    {
        refresh_texture();
        llSetTimerEvent(refreshRate); // create a "timer event" every
300 seconds.
    }

    timer()
    {
        refresh_texture();
    }

    touch_start(integer times)
    {
        refresh_texture();
    }
}
===block quote ends===

The above script works fine (but does nothing of course) if you
comment out the osSetDynamicTextureURL().

My opensim.ini can be downloaded from
http://sim.thestudyofracialism.org/misc/opensim.ini

My sim is accessible at
-loginuri sim.thestudyofracialism.org:9000
-loginpage sim.thestudyofracialism.org

I would be grateful for any suggestions.

Frank W Sweet




More information about the Opensim-users mailing list