Author: niallp
Date: Mon Oct 4 00:58:42 2010
New Revision: 1004077
URL: http://svn.apache.org/viewvc?rev=1004077&view=rev
Log:
Fix some issues identified by FindBugs
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/FilenameUtils.java
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/NameFileFilter.java
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFilter.java
commons/proper/io/trunk/src/test/org/apache/commons/io/filefilter/FileFilterTestCase.java
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/FilenameUtils.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/FilenameUtils.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
--- commons/proper/io/trunk/src/java/org/apache/commons/io/FilenameUtils.java
(original)
+++ commons/proper/io/trunk/src/java/org/apache/commons/io/FilenameUtils.java
Mon Oct 4 00:58:42 2010
@@ -1081,7 +1081,7 @@ public class FilenameUtils {
boolean normalized, IOCase caseSensitivity) {
if (filename1 == null || filename2 == null) {
- return filename1 == filename2;
+ return (filename1 == null && filename2 == null);
}
if (normalized) {
filename1 = normalize(filename1);
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
(original)
+++
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
Mon Oct 4 00:58:42 2010
@@ -209,7 +209,8 @@ public class MagicNumberFileFilter exten
throw new IllegalArgumentException("The offset cannot be
negative");
}
- this.magicNumbers = magicNumber;
+ this.magicNumbers = new byte[magicNumber.length];
+ System.arraycopy(magicNumber, 0, this.magicNumbers, 0,
magicNumber.length);
this.byteOffset = offset;
}
@@ -237,7 +238,10 @@ public class MagicNumberFileFilter exten
byte[] fileBytes = new byte[this.magicNumbers.length];
randomAccessFile = new RandomAccessFile(file, "r");
randomAccessFile.seek(byteOffset);
- randomAccessFile.read(fileBytes);
+ int read = randomAccessFile.read(fileBytes);
+ if (read != magicNumbers.length) {
+ return false;
+ }
return Arrays.equals(this.magicNumbers, fileBytes);
} catch (IOException ioe) {
// Do nothing, fall through and do not accept file
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/NameFileFilter.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/NameFileFilter.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/NameFileFilter.java
(original)
+++
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/NameFileFilter.java
Mon Oct 4 00:58:42 2010
@@ -103,7 +103,8 @@ public class NameFileFilter extends Abst
if (names == null) {
throw new IllegalArgumentException("The array of names must not be
null");
}
- this.names = names;
+ this.names = new String[names.length];
+ System.arraycopy(names, 0, this.names, 0, names.length);
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE :
caseSensitivity);
}
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/PrefixFileFilter.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
(original)
+++
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
Mon Oct 4 00:58:42 2010
@@ -108,7 +108,8 @@ public class PrefixFileFilter extends Ab
if (prefixes == null) {
throw new IllegalArgumentException("The array of prefixes must not
be null");
}
- this.prefixes = prefixes;
+ this.prefixes = new String[prefixes.length];
+ System.arraycopy(prefixes, 0, this.prefixes, 0, prefixes.length);
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE :
caseSensitivity);
}
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/SuffixFileFilter.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
(original)
+++
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
Mon Oct 4 00:58:42 2010
@@ -109,7 +109,8 @@ public class SuffixFileFilter extends Ab
if (suffixes == null) {
throw new IllegalArgumentException("The array of suffixes must not
be null");
}
- this.suffixes = suffixes;
+ this.suffixes = new String[suffixes.length];
+ System.arraycopy(suffixes, 0, this.suffixes, 0, suffixes.length);
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE :
caseSensitivity);
}
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFileFilter.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
(original)
+++
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
Mon Oct 4 00:58:42 2010
@@ -108,7 +108,8 @@ public class WildcardFileFilter extends
if (wildcards == null) {
throw new IllegalArgumentException("The wildcard array must not be
null");
}
- this.wildcards = wildcards;
+ this.wildcards = new String[wildcards.length];
+ System.arraycopy(wildcards, 0, this.wildcards, 0, wildcards.length);
this.caseSensitivity = (caseSensitivity == null ? IOCase.SENSITIVE :
caseSensitivity);
}
Modified:
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFilter.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFilter.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFilter.java
(original)
+++
commons/proper/io/trunk/src/java/org/apache/commons/io/filefilter/WildcardFilter.java
Mon Oct 4 00:58:42 2010
@@ -79,7 +79,8 @@ public class WildcardFilter extends Abst
if (wildcards == null) {
throw new IllegalArgumentException("The wildcard array must not be
null");
}
- this.wildcards = wildcards;
+ this.wildcards = new String[wildcards.length];
+ System.arraycopy(wildcards, 0, this.wildcards, 0, wildcards.length);
}
/**
Modified:
commons/proper/io/trunk/src/test/org/apache/commons/io/filefilter/FileFilterTestCase.java
URL:
http://svn.apache.org/viewvc/commons/proper/io/trunk/src/test/org/apache/commons/io/filefilter/FileFilterTestCase.java?rev=1004077&r1=1004076&r2=1004077&view=diff
==============================================================================
---
commons/proper/io/trunk/src/test/org/apache/commons/io/filefilter/FileFilterTestCase.java
(original)
+++
commons/proper/io/trunk/src/test/org/apache/commons/io/filefilter/FileFilterTestCase.java
Mon Oct 4 00:58:42 2010
@@ -942,6 +942,7 @@ public class FileFilterTestCase extends
File classFileA = new File(getTestDirectory(), "A.class");
File xmlFileB = new File(getTestDirectory(), "B.xml");
+ File emptyFile = new File(getTestDirectory(), "C.xml");
File dir = new File(getTestDirectory(), "D");
dir.mkdirs();
@@ -951,17 +952,21 @@ public class FileFilterTestCase extends
classFileAStream.close();
FileUtils.write(xmlFileB, xmlFileContent);
+ FileUtils.touch(emptyFile);
IOFileFilter filter = new MagicNumberFileFilter(classFileMagicNumber);
assertFiltering(filter, classFileA, true);
assertFiltering(filter, xmlFileB, false);
+ assertFiltering(filter, emptyFile, false);
assertFiltering(filter, dir, false);
+
filter = FileFilterUtils.magicNumberFileFilter(classFileMagicNumber);
assertFiltering(filter, classFileA, true);
assertFiltering(filter, xmlFileB, false);
+ assertFiltering(filter, emptyFile, false);
assertFiltering(filter, dir, false);
}