From ca5a9cfaf7d0d18d597897ea6bef46d695a70349 Mon Sep 17 00:00:00 2001 From: Shaojin Wen Date: Thu, 1 May 2025 08:26:04 +0800 Subject: [PATCH] Use Long::hashCode --- src/java.base/unix/classes/sun/nio/ch/FileKey.java | 3 +-- src/java.base/unix/classes/sun/nio/fs/UnixFileKey.java | 3 +-- src/java.base/unix/classes/sun/nio/fs/UnixFileStore.java | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/java.base/unix/classes/sun/nio/ch/FileKey.java b/src/java.base/unix/classes/sun/nio/ch/FileKey.java index 119abe4a3b57a..f08d92dc06b3b 100644 --- a/src/java.base/unix/classes/sun/nio/ch/FileKey.java +++ b/src/java.base/unix/classes/sun/nio/ch/FileKey.java @@ -49,8 +49,7 @@ public static FileKey create(FileDescriptor fd) throws IOException { @Override public int hashCode() { - return (int)(st_dev ^ (st_dev >>> 32)) + - (int)(st_ino ^ (st_ino >>> 32)); + return Long.hashCode(st_dev) + Long.hashCode(st_ino); } @Override diff --git a/src/java.base/unix/classes/sun/nio/fs/UnixFileKey.java b/src/java.base/unix/classes/sun/nio/fs/UnixFileKey.java index 29b1325f3e679..60c7e2a96f8de 100644 --- a/src/java.base/unix/classes/sun/nio/fs/UnixFileKey.java +++ b/src/java.base/unix/classes/sun/nio/fs/UnixFileKey.java @@ -40,8 +40,7 @@ class UnixFileKey { @Override public int hashCode() { - return (int)(st_dev ^ (st_dev >>> 32)) + - (int)(st_ino ^ (st_ino >>> 32)); + return Long.hashCode(st_dev) + Long.hashCode(st_ino); } @Override diff --git a/src/java.base/unix/classes/sun/nio/fs/UnixFileStore.java b/src/java.base/unix/classes/sun/nio/fs/UnixFileStore.java index 4311cd6c646b9..1d16af23460d5 100644 --- a/src/java.base/unix/classes/sun/nio/fs/UnixFileStore.java +++ b/src/java.base/unix/classes/sun/nio/fs/UnixFileStore.java @@ -241,7 +241,7 @@ public boolean equals(Object ob) { @Override public int hashCode() { - return (int)(dev ^ (dev >>> 32)) ^ Arrays.hashCode(entry.dir()); + return Long.hashCode(dev) ^ Arrays.hashCode(entry.dir()); } @Override