Fast fix for NullRefException from FileAppender
diff --git a/src/log4net.Tests/Appender/RollingFileAppenderTest.cs b/src/log4net.Tests/Appender/RollingFileAppenderTest.cs
index c6e5938..101b390 100644
--- a/src/log4net.Tests/Appender/RollingFileAppenderTest.cs
+++ b/src/log4net.Tests/Appender/RollingFileAppenderTest.cs
@@ -2014,6 +2014,17 @@
}
/// <summary>
+ /// Ensures that no problems result from creating and then closing the appender
+ /// when it has not also been initialized with ActivateOptions().
+ /// </summary>
+ [Test]
+ public void TestCreateCloseNoActivateOptions()
+ {
+ var appender = new RollingFileAppender();
+ appender.Close();
+ }
+
+ /// <summary>
///
/// </summary>
[Test,
diff --git a/src/log4net.Tests/log4net.Tests.csproj b/src/log4net.Tests/log4net.Tests.csproj
index 414b2a2..23090bb 100644
--- a/src/log4net.Tests/log4net.Tests.csproj
+++ b/src/log4net.Tests/log4net.Tests.csproj
@@ -68,6 +68,7 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
+ <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
<PackageReference Include="NUnit" Version="3.14.0" />
<PackageReference Include="NExpect" Version="1.0.273" />
<PackageReference Include="Quackers.TestLogger" Version="1.0.24" />
diff --git a/src/log4net/Appender/FileAppender.cs b/src/log4net/Appender/FileAppender.cs
index 4179190..14a3e35 100644
--- a/src/log4net/Appender/FileAppender.cs
+++ b/src/log4net/Appender/FileAppender.cs
@@ -169,7 +169,7 @@
}
private Stream m_realStream = null;
- private LockingModelBase m_lockingModel = null;
+ private readonly LockingModelBase m_lockingModel;
private int m_lockLevel = 0;
public LockingStream(LockingModelBase locking)
@@ -1306,7 +1306,7 @@
protected override void OnClose()
{
base.OnClose();
- m_lockingModel.OnClose();
+ m_lockingModel?.OnClose();
}
/// <summary>