diff --git a/src/Appender/RollingFileAppender.cs b/src/Appender/RollingFileAppender.cs
index 1bcf0e0..9c63f69 100644
--- a/src/Appender/RollingFileAppender.cs
+++ b/src/Appender/RollingFileAppender.cs
@@ -1481,24 +1481,24 @@
 						string archiveFileBaseName = baseFileName;
 						if (!m_staticLogFileName)
 						{
-													if (m_preserveLogFileNameExtension)
-													{
-														string extension = Path.GetExtension(archiveFileBaseName);
-														string baseName = Path.GetFileNameWithoutExtension(archiveFileBaseName);
-							int lastDotIndex = baseName.LastIndexOf(".");
-							if (lastDotIndex >= 0)
+							if (m_preserveLogFileNameExtension)
 							{
-								archiveFileBaseName = baseName.Substring(0, lastDotIndex) + extension;
+								string extension = Path.GetExtension(archiveFileBaseName);
+								string baseName = Path.GetFileNameWithoutExtension(archiveFileBaseName);
+								int lastDotIndex = baseName.LastIndexOf(".");
+								if (lastDotIndex >= 0)
+								{
+									archiveFileBaseName = baseName.Substring(0, lastDotIndex) + extension;
+								}
 							}
-													}
-													else
-													{
-							int lastDotIndex = archiveFileBaseName.LastIndexOf(".");
-							if (lastDotIndex >= 0)
+							else
 							{
-								archiveFileBaseName = archiveFileBaseName.Substring(0, lastDotIndex);
+								int lastDotIndex = archiveFileBaseName.LastIndexOf(".");
+								if (lastDotIndex >= 0)
+								{
+									archiveFileBaseName = archiveFileBaseName.Substring(0, lastDotIndex);
+								}
 							}
-													}
 						}
 
 						// Delete the archive file
