mirror of
https://github.com/termux/termux-packages.git
synced 2024-12-11 23:00:52 +00:00
940a37f5f0
cherry-pick all patches, apply them on upstream JDK, and adapted for newer $UPDATE version fix: type redefinition introduced in 21.0.2
48 lines
1.9 KiB
Diff
48 lines
1.9 KiB
Diff
From ca4e4fe34d2262bf39d04be993fa08d25aeb1a7b Mon Sep 17 00:00:00 2001
|
|
From: Duy Tran Khanh <40482367+khanhduytran0@users.noreply.github.com>
|
|
Date: Thu, 10 Jun 2021 18:36:56 +0700
|
|
Subject: [PATCH 11/37] Fixed Java_sun_nio_fs_UnixNativeDispatcher_futimes
|
|
|
|
---
|
|
.../unix/native/libnio/fs/UnixNativeDispatcher.c | 11 ++++++-----
|
|
1 file changed, 6 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/src/java.base/unix/native/libnio/fs/UnixNativeDispatcher.c b/src/java.base/unix/native/libnio/fs/UnixNativeDispatcher.c
|
|
index 76ab034bb..973870f9c 100644
|
|
--- a/src/java.base/unix/native/libnio/fs/UnixNativeDispatcher.c
|
|
+++ b/src/java.base/unix/native/libnio/fs/UnixNativeDispatcher.c
|
|
@@ -680,16 +680,17 @@ Java_sun_nio_fs_UnixNativeDispatcher_futimes0(JNIEnv* env, jclass this, jint fil
|
|
jlong accessTime, jlong modificationTime)
|
|
{
|
|
struct timeval times[2];
|
|
+ struct timespec times2[2];
|
|
int err = 0;
|
|
|
|
- times[0].tv_sec = accessTime / 1000000;
|
|
+ times[0].tv_sec = times2[0].tv_sec = accessTime / 1000000;
|
|
times[0].tv_usec = accessTime % 1000000;
|
|
|
|
- times[1].tv_sec = modificationTime / 1000000;
|
|
+ times[1].tv_sec = times2[1].tv_sec = modificationTime / 1000000;
|
|
times[1].tv_usec = modificationTime % 1000000;
|
|
|
|
- times[0].tv_nsec = (accessTime % 1000000) * 1000;
|
|
- times[1].tv_nsec = (modificationTime % 1000000) * 1000;
|
|
+ times2[0].tv_nsec = times[0].tv_usec * 1000;
|
|
+ times2[1].tv_nsec = times[1].tv_usec * 1000;
|
|
|
|
#ifdef _ALLBSD_SOURCE
|
|
RESTARTABLE(futimes(filedes, ×[0]), err);
|
|
@@ -701,7 +702,7 @@ Java_sun_nio_fs_UnixNativeDispatcher_futimes0(JNIEnv* env, jclass this, jint fil
|
|
if (my_futimesat_func != NULL) {
|
|
RESTARTABLE((*my_futimesat_func)(filedes, NULL, ×[0]), err);
|
|
} else {
|
|
- RESTARTABLE((*my_utimensat_func)(filedes, NULL, ×[0], 0), err);
|
|
+ RESTARTABLE((*my_utimensat_func)(filedes, NULL, ×2[0], 0), err);
|
|
}
|
|
#endif
|
|
if (err == -1) {
|
|
--
|
|
2.45.2
|
|
|