| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
simply iterate through pending requests without unnecessary checks.
|
|
|
|
|
|
|
|
|
| |
when they were deleted.
This was because AsyncCommandManager was handing an item ID to IHttpRequestModule.StopHttpRequest() rather than the expected request ID.
This commit also makes the http request asynchronous using BeginGetResponse() rather than doing this by launching a new thread
so that we can more safely abort it via HttpWebRequest.Abort() rather than aborting the thread itself.
This also renames StopHttpRequest() to StopHttpRequestsForScript() since any outstanding requests are now aborted and/or removed.
|
| |
|
|
|
|
| |
future debugging of VectorRenderModule
|
|
|
|
| |
Forgot to add file for llRequestUrl() test in commit b8a7c8b
|
|
|
|
| |
places where we were not already.
|
| |
|
|
|
|
| |
run on 'stop on handled and unhandled null reference exceptions' mode without pausing during startup a bunch of times. I don't think exceptions were really meant for replacing a single if statement...
|
| |
|
|
|
|
|
|
|
|
|
| |
This patch html escapes responses going to IE so that they cannot be
interpreted as HTML if the response type is "text/plain". This has no
effect if the reponse type has been set to "text/html" by
osSetContentType
Signed-off-by: nebadon <michael@osgrid.org>
|
| |
|
|\ |
|
| | |
|
|/ |
|
| |
|
|
|
|
| |
at start.
|
| |
|
|
|
|
| |
the beginning.
|
|
|
|
| |
hard-coded instantiation (I think I understood what the problem was, and that I've done it right).
|
| |
|
| |
|
|
|
|
|
|
| |
documentation for IDE & doxygen goodness
Signed-off-by: Diva Canto <diva@metaverseink.com>
|
|
|
|
| |
Signed-off-by: Diva Canto <diva@metaverseink.com>
|
|
|
|
| |
Signed-off-by: Diva Canto <diva@metaverseink.com>
|
|
|
|
| |
script engines to use them.
|
|
|
|
| |
with a private setter
|
|
|
|
| |
general-purpose function to see if a given string matches a given regex
|
|
|
|
| |
OSSL to get git diff to not complain
|
| |
|
|
|
|
|
|
|
|
| |
http://stackoverflow.com/questions/2519655/httpwebrequest-is-extremely-slow."
But the patch is here, in case anyone wants to try it.
This reverts commit 531edd51d82ecd6a842a2611c99e9919634491ef.
|
|
|
|
|
|
| |
http://stackoverflow.com/questions/2519655/httpwebrequest-is-extremely-slow.
Thanks R.Gunther (rigun@rigutech.nl) https://lists.berlios.de/pipermail/opensim-users/2012-September/010986.html
|
|
|
|
|
|
| |
concurrent thread use provoking mono crashes.
Same rationale as commit 13690582.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
fall below current viewer discard level 2 thresholds.
Viewer LL 3.3.4 and before sometimes fail to properly redisplay dynamic textures that have a small data length compared to pixel size when pulled from cache.
This appears to happen when the data length is smaller than the estimate discard level 2 size the viewer uses when making this GetTexture request.
This commit works around this by always regenerating dynamic textures that fall below this threshold rather than reusing them if ReuseDynamicTextures = true
This can be controlled by the [Textures] ReuseDynamicLowDataTextures config setting which defaults to false.
|
|
|
|
|
|
|
|
|
|
| |
that of an otherwise valid asset, return HTTP PartialContent rather than RequestedRangeNotSatisfiable.
This is because recent viewers (3.2.1, 3.3.4) and probably earlier ones using the http GetTexture capability will sometimes make such invalid range requests.
This appears to happen if the viewer's estimate of texture sizes at discard levels > 0 (chiefly 2) exceeds the total texture size.
I believe this does not normally happen but can occur for dynamic textures with are large but mainly blank.
If this happens, returning a RequestedRangeNotSatisfiable will cause the viewer to not render the texture at the final resolution.
However, returning a PartialContent (or OK) even with 0 data will allow the viewer to render the final texture.
|
|
|
|
|
|
|
|
|
|
| |
Default is false, as before.
If true, this setting reuses dynamically generated textures (i.e. created through osSetDynamicTextureData() and similar OSSL functions) where possible rather than always regenerating them.
This results in much quicker updates viewer-side but may bloat the asset cache (though this is fixable).
Also, sometimes issue have been seen where dynamic textures do not transfer to the viewer properly (permanently blurry).
If this happens and that flag is set then they are not regenerated, the viewer has to clear cache or wait for 24 hours before all cached uuids are invalidated.
CUrrently experimental. Default is false, as before.
|
|
|
|
| |
metadata still exists for any reused asset in case some other process has removed it from the cache.
|
|
|
|
|
|
|
|
| |
type for an HTTP request. Since the "official" LSL function limits
the use of the response type, it is implemented as osSetContentType
with a string for the content mime type and a threat level of high.
With this function you should be able to implement rather functional
media-on-a-prim application with much less difficulty.
|
|
|
|
|
|
|
|
|
|
|
| |
configurable on compile.
Disabled (status quo) by default.
This flag makes the dynamic texture module reuse cache previously dynamically generated textures given the same input commands and extra params for 24 hours.
This occurs as long as those commands would always generate the same texture (e.g. they do not contain commands to fetch data from the web).
This makes texture changing faster as a viewer-cached texture uuid is sent and may reduce simulator load in regions with generation of lots of dynamic textures.
A downside is that this stops expiry of old temporary dynamic textures from the cache,
Another downside is that a jpeg2000 generation that partially failed is currently not regenerated until restart or after 24 hours.
|
|
|
|
| |
Remove mismatching ConvertStream() where there is no AsyncConvertStream and neither IDynamicTextureManager implementer implements this method.
|
|
|
|
| |
removal of unncessary syntax clutter
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
VectorRenderModule inside its own context, rather than disposing of the old font before using it as a prototype for the new.
|
|
|
|
| |
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
|
|
|
| |
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.
|