You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rp...@apache.org on 2015/11/28 17:16:11 UTC
[28/46] logging-log4j2 git commit: LOG4J2-435 prevent unconditional
deletion
LOG4J2-435 prevent unconditional deletion
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/eb1f7a2a
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/eb1f7a2a
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/eb1f7a2a
Branch: refs/heads/master
Commit: eb1f7a2a51bb3c6970a304d540d97f6f4393714b
Parents: c337f9b
Author: rpopma <rp...@apache.org>
Authored: Fri Nov 27 13:02:26 2015 +0900
Committer: rpopma <rp...@apache.org>
Committed: Fri Nov 27 13:02:26 2015 +0900
----------------------------------------------------------------------
.../logging/log4j/core/appender/rolling/action/IfAll.java | 3 +++
.../logging/log4j/core/appender/rolling/action/IfAllTest.java | 5 +++++
.../logging/log4j/core/appender/rolling/action/IfAnyTest.java | 5 +++++
.../logging/log4j/core/appender/rolling/action/IfNotTest.java | 7 ++++++-
4 files changed, 19 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/eb1f7a2a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/IfAll.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/IfAll.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/IfAll.java
index 8e086cd..84a9388 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/IfAll.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/IfAll.java
@@ -48,6 +48,9 @@ public final class IfAll implements PathCondition {
*/
@Override
public boolean accept(final Path baseDir, final Path relativePath, final BasicFileAttributes attrs) {
+ if (components == null || components.length == 0) {
+ return false; // unconditional delete not supported
+ }
for (final PathCondition component : components) {
if (!component.accept(baseDir, relativePath, attrs)) {
return false;
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/eb1f7a2a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAllTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAllTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAllTest.java
index 545c856..12d5a05 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAllTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAllTest.java
@@ -39,6 +39,11 @@ public class IfAllTest {
}
@Test
+ public void testEmptyIsFalse() {
+ assertFalse(IfAll.createAndCondition().accept(null, null, null));
+ }
+
+ @Test
public void testBeforeTreeWalk() {
final CountingCondition counter = new CountingCondition(true);
final IfAll and = IfAll.createAndCondition(counter, counter, counter);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/eb1f7a2a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAnyTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAnyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAnyTest.java
index a90aa70..52a8b27 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAnyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfAnyTest.java
@@ -37,6 +37,11 @@ public class IfAnyTest {
}
@Test
+ public void testEmptyIsFalse() {
+ assertFalse(IfAny.createOrCondition().accept(null, null, null));
+ }
+
+ @Test
public void testBeforeTreeWalk() {
final CountingCondition counter = new CountingCondition(true);
final IfAny or = IfAny.createOrCondition(counter, counter, counter);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/eb1f7a2a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfNotTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfNotTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfNotTest.java
index 3f2a89a..c5abfb9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfNotTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/IfNotTest.java
@@ -35,7 +35,12 @@ public class IfNotTest {
assertFalse(new FixedCondition(false).accept(null, null, null));
assertTrue(IfNot.createNotCondition(new FixedCondition(false)).accept(null, null, null));
}
-
+
+ @Test(expected = NullPointerException.class)
+ public void testEmptyIsFalse() {
+ assertFalse(IfNot.createNotCondition(null).accept(null, null, null));
+ }
+
@Test
public void testBeforeTreeWalk() {
final CountingCondition counter = new CountingCondition(true);