From ea4982e4532f0cd2b793375f2c9f54c3c389c552 Mon Sep 17 00:00:00 2001
From: Justin Clarke Casey
Date: Fri, 30 May 2008 16:08:28 +0000
Subject: * Successfully pick out prims.xml file from archive
---
.../Environment/Modules/World/Archiver/TarArchiveReader.cs | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
(limited to 'OpenSim/Region/Environment/Modules/World/Archiver/TarArchiveReader.cs')
diff --git a/OpenSim/Region/Environment/Modules/World/Archiver/TarArchiveReader.cs b/OpenSim/Region/Environment/Modules/World/Archiver/TarArchiveReader.cs
index aacae95..b199d5f 100644
--- a/OpenSim/Region/Environment/Modules/World/Archiver/TarArchiveReader.cs
+++ b/OpenSim/Region/Environment/Modules/World/Archiver/TarArchiveReader.cs
@@ -28,6 +28,7 @@
using System;
using System.IO;
using System.Reflection;
+using System.Text;
using log4net;
namespace OpenSim.Region.Environment.Modules.World.Archiver
@@ -39,13 +40,18 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
{
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
- protected static System.Text.ASCIIEncoding m_asciiEncoding = new System.Text.ASCIIEncoding();
+ protected static ASCIIEncoding m_asciiEncoding = new ASCIIEncoding();
///
/// Binary reader for the underlying stream
///
protected BinaryReader m_br;
+ ///
+ /// Used to trim off null chars
+ ///
+ protected char[] m_nullCharArray = new char[] { '\0' };
+
public TarArchiveReader(string archivePath)
{
m_br = new BinaryReader(new FileStream(archivePath, FileMode.Open));
@@ -109,6 +115,7 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
byte[] header = m_br.ReadBytes(512);
tarHeader.FilePath = m_asciiEncoding.GetString(header, 0, 100);
+ tarHeader.FilePath = tarHeader.FilePath.Trim(m_nullCharArray);
tarHeader.FileSize = ConvertOctalBytesToDecimal(header, 124, 11);
return tarHeader;
--
cgit v1.1