From 345ddcd0d82b15afa790ede4c1e8d93361a0d405 Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Thu, 5 Nov 2009 18:53:25 +0000
Subject: * Escape / character when saving items and folders in an iar so that
the loader doesn't barf
---
.../Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs | 7 +++++++
1 file changed, 7 insertions(+)
(limited to 'OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs')
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
index 499c552..af0b72f 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
@@ -394,6 +394,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
///
public static string CreateArchiveFolderName(string name, UUID id)
{
+ // Only encode ampersands (for escaping anything) and / (since this is used as general dir separator).
+ name = name.Replace("&", "&");
+ name = name.Replace("/", "/");
+
return string.Format(
"{0}{1}{2}/",
name,
@@ -409,6 +413,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
///
public static string CreateArchiveItemName(string name, UUID id)
{
+ name = name.Replace("&", "&");
+ name = name.Replace("/", "/");
+
return string.Format(
"{0}{1}{2}.xml",
name,
--
cgit v1.1