diff options
Diffstat (limited to 'OpenSim/Services/AssetService')
-rw-r--r-- | OpenSim/Services/AssetService/AssetService.cs | 17 | ||||
-rw-r--r-- | OpenSim/Services/AssetService/AssetServiceBase.cs | 4 | ||||
-rw-r--r-- | OpenSim/Services/AssetService/XAssetService.cs | 18 |
3 files changed, 33 insertions, 6 deletions
diff --git a/OpenSim/Services/AssetService/AssetService.cs b/OpenSim/Services/AssetService/AssetService.cs index f1bffa4..96b430d 100644 --- a/OpenSim/Services/AssetService/AssetService.cs +++ b/OpenSim/Services/AssetService/AssetService.cs | |||
@@ -70,7 +70,7 @@ namespace OpenSim.Services.AssetService | |||
70 | 70 | ||
71 | if (assetLoaderEnabled) | 71 | if (assetLoaderEnabled) |
72 | { | 72 | { |
73 | m_log.DebugFormat("[ASSET SERVICE]: Loading default asset set from {0}", loaderArgs); | 73 | m_log.DebugFormat("[ASSET]: Loading default asset set from {0}", loaderArgs); |
74 | 74 | ||
75 | m_AssetLoader.ForEachDefaultXmlAsset( | 75 | m_AssetLoader.ForEachDefaultXmlAsset( |
76 | loaderArgs, | 76 | loaderArgs, |
@@ -200,7 +200,20 @@ namespace OpenSim.Services.AssetService | |||
200 | if (!UUID.TryParse(id, out assetID)) | 200 | if (!UUID.TryParse(id, out assetID)) |
201 | return false; | 201 | return false; |
202 | 202 | ||
203 | return m_Database.Delete(id); | 203 | AssetBase asset = m_Database.GetAsset(assetID); |
204 | if (asset == null) | ||
205 | return false; | ||
206 | |||
207 | if ((int)(asset.Flags & AssetFlags.Maptile) != 0) | ||
208 | { | ||
209 | return m_Database.Delete(id); | ||
210 | } | ||
211 | else | ||
212 | { | ||
213 | m_log.DebugFormat("[ASSET SERVICE]: Request to delete asset {0}, but flags are not Maptile", id); | ||
214 | } | ||
215 | |||
216 | return false; | ||
204 | } | 217 | } |
205 | } | 218 | } |
206 | } \ No newline at end of file | 219 | } \ No newline at end of file |
diff --git a/OpenSim/Services/AssetService/AssetServiceBase.cs b/OpenSim/Services/AssetService/AssetServiceBase.cs index 58ab052..177c565 100644 --- a/OpenSim/Services/AssetService/AssetServiceBase.cs +++ b/OpenSim/Services/AssetService/AssetServiceBase.cs | |||
@@ -84,7 +84,7 @@ namespace OpenSim.Services.AssetService | |||
84 | 84 | ||
85 | m_Database = LoadPlugin<IAssetDataPlugin>(dllName); | 85 | m_Database = LoadPlugin<IAssetDataPlugin>(dllName); |
86 | if (m_Database == null) | 86 | if (m_Database == null) |
87 | throw new Exception(string.Format("Could not find a storage interface in the module {0}", dllName)); | 87 | throw new Exception("Could not find a storage interface in the given module"); |
88 | 88 | ||
89 | m_Database.Initialise(connString); | 89 | m_Database.Initialise(connString); |
90 | 90 | ||
@@ -96,7 +96,7 @@ namespace OpenSim.Services.AssetService | |||
96 | m_AssetLoader = LoadPlugin<IAssetLoader>(loaderName); | 96 | m_AssetLoader = LoadPlugin<IAssetLoader>(loaderName); |
97 | 97 | ||
98 | if (m_AssetLoader == null) | 98 | if (m_AssetLoader == null) |
99 | throw new Exception(string.Format("Asset loader could not be loaded from {0}", loaderName)); | 99 | throw new Exception("Asset loader could not be loaded"); |
100 | } | 100 | } |
101 | } | 101 | } |
102 | } | 102 | } |
diff --git a/OpenSim/Services/AssetService/XAssetService.cs b/OpenSim/Services/AssetService/XAssetService.cs index a1d10ed..e62bcb5 100644 --- a/OpenSim/Services/AssetService/XAssetService.cs +++ b/OpenSim/Services/AssetService/XAssetService.cs | |||
@@ -194,7 +194,21 @@ namespace OpenSim.Services.AssetService | |||
194 | if (!UUID.TryParse(id, out assetID)) | 194 | if (!UUID.TryParse(id, out assetID)) |
195 | return false; | 195 | return false; |
196 | 196 | ||
197 | return m_Database.Delete(id); | 197 | AssetBase asset = m_Database.GetAsset(assetID); |
198 | if (asset == null) | ||
199 | return false; | ||
200 | |||
201 | if ((int)(asset.Flags & AssetFlags.Maptile) != 0) | ||
202 | { | ||
203 | return m_Database.Delete(id); | ||
204 | } | ||
205 | else | ||
206 | { | ||
207 | m_log.DebugFormat("[XASSET SERVICE]: Request to delete asset {0}, but flags are not Maptile", id); | ||
208 | } | ||
209 | |||
210 | return false; | ||
198 | } | 211 | } |
199 | } | 212 | } |
200 | } \ No newline at end of file | 213 | } |
214 | |||