diff --git a/ErpNet.FP.Core/ErpNet.FP.Core.csproj b/ErpNet.FP.Core/ErpNet.FP.Core.csproj index 68ecaf5..06a462a 100644 --- a/ErpNet.FP.Core/ErpNet.FP.Core.csproj +++ b/ErpNet.FP.Core/ErpNet.FP.Core.csproj @@ -11,11 +11,11 @@ - - - - - + + + + + diff --git a/ErpNet.FP.Core/Transports/ComTransport.cs b/ErpNet.FP.Core/Transports/ComTransport.cs index a2b6726..514761e 100644 --- a/ErpNet.FP.Core/Transports/ComTransport.cs +++ b/ErpNet.FP.Core/Transports/ComTransport.cs @@ -226,6 +226,12 @@ public void Write(byte[] data) { idleTimer.Change(-1, 0); Open(); + + if (serialPort == null) + { + throw new FileNotFoundException("Can't write to an unavailable serial port!"); + } + serialPort.DiscardInBuffer(); var bytesToWrite = data.Length; while (bytesToWrite > 0) diff --git a/ErpNet.FP.Server/Configuration/WritableOptions.cs b/ErpNet.FP.Server/Configuration/WritableOptions.cs index 8b41da9..1e5eab5 100644 --- a/ErpNet.FP.Server/Configuration/WritableOptions.cs +++ b/ErpNet.FP.Server/Configuration/WritableOptions.cs @@ -34,7 +34,7 @@ public class WritableOptions : IWritableOptions where T : class, new() } public T Value => options.CurrentValue; - public T Get(string name) => options.Get(name); + public T Get(string? name) => options.Get(name); public void Update(Action applyChanges) { @@ -42,6 +42,11 @@ public void Update(Action applyChanges) var fileInfo = fileProvider.GetFileInfo(file); var physicalPath = fileInfo.PhysicalPath; + if (string.IsNullOrEmpty(physicalPath)) + { + throw new IOException("Invalid file path."); + } + var jObject = JsonConvert.DeserializeObject(File.ReadAllText(physicalPath)); if (jObject != null) { diff --git a/ErpNet.FP.Server/ErpNet.FP.Server.csproj b/ErpNet.FP.Server/ErpNet.FP.Server.csproj index a8d113b..ab64376 100644 --- a/ErpNet.FP.Server/ErpNet.FP.Server.csproj +++ b/ErpNet.FP.Server/ErpNet.FP.Server.csproj @@ -3,7 +3,7 @@ Exe ErpNet.FP.Server - netcoreapp3.1 + net7.0 ErpNet.FP.ico @@ -34,15 +34,15 @@ - - - - - - - - - + + + + + + + + + diff --git a/ErpNet.FP.Server/Program.cs b/ErpNet.FP.Server/Program.cs index d2900e3..786f94e 100644 --- a/ErpNet.FP.Server/Program.cs +++ b/ErpNet.FP.Server/Program.cs @@ -50,8 +50,7 @@ public class Program options.AllowSynchronousIO = true; options.Limits.MaxRequestBodySize = 500 * 1024; }) - .UseStartup() - .UseSerilog(); + .UseStartup(); }); public static void EnsureAppSettingsJson(string pathToContentRoot) @@ -163,6 +162,7 @@ public static int Main(string[] args) var builder = CreateHostBuilder( pathToContentRoot, args.Where(arg => arg != "--console").ToArray()); + builder.UseSerilog(); var host = builder.Build();