Skip to content

Commit 400567e

Browse files
committed
Fixed OFST and XXXX bug
1 parent 0edf4e7 commit 400567e

3 files changed

Lines changed: 20 additions & 17 deletions

File tree

ESPSharp/Records/GenericRecord.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public override void WriteDataXML(XElement ele)
3333
XElement subRecRoot = new XElement("Subrecords");
3434
ele.Add(subRecRoot);
3535

36-
foreach (Subrecord sub in Subrecords)
36+
foreach (UndecodedSubrecord sub in Subrecords)
3737
sub.WriteXML(subRecRoot);
3838
}
3939

ESPSharp/Subrecord.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,13 @@ public virtual void WriteBinary(BinaryWriter writer)
4040
WriteData(writer);
4141
long dataEnd = writer.BaseStream.Position;
4242

43-
writer.BaseStream.Seek(dataPoint - 2, SeekOrigin.Begin);
44-
writer.Write((ushort)(dataEnd - dataPoint));
43+
if ((dataEnd - dataPoint) <= ushort.MaxValue)
44+
{
45+
writer.BaseStream.Seek(dataPoint - 2, SeekOrigin.Begin);
46+
writer.Write((ushort)(dataEnd - dataPoint));
4547

46-
writer.BaseStream.Seek(dataEnd, SeekOrigin.Begin);
48+
writer.BaseStream.Seek(dataEnd, SeekOrigin.Begin);
49+
}
4750
}
4851

4952
public virtual void ReadBinary(BinaryReader reader)

ESPSharpTest/Program.cs

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@ static void Main(string[] args)
1616
DateTime startTimeAll = DateTime.Now;
1717
DateTime startTime = startTimeAll;
1818

19-
Console.WriteLine("Loading binary...");
19+
//Console.WriteLine("Loading binary...");
2020

21-
using (FileStream stream = new FileStream(testFile + ".esm", FileMode.Open))
22-
using (BinaryReader reader = new BinaryReader(stream, Encoding.GetEncoding("ISO-8859-1")))
23-
{
24-
pluggy.ReadBinary(reader);
25-
}
21+
//using (FileStream stream = new FileStream(testFile + ".esm", FileMode.Open))
22+
//using (BinaryReader reader = new BinaryReader(stream, Encoding.GetEncoding("ISO-8859-1")))
23+
//{
24+
// pluggy.ReadBinary(reader);
25+
//}
2626

27-
Console.WriteLine("...Done in: " + (DateTime.Now - startTime).ToString(@"mm\:ss\.ffff"));
28-
startTime = DateTime.Now;
29-
Console.WriteLine("Writing XML...");
27+
//Console.WriteLine("...Done in: " + (DateTime.Now - startTime).ToString(@"mm\:ss\.ffff"));
28+
//startTime = DateTime.Now;
29+
//Console.WriteLine("Writing XML...");
3030

31-
Directory.CreateDirectory(testFile);
32-
pluggy.WriteXML(testFile);
31+
//Directory.CreateDirectory(testFile);
32+
//pluggy.WriteXML(testFile);
3333

34-
Console.WriteLine("...Done in: " + (DateTime.Now - startTime).ToString(@"mm\:ss\.ffff"));
35-
startTime = DateTime.Now;
34+
//Console.WriteLine("...Done in: " + (DateTime.Now - startTime).ToString(@"mm\:ss\.ffff"));
35+
//startTime = DateTime.Now;
3636
Console.WriteLine("Loading XML...");
3737

3838
pluggy = ElderScrollsPlugin.ReadXML(testFile);

0 commit comments

Comments
 (0)