Commit Graph

187 Commits

Author SHA1 Message Date
Justin Clark-Casey (justincc)
e90168c738 Add VectorRenderModuleTests.TestRepeatDraw() 2012-08-27 22:42:40 +01:00
Justin Clark-Casey (justincc)
1369058280 Lock disposal of separate gdi+ objects under different threads since this prevents malloc heap corruption seen under Ubuntu 10.04.1 and 11.04 - probably a libcairo issue
In testing, it appears that if multiple threads dispose of separate GDI+ objects simultaneously,
the native malloc heap can become corrupted, possibly due to a double free().  This may be due to
bugs in the underlying libcairo used by mono's libgdiplus.dll on Linux/OSX.  These problems were
seen with both libcario 1.10.2-6.1ubuntu3 and 1.8.10-2ubuntu1.  They go away if disposal is perfomed
under lock.
2012-08-22 23:04:17 +01:00
Justin Clark-Casey (justincc)
faffe2f2f9 Fix the recent windows compile error by putting newFont for case "R" in VectorRenderModule inside its own context, rather than disposing of the old font before using it as a prototype for the new. 2012-08-03 22:03:04 +01:00
SignpostMarv
5181bdae0a attempting to fix a build issue
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-08-03 16:14:01 -04:00
Justin Clark-Casey (justincc)
eeef9d7e99 Properly dispose of all GDI+ entities used in VectorRenderModule for dynamic textures.
The convention is that if an object implements IDiposable() the code must explicitly call Dispose() or call it via the using statement.
This may be particularly important for GDI+ objects since they encapsulate native code entities.
2012-08-03 00:00:54 +01:00
Justin Clark-Casey (justincc)
86b005de1d Add simple draw test for the VectorRenderModule 2012-08-02 22:14:09 +01:00
Justin Clark-Casey (justincc)
78143769bf Resolve various race conditions between accessing and removing external script URLs by more consistently locking on m_UrlMap 2012-06-22 23:49:52 +01:00
Justin Clark-Casey (justincc)
dca04c7b61 Avoid a race condition where an incoming request to a script external URL can trigger an exception is the URL was being removed at the same time.
This involves three steps
1) Return gracefully in UrlModule.HttpRequestHandler() instead of throwing an exception when the url cannot be found in its index
2) Return true instead of false in HasEvents() if no matching request is found in the map.  This call will only happen in the first place for raced requests.
3) Return a 404 in GetEvents() if the request is not in the index, rather than a blank 200 OK.

