Index: log4j-jul/src/main/java/org/apache/logging/log4j/jul/CoreLogger.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- log4j-jul/src/main/java/org/apache/logging/log4j/jul/CoreLogger.java	(revision 2b1b35613e66eec9658dcd471a28b214b5647174)
+++ log4j-jul/src/main/java/org/apache/logging/log4j/jul/CoreLogger.java	(revision )
@@ -44,7 +44,18 @@
 
     @Override
     public void setLevel(final Level level) throws SecurityException {
+        if (level != null) {
-        logger.setLevel(LevelTranslator.toLevel(level));
+            logger.setLevel(LevelTranslator.toLevel(level));
+        } else {
+            Logger parent = getParent();
+            while (parent != null && parent.getLevel() == null) {
+                parent = parent.getParent();
+            }
+            Level inheritedLevel = (parent != null) ? parent.getLevel() : null;
+            if (inheritedLevel != null) {
+                logger.setLevel(LevelTranslator.toLevel(inheritedLevel));
+            }
+        }
         super.doSetLevel(level);
     }
 
Index: log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java	(revision 2b1b35613e66eec9658dcd471a28b214b5647174)
+++ log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java	(revision )
@@ -18,6 +18,7 @@
 package org.apache.logging.log4j.jul;
 
 import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.Matchers.is;
 import static org.junit.Assert.assertThat;
 
 import java.util.logging.Level;
@@ -73,4 +74,18 @@
         assertThat(logger.getLevel(), equalTo(Level.FINE));
         assertThat(childLogger.getLevel(), equalTo(Level.FINE));
     }
+
+    @Test
+    public void testSetLevelToNull() throws Exception {
+        final Logger childLogger = Logger.getLogger(LOGGER_NAME + ".NullChild");
+        assertThat(childLogger.getLevel(), equalTo(Level.FINE));
+        assertThat(childLogger.isLoggable(Level.FINE), is(true));
+        childLogger.setLevel(Level.SEVERE);
+        assertThat(childLogger.getLevel(), equalTo(Level.SEVERE));
+        assertThat(childLogger.isLoggable(Level.FINE), is(false));
+        childLogger.setLevel(null);
+        assertThat(childLogger.getLevel(), equalTo(null));
+        assertThat(childLogger.isLoggable(Level.FINE), is(true));
+    }
+
 }
\ No newline at end of file
