mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Internal Fixes, etc. (#20)
* Start removing mixed usages
* Check for directories before opening
* Fix writing
* Kinda fix rebuild
* One more try
* Better internal handling
* Slighty fix a couple more things
* Update RVWorld Compress code to db7d750bba
* Fix build
Co-authored-by: Matt Nadareski <mnadareski@mparticle.com>
This commit is contained in:
@@ -18,9 +18,9 @@ namespace Compress.SevenZip.Structure
|
||||
|
||||
ulong numEmptyFiles = 0;
|
||||
|
||||
for (;;)
|
||||
for (; ; )
|
||||
{
|
||||
HeaderProperty hp = (HeaderProperty) br.ReadByte();
|
||||
HeaderProperty hp = (HeaderProperty)br.ReadByte();
|
||||
if (hp == HeaderProperty.kEnd)
|
||||
{
|
||||
return;
|
||||
@@ -43,7 +43,7 @@ namespace Compress.SevenZip.Structure
|
||||
continue;
|
||||
|
||||
case HeaderProperty.kEmptyStream:
|
||||
EmptyStreamFlags = Util.ReadBoolFlags(br, (ulong) Names.Length);
|
||||
EmptyStreamFlags = Util.ReadBoolFlags(br, (ulong)Names.Length);
|
||||
for (ulong i = 0; i < size; i++)
|
||||
{
|
||||
if (EmptyStreamFlags[i])
|
||||
@@ -69,11 +69,11 @@ namespace Compress.SevenZip.Structure
|
||||
case HeaderProperty.kCreationTime:
|
||||
case HeaderProperty.kLastAccessTime:
|
||||
case HeaderProperty.kLastWriteTime:
|
||||
br.ReadBytes((int) bytessize);
|
||||
br.ReadBytes((int)bytessize);
|
||||
continue;
|
||||
|
||||
case HeaderProperty.kDummy:
|
||||
br.ReadBytes((int) bytessize);
|
||||
br.ReadBytes((int)bytessize);
|
||||
continue;
|
||||
|
||||
default:
|
||||
@@ -84,16 +84,16 @@ namespace Compress.SevenZip.Structure
|
||||
|
||||
public void Write(BinaryWriter bw)
|
||||
{
|
||||
bw.Write((byte) HeaderProperty.kFilesInfo);
|
||||
bw.WriteEncodedUInt64((ulong) Names.Length);
|
||||
bw.Write((byte)HeaderProperty.kFilesInfo);
|
||||
bw.WriteEncodedUInt64((ulong)Names.Length);
|
||||
|
||||
|
||||
byte[] namebyte;
|
||||
using (MemoryStream nameMem = new MemoryStream())
|
||||
{
|
||||
using (BinaryWriter nameBw = new BinaryWriter(nameMem,Encoding.UTF8,true))
|
||||
using (BinaryWriter nameBw = new BinaryWriter(nameMem, Encoding.UTF8, true))
|
||||
{
|
||||
nameBw.Write((byte) 0); //not external
|
||||
nameBw.Write((byte)0); //not external
|
||||
foreach (string name in Names)
|
||||
{
|
||||
nameBw.WriteName(name);
|
||||
@@ -105,29 +105,29 @@ namespace Compress.SevenZip.Structure
|
||||
}
|
||||
}
|
||||
|
||||
bw.Write((byte) HeaderProperty.kName);
|
||||
bw.WriteEncodedUInt64((ulong) namebyte.Length);
|
||||
bw.Write((byte)HeaderProperty.kName);
|
||||
bw.WriteEncodedUInt64((ulong)namebyte.Length);
|
||||
bw.Write(namebyte);
|
||||
|
||||
if (EmptyStreamFlags != null)
|
||||
{
|
||||
bw.Write((byte) HeaderProperty.kEmptyStream);
|
||||
bw.Write((byte)HeaderProperty.kEmptyStream);
|
||||
Util.WriteBoolFlags(bw, EmptyStreamFlags);
|
||||
}
|
||||
|
||||
if (EmptyFileFlags != null)
|
||||
{
|
||||
bw.Write((byte) HeaderProperty.kEmptyFile);
|
||||
bw.Write((byte)HeaderProperty.kEmptyFile);
|
||||
Util.WriteBoolFlags(bw, EmptyFileFlags);
|
||||
}
|
||||
|
||||
if (Attributes != null)
|
||||
{
|
||||
bw.Write((byte) HeaderProperty.kWinAttributes);
|
||||
bw.Write((byte)HeaderProperty.kWinAttributes);
|
||||
Util.WriteUint32Def(bw, Attributes);
|
||||
}
|
||||
|
||||
bw.Write((byte) HeaderProperty.kEnd);
|
||||
bw.Write((byte)HeaderProperty.kEnd);
|
||||
}
|
||||
|
||||
public void Report(ref StringBuilder sb)
|
||||
|
||||
Reference in New Issue
Block a user