From 4d8f5839669e54ff4439694577fa91782567d853 Mon Sep 17 00:00:00 2001 From: lucidiot Date: Sat, 30 Jul 2022 02:25:52 +0200 Subject: [PATCH] Fixes on debug printing --- Lucidiot.Magellan.Extract/Program.cs | 13 +++++++++---- Lucidiot.Raima/MemberEntry.cs | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Lucidiot.Magellan.Extract/Program.cs b/Lucidiot.Magellan.Extract/Program.cs index 6a93e21..46a3c22 100644 --- a/Lucidiot.Magellan.Extract/Program.cs +++ b/Lucidiot.Magellan.Extract/Program.cs @@ -108,7 +108,7 @@ namespace Lucidiot.Magellan.Extract { } static void DumpDatabase(string MGIPath, string fileName) { - Console.WriteLine("Raima Database Manager Embedded V3.00 Database Schema Dump"); + Console.WriteLine("Raima Database Manager Embedded Database Schema Dump"); Console.WriteLine("Database {0} in archive {1}", fileName, MGIPath); DatabaseSchema ds; try { @@ -121,6 +121,7 @@ namespace Lucidiot.Magellan.Extract { Console.WriteLine("--------------------------------------------------"); return; } + Console.WriteLine("Version: {0}", ds.Version); Console.WriteLine("PageSize: {0}", ds.PageSize); Console.WriteLine("--- FILE ENTRIES ---------------------------------"); @@ -251,7 +252,9 @@ namespace Lucidiot.Magellan.Extract { Console.WriteLine(" Timestamped"); using (new ColorSwitch(ConsoleColor.Yellow)) { - if (entry.FirstMemberEntryIndex < 0 || entry.FirstMemberEntryIndex + 1 > ds.SortEntries.Count) + if (entry.RecordEntryIndex < 0 || entry.RecordEntryIndex + 1 > ds.RecordEntries.Count) + Console.WriteLine(" Record #{0} does not exist", entry.RecordEntryIndex); + if (entry.FirstMemberEntryIndex < 0 || entry.FirstMemberEntryIndex + 1 > ds.MemberEntries.Count) Console.WriteLine(" Member entry #{0} does not exist", entry.FirstMemberEntryIndex); // TODO: No overlapping values when using the first index / count attributes if (entry.FirstMemberEntryIndex + entry.MemberCount > ds.MemberEntries.Count) @@ -282,11 +285,13 @@ namespace Lucidiot.Magellan.Extract { Console.WriteLine("--- MEMBER ENTRIES -------------------------------"); for (int i = 0; i < ds.MemberEntries.Count; i++) { MemberEntry entry = ds.MemberEntries[i]; - Console.WriteLine(" #{0}: member entry from record #{1}", i, entry.RecordIndex); - Console.WriteLine(" Offset: ", entry.Offset); + Console.WriteLine(" #{0}: member entry from record #{1}", i, entry.RecordEntryIndex); + Console.WriteLine(" Offset: {0}", entry.Offset); Console.WriteLine(" {0} sort entries starting at #{1}", entry.SortEntryCount, entry.FirstSortEntryIndex); using (new ColorSwitch(ConsoleColor.Yellow)) { + if (entry.RecordEntryIndex < 0 || entry.RecordEntryIndex + 1 > ds.RecordEntries.Count) + Console.WriteLine(" Record #{0} does not exist", entry.RecordEntryIndex); if (entry.FirstSortEntryIndex < 0 || entry.FirstSortEntryIndex + 1 > ds.SortEntries.Count) Console.WriteLine(" Sort entry #{0} does not exist", entry.FirstSortEntryIndex); // TODO: No overlapping values when using the first index / count attributes diff --git a/Lucidiot.Raima/MemberEntry.cs b/Lucidiot.Raima/MemberEntry.cs index 5469a16..dab5d1b 100644 --- a/Lucidiot.Raima/MemberEntry.cs +++ b/Lucidiot.Raima/MemberEntry.cs @@ -4,7 +4,7 @@ namespace Lucidiot.Raima { [StructLayout(LayoutKind.Explicit, Size = 8)] public struct MemberEntry { [FieldOffset(0)] - public short RecordIndex; + public short RecordEntryIndex; [FieldOffset(2)] public short Offset;