If the stored metadata doesn't contain a constant (NextExportID, FreeSpaceBuffer, FreeSpaceSearch), then don't update when loading that metadata.
Change metadata's default FreeSpaceBuffer to -1 so that such metadata can be recognized.
This commit is contained in:
Benjamin Popp 2021-02-13 19:52:39 -06:00
parent dc1e733990
commit 3decb84e2d
2 changed files with 4 additions and 4 deletions

View File

@ -452,9 +452,9 @@ namespace HavenSoft.HexManiac.Core.Models {
}
}
}
model.NextExportID = metadata.NextExportID;
model.FreeSpaceStart = metadata.FreeSpaceSearch;
model.FreeSpaceBuffer = metadata.FreeSpaceBuffer;
if (metadata.NextExportID > 0) model.NextExportID = metadata.NextExportID;
if (metadata.FreeSpaceSearch > 0) model.FreeSpaceStart = metadata.FreeSpaceSearch;
if (metadata.FreeSpaceBuffer > 0) model.FreeSpaceBuffer = metadata.FreeSpaceBuffer;
}
public static ErrorInfo CompleteArrayExtension(this IDataModel model, ModelDelta changeToken, int count, ref ITableRun table) {

View File

@ -14,7 +14,7 @@ namespace HavenSoft.HexManiac.Core.Models {
public string Version { get; }
public int NextExportID { get; }
public int FreeSpaceSearch { get; } = -1;
public int FreeSpaceBuffer { get; } = 0x100;
public int FreeSpaceBuffer { get; } = -1;
public bool IsEmpty => NamedAnchors.Count == 0 && UnmappedPointers.Count == 0;