Stop exceptions being thrown if GenerateMapTiles = false but no static map tile has been set. Do more informative warn instead.

user_profiles
Justin Clark-Casey (justincc) 2013-02-02 00:59:26 +00:00
parent d8d4e7f236
commit 9588328242
4 changed files with 36 additions and 10 deletions

View File

@ -75,7 +75,6 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage
public void Close() { }
public void PostInitialise() { }
///<summary>
///
///</summary>
@ -206,6 +205,11 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage
using (Image mapTile = tileGenerator.CreateMapTile())
{
// XXX: The MapImageModule will return a null if the user has chosen not to create map tiles and there
// is no static map tile.
if (mapTile == null)
return;
using (MemoryStream stream = new MemoryStream())
{
mapTile.Save(stream, ImageFormat.Jpeg);

View File

@ -113,7 +113,6 @@ namespace OpenSim.Region.CoreModules.World.LegacyMap
//t = System.Environment.TickCount - t;
//m_log.InfoFormat("[MAPTILE] generation of 10 maptiles needed {0} ms", t);
if (drawPrimVolume)
{
DrawObjectVolume(m_scene, mapbmp);
@ -121,7 +120,7 @@ namespace OpenSim.Region.CoreModules.World.LegacyMap
}
else
{
mapbmp = fetchTexture(m_scene.RegionInfo.RegionSettings.TerrainImageID);
mapbmp = FetchTexture(m_scene.RegionInfo.RegionSettings.TerrainImageID);
}
return mapbmp;
}
@ -232,11 +231,19 @@ namespace OpenSim.Region.CoreModules.World.LegacyMap
// }
// }
private Bitmap fetchTexture(UUID id)
private Bitmap FetchTexture(UUID id)
{
AssetBase asset = m_scene.AssetService.Get(id.ToString());
m_log.DebugFormat("[MAPTILE]: Fetched static texture {0}, found: {1}", id, asset != null);
if (asset == null) return null;
if (asset != null)
{
m_log.DebugFormat("[MAPTILE]: Static map image texture {0} found for {1}", id, m_scene.Name);
}
else
{
m_log.WarnFormat("[MAPTILE]: Static map image texture {0} not found for {1}", id, m_scene.Name);
return null;
}
ManagedImage managedImage;
Image image;

View File

@ -269,9 +269,10 @@
; DefaultScriptEngine = "XEngine"
;# {GenerateMaptiles} {} {Generate map tiles?} {true false} true
;; Map tile options. You can choose to generate no map tiles at all,
;; generate normal maptiles, or nominate an uploaded texture to
;; be the map tile
;; Map tile options. You can choose to generate normal maptiles or nominate an uploaded texture to
;; be the map tile using the MaptileStaticUUID parameter in this section or for individual regions in
;; the regions config file(s). If you do not want to upload map tiles at all, then you will need
;; to disable the MapImageServiceModule entirely.
; GenerateMaptiles = true
;# {MaptileRefresh} {GenerateMaptiles} {Maptile refresh period?} {} 0

View File

@ -1,6 +1,20 @@
; This file contains defaults for various settings in OpenSimulator. These can be overriden
; by changing the same setting in OpenSim.ini (once OpenSim.ini.example has been copied to OpenSim.ini).
[XMLRPC]
;# {XmlRpcRouterModule} {} {Module used to route incoming llRemoteData calls} {XmlRpcRouterModule XmlRpcGridRouterModule} XmlRpcRouterModule
;; If enabled and set to XmlRpcRouterModule, this will post an event,
;; "xmlrpc_uri(string)" to the script concurrently with the first
;; remote_data event. This will contain the fully qualified URI an
;; external site needs to use to send XMLRPC requests to that script
;;
;; If enabled and set to XmlRpcGridRouterModule, newly created channels
;; will be registered with an external service via a configured uri
XmlRpcRouterModule = "XmlRpcRouterModule"
;# {XmlRpcPort} {} {Port for incoming llRemoteData xmlrpc calls} {} 20800
XmlRpcPort = 20800
[Startup]
; Console prompt