From 4423c2883118e77c7f3a1042b375498c8712c3e2 Mon Sep 17 00:00:00 2001 From: Olivier Blaise <16148676+oblaise@users.noreply.github.com> Date: Mon, 24 Jan 2022 09:15:57 +0100 Subject: [PATCH] Cache SerialPort in SerialLoggerFactory --- .../SerialLoggerFactory.cs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/nanoFramework.Logging.Serial/SerialLoggerFactory.cs b/nanoFramework.Logging.Serial/SerialLoggerFactory.cs index ec0ce15..dad22ba 100644 --- a/nanoFramework.Logging.Serial/SerialLoggerFactory.cs +++ b/nanoFramework.Logging.Serial/SerialLoggerFactory.cs @@ -49,12 +49,15 @@ public SerialLoggerFactory( /// public ILogger CreateLogger(string categoryName) { - _serial = new SerialPort(_comPort); - _serial.BaudRate = _baudRate; - _serial.Parity = _parity; - _serial.StopBits = _stopBits; - _serial.Handshake = _handshake; - _serial.DataBits = _dataBits; + if (_serial is null) + { + _serial = new SerialPort(_comPort); + _serial.BaudRate = _baudRate; + _serial.Parity = _parity; + _serial.StopBits = _stopBits; + _serial.Handshake = _handshake; + _serial.DataBits = _dataBits; + } return new SerialLogger(ref _serial, categoryName); }