src/share/classes/com/sun/tools/javac/file/ZipFileIndexArchive.java

changeset 424
86b773b7cb40
parent 418
4776a869fdfa
child 554
9d9f26857129
     1.1 --- a/src/share/classes/com/sun/tools/javac/file/ZipFileIndexArchive.java	Tue Oct 13 15:26:30 2009 -0700
     1.2 +++ b/src/share/classes/com/sun/tools/javac/file/ZipFileIndexArchive.java	Wed Oct 14 15:41:28 2009 -0700
     1.3 @@ -219,17 +219,27 @@
     1.4              return name.equals(cn + k.extension);
     1.5          }
     1.6  
     1.7 +        /**
     1.8 +         * Check if two file objects are equal.
     1.9 +         * Two ZipFileIndexFileObjects are equal if the absolute paths of the underlying
    1.10 +         * zip files are equal and if the paths within those zip files are equal.
    1.11 +         */
    1.12          @Override
    1.13          public boolean equals(Object other) {
    1.14 +            if (this == other)
    1.15 +                return true;
    1.16 +
    1.17              if (!(other instanceof ZipFileIndexFileObject))
    1.18                  return false;
    1.19 +
    1.20              ZipFileIndexFileObject o = (ZipFileIndexFileObject) other;
    1.21 -            return entry.equals(o.entry);
    1.22 +            return zfIndex.getAbsoluteFile().equals(o.zfIndex.getAbsoluteFile())
    1.23 +                    && name.equals(o.name);
    1.24          }
    1.25  
    1.26          @Override
    1.27          public int hashCode() {
    1.28 -            return zipName.hashCode() + (name.hashCode() << 10);
    1.29 +            return zfIndex.getAbsoluteFile().hashCode() + name.hashCode();
    1.30          }
    1.31  
    1.32          private String getPrefixedEntryName() {

mercurial