diff --git a/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Compile.cs b/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Compile.cs index 01bf011c15..5d74547a04 100644 --- a/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Compile.cs +++ b/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Compile.cs @@ -399,7 +399,7 @@ namespace BizHawk.Emulation.DiscSystem.CUE }); } - public void Run() + public override void Run() { //in params var cue = IN_CueFile; diff --git a/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Load.cs b/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Load.cs index 701e173bce..7ad80b45d8 100644 --- a/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Load.cs +++ b/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Load.cs @@ -163,7 +163,7 @@ namespace BizHawk.Emulation.DiscSystem.CUE OUT_Disc.RawTOCEntries.Add(new RawTOCEntry { QData = toc_sq }); } - public void Run() + public override void Run() { //params var compiled = IN_CompileJob; diff --git a/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Parse.cs b/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Parse.cs index 04564603c5..580e100f95 100644 --- a/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Parse.cs +++ b/src/BizHawk.Emulation.DiscSystem/DiscFormats/CUE/CUE_Parse.cs @@ -375,10 +375,10 @@ namespace BizHawk.Emulation.DiscSystem.CUE job.FinishLog(); } //LoadFromString - public void Run(ParseCueJob job) + public override void Run() { - job.OUT_CueFile = new CUE_File(); - job.LoadFromString(job); + OUT_CueFile = new CUE_File(); + LoadFromString(this); } } diff --git a/src/BizHawk.Emulation.DiscSystem/DiscJob.cs b/src/BizHawk.Emulation.DiscSystem/DiscJob.cs index b619707133..56a7bf0245 100644 --- a/src/BizHawk.Emulation.DiscSystem/DiscJob.cs +++ b/src/BizHawk.Emulation.DiscSystem/DiscJob.cs @@ -8,7 +8,7 @@ namespace BizHawk.Emulation.DiscSystem /// Returns WARNINGS for things which will are irregular or erroneous but later jobs might be able to handle, or which can be worked around by configuration assumptions. /// TODO - make IDisposable so I don't have to remember to Finish() it? /// - public class DiscJob + public abstract class DiscJob { internal int CurrentLine = -1; @@ -51,6 +51,8 @@ namespace BizHawk.Emulation.DiscSystem OUT_ErrorLevel |= job.OUT_ErrorLevel; swLog.Write(job.OUT_Log); } + + public abstract void Run(); } internal class DiscJobAbortException : Exception diff --git a/src/BizHawk.Emulation.DiscSystem/DiscMountJob.cs b/src/BizHawk.Emulation.DiscSystem/DiscMountJob.cs index 4f1029e248..0c63c6a53b 100644 --- a/src/BizHawk.Emulation.DiscSystem/DiscMountJob.cs +++ b/src/BizHawk.Emulation.DiscSystem/DiscMountJob.cs @@ -44,7 +44,7 @@ namespace BizHawk.Emulation.DiscSystem public bool OUT_SlowLoadAborted { get; private set; } /// is - public void Run() + public override void Run() { switch (IN_DiscInterface) { @@ -136,7 +136,7 @@ namespace BizHawk.Emulation.DiscSystem cue_content ??= File.ReadAllText(cuePath); parseJob.IN_CueString = cue_content; bool okParse = true; - try { parseJob.Run(parseJob); } + try { parseJob.Run(); } catch (DiscJobAbortException) { okParse = false; parseJob.FinishLog(); } if (!string.IsNullOrEmpty(parseJob.OUT_Log)) Console.WriteLine(parseJob.OUT_Log); ConcatenateJobLog(parseJob); diff --git a/src/BizHawk.Emulation.DiscSystem/Internal/Jobs/LoadSBIJob.cs b/src/BizHawk.Emulation.DiscSystem/Internal/Jobs/LoadSBIJob.cs index ff0ddaf0dd..1a62038b6b 100644 --- a/src/BizHawk.Emulation.DiscSystem/Internal/Jobs/LoadSBIJob.cs +++ b/src/BizHawk.Emulation.DiscSystem/Internal/Jobs/LoadSBIJob.cs @@ -21,7 +21,7 @@ namespace BizHawk.Emulation.DiscSystem.SBI public SubQPatchData OUT_Data { get; private set; } /// file at does not contain valid header or contains misformatted record - public void Run() + public override void Run() { using var fs = File.OpenRead(IN_Path); BinaryReader br = new BinaryReader(fs);