Many thanks to Tom Haines in http://opensimulator.org/mantis/view.php?id=6051 for doing some of the work on this.
2012-06-22 23:16:18 +01:00
Justin Clark-Casey (justincc)
7119de56ff Change read config paramter from max_urls_per_simulator to max_external_urls_per_simulator, which is what it was meant to be 2012-06-16 04:12:53 +01:00
Justin Clark-Casey (justincc)
22f25dfcab Implement max_external_urls_per_simulator setting in [LL-Functions] to allow configuration of how many urls can be set up by llRequestURL()
Defaults remains as 100.
This setting is per simulator instead of per region due to how the url script module is structured.
2012-06-16 03:32:47 +01:00
Justin Clark-Casey (justincc)
10e87f9cdc Make XMLRPCModule use an existing HTTP server if one already exists on the desired port. 2012-06-15 00:59:53 +01:00
BlueWall
682d4075e3 Fix llGetSimulatorHostname to return configured hostname 2012-05-23 15:08:39 -04:00
Chris Koeritz
30a272ba31 Modifications for SMTP in OpenSimulator. Email size limit was fixed (was out of step with documentation at 1024, so boosted to 4096). Added configuration item for maximum email size. Redundant sleep inside email module was fixed (LSL Api was already sleeping). Added sleep time configuration item for snooze between email sending for LSL Api. Added two new configuration items (email_max_size and email_pause_time) into the example OpenSim.ini, plus fixed a spelling error (llimits) and odd tabbing.
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-13 17:34:20 -04:00
Justin Clark-Casey (justincc)
da4819a170 Temporarily add debug log lines to lsl url request and release
To help with http://opensimulator.org/mantis/view.php?id=5993
2012-05-04 22:11:25 +01:00
Talun
679da63da6 Mantis 5977 Corrections to llRegionSayTo
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-04-23 07:16:33 -04:00
Justin Clark-Casey (justincc)
387d7fdad5 Allow llRegionSayTo() to work on the PUBLIC_CHANNEL, as per http://wiki.secondlife.com/wiki/LlRegionSayTo
Addresses http://opensimulator.org/mantis/view.php?id=5950
2012-03-31 01:29:13 +01:00
Justin Clark-Casey (justincc)
98251cdab3 Add sensor, dataserver requests, timer and listener counts to "xengine status" command.
This is for diagnostic purposes.
2012-03-06 23:21:17 +00:00
Melanie
ec299bfa87 Allow SmtpClients and other SSL users to work with our cert handler installed 2012-01-14 06:03:27 +00:00
Justin Clark-Casey (justincc)
b5bb559cc0 Register the UrlModule for script engine events OnScriptRemoved and OnObjectRemoved just once in the UrlModule itself, rather than repeatedly for every script.
Doing this in every script is unnecessary since the event trigger is parameterized by the item id.
All that would happen is 2000 scripts would trigger 1999 unnecessary calls, and a large number of initialized scripts may eventually trigger a StackOverflowException.
Registration moved to UrlModule so that the handler is registered for all script engine implementations.
This required moving the OnScriptRemoved and OnObjectRemoved events (only used by UrlModule in core) from IScriptEngine to IScriptModule to avoid circular references.
2012-01-14 00:23:11 +00:00
BlueWall
87374274b9 Fix for failed http request status
Thanks "sendapatch" for fixes to llHTTPRequest status reporting.
2012-01-01 23:44:46 -05:00
Justin Clark-Casey (justincc)
e6272b8d56 Stop also adding an ordinary http handler when we set up a poll http handler.
It appears that this is entirely unnecessary since the poll http handlers are dealt with on a separate code path.
2011-12-07 12:28:42 +00:00
Melanie
66f4ce354f Fix CHANGED_TEXTURE and CHANGED_COLOR. 2011-12-05 19:01:14 +00:00
Justin Clark-Casey (justincc)
59232a6ea8 Change default say distance to 20m from 30m, the same as on the big grid. This is to improve the migration of scripts that expect a 20m say distance.
If you want to keep a 30m say distance then please set this as the say_distance parameter in the [Chat] section of OpenSim.ini.
2011-11-02 20:05:31 +00:00
Justin Clark-Casey (justincc)
72923134e9 Get some hopefully more useful exception information when OpenJPEG.EncodeFromImage() fails in VectorRender and DynamicTexture modules 2011-11-02 18:40:49 +00:00
Justin Clark-Casey (justincc)
8a0a78cbcc Make OpenSim.Framework.Servers.HttpServer rely on OpenSim.Framework instead of the other way around.
This is necessary so that code in HttpServer can use framework facilities such as the thread watchdog for monitoring purposes.
Doing this shuffle meant that MainServer was moved into OpenSim/Framework/Servers
Also had to make OpenSim.Framework.Console rely on OpenSim.Framework rather than the other way around since it in turn relies on HttpServer
MainConsole and some new interfaces had to be moved into OpenSim/Framework to allow this.  This can be reverted if parts of OpenSim.Framework stop relying on console presence (cheifly RegionInfo)
2011-10-25 20:24:21 +01:00
Justin Clark-Casey (justincc)
f138a2056e meaningless change to goose panda 2011-10-11 00:29:41 +01:00
Justin Clark-Casey (justincc)
013bf2775f remove unused LastAssetID from DynamicTextureUpdaer 2011-10-10 15:19:23 +01:00
Kevin Houlihan & Michelle Argus
39d7945efc Added a setting to [Startup] section of config that will allow the simulator to start up with no regions configured.
I added the boolean config setting "allow_regionless", defaulting to false. If set to true, opensim will start up ok if no region configurations are found in the specified region_info_source. It will not ask the user to create a region.
2011-09-24 01:59:02 +01:00
Justin Clark-Casey (justincc)
cf73afec35 Try disabling the inconsistent attachment state check to see if this actually has an impact.
The code in question is over three years old and just be catching an inconsistency rather than being wholly necessary.
This commit still carries out the check and prints all the previous log warnings but a 'failure' no longer prevents avatar region crossing or teleport, and it doesn't give the client the error message.
This will have some kind of impact on http://opensimulator.org/mantis/view.php?id=5672
2011-09-05 23:42:37 +01:00
Justin Clark-Casey (justincc)
8c703022c1 In WorldCommModule, replace the useless Attachments == null check with Attachments.Count == 0 instead 2011-08-31 16:50:18 +01:00
Justin Clark-Casey (justincc)
5a5206449f minor: seal up another instance of using the appearance list without locking 2011-08-31 16:41:58 +01:00
Justin Clark-Casey (justincc)
32444d98cb Make SP.Attachments available as sp.GetAttachments() instead.
The approach here, as in other parts of OpenSim, is to return a copy of the list rather than the attachments list itself
This prevents callers from forgetting to lock the list when they read it, as was happening in various parts of the codebase.
It also improves liveness.
This might improve attachment anomolies when performing region crossings.
2011-08-31 16:29:51 +01:00
BlueWall
5e231acdce Add avatar and attachments to llRegionSay
llRegionSay will now message avatars on chan 0
  and will message attachments on the avatar that
  listen on channels other than 0.

  This behavior is consistant with the LL
  implementation as tested on regions in Agni
  with one exception: this implementation does
  not include issue:
    https://jira.secondlife.com/browse/SCR-66?
2011-08-20 12:36:35 -04:00
BlueWall
2787207aa2 Add llRegionSayTo
llRegionSayTo(key target, integer channel, string messasge)

	Allows messages to be sent region-wide
	to a particular prim.
2011-08-19 18:47:21 -04:00
Melanie
eceedba23b Fix the cert validation handler so that it will not block other parts of
the server doing ssl successfully.
2011-05-13 12:02:49 +01:00
BlueWall
e4e95706d5 Add support for llRequestSecureURL() if ssl is enabled 2011-05-05 19:57:10 -04:00
Justin Clark-Casey (justincc)
64dc7e9f14 minor: remove now inaccurate comment 2011-04-11 22:35:07 +01:00
Justin Clark-Casey (justincc)
3a98fb080a minor: adjust some spacing and indentation 2011-04-11 22:29:08 +01:00
E. Allen Soard
464fa45ec9 Implimented HTTP_VERIFY_CERT for llHttpRequest 2011-04-11 22:22:11 +01:00
Justin Clark-Casey (justincc)
4f56c732bc Comment out some startup logging lines to make up for the one I added earlier on.
Most of these are where the region modules are telling us they are disabled.  Convention is only to log when enabled (even that is really noisy)
2011-04-02 02:29:42 +01:00
Marck
b512ecd1dc Normalization of OSSL function names.
Added the following replacement functions for compliance to the OSSL standards stated on the wiki:
osGetTerrainHeight
osSetTerrainHeight
osGetSunParam
osSetSunParam
osSetPenColor

The functions that do not comply to the standard give a warning when used but work normally otherwise.

The graphics primitive drawing command "PenColor" has also been added as well as dynamic texture parameter "bgcolor" as an alternative to "bgcolour".

The following two functions have been renamed because they are not enabled yet aynway:
osWindParamSet => osSetWindParam
osWindParamGet => osGetWindParam
2010-12-10 22:20:35 +01:00
dahlia
ed7959ddfb Thanks Snoopy for a patch that addresses Mantis #0005165: osSetDynamicTextureURL crashed region server
Signed-off-by: dahlia <dahliaTrimble@gmail.removeme.com>
2010-11-02 02:35:56 -07:00
Melanie Thielker
0a82d10fc4 Change the way IRegionModule us referenced by IEmailModule to
allow later conversion to new style
2010-06-28 03:14:05 +01:00
Justin Clark-Casey (justincc)
bfbf25c542 minor: Print out port that http servers are using
do this in callers so that we know who is setting up these things
2010-03-25 21:36:57 +00:00
John Hurliman
b4dcdffb50 Fixed several unhandled exceptions and performance issues with PrimitiveBaseShape.Textures. This really should be moved from a property to a method if it is going to decode a byte[] into a TextureEntry each time 2010-03-16 11:50:22 -07:00
John Hurliman
df76e95aa2 Changed asset CreatorID to a string 2010-02-22 14:18:59 -08:00
John Hurliman
7665aad002 * Adds CreatorID to asset metadata. This is just the plumbing to support CreatorID, it doesn't modify database backends or OAR files to support storing/loading it 2010-02-22 13:27:17 -08:00
Teravus Ovares (Dan Olivares)
59f6606ecf Endline fix 2010-02-06 00:37:07 -05:00
Justin Clark-Casey (justincc)
f1b99c4a7f minor: one method doc 2010-02-04 21:35:56 +00:00
Justin Clark-Casey (justincc)
bbd41de6d5 refactor: move world comm message queueing into its own method 2010-02-02 20:38:58 +00:00