From 55eab1f99a485089966a29771c43486299095a48 Mon Sep 17 00:00:00 2001 From: André Draszik Date: Mon, 5 Mar 2018 09:30:58 +0000 Subject: openjdk-8: fix a compiler warning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As per the patch Signed-off-by: André Draszik Signed-off-by: Maxin B. John --- recipes-core/openjdk/openjdk-8-release-162b12.inc | 1 + ...dk-comparison-between-pointer-and-integer.patch | 144 +++++++++++++++++++++ 2 files changed, 145 insertions(+) create mode 100644 recipes-core/openjdk/patches-openjdk-8/0001-jdk-comparison-between-pointer-and-integer.patch (limited to 'recipes-core') diff --git a/recipes-core/openjdk/openjdk-8-release-162b12.inc b/recipes-core/openjdk/openjdk-8-release-162b12.inc index b7e6392..5a577b9 100644 --- a/recipes-core/openjdk/openjdk-8-release-162b12.inc +++ b/recipes-core/openjdk/openjdk-8-release-162b12.inc @@ -6,6 +6,7 @@ PATCHES_URI = "\ file://openjdk8-no-unused-deps.patch;striplevel=0 \ file://openjdk8-find-compiler-fix-env-respect.patch;striplevel=0 \ file://openjdk8-prevent-debuginfo-in-favour-of-openembedded-package-split.patch;striplevel=0 \ + file://0001-jdk-comparison-between-pointer-and-integer.patch \ " # some patches extracted from http://cr.openjdk.java.net/~rkennke/shark-build-hotspot/webrev.01/hotspot.patch # reported via http://mail.openjdk.java.net/pipermail/build-dev/2015-January/013972.html diff --git a/recipes-core/openjdk/patches-openjdk-8/0001-jdk-comparison-between-pointer-and-integer.patch b/recipes-core/openjdk/patches-openjdk-8/0001-jdk-comparison-between-pointer-and-integer.patch new file mode 100644 index 0000000..29a30d6 --- /dev/null +++ b/recipes-core/openjdk/patches-openjdk-8/0001-jdk-comparison-between-pointer-and-integer.patch @@ -0,0 +1,144 @@ +From 97d6911fb581f9e44785db29abbf97ce77713f50 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andr=C3=A9=20Draszik?= +Date: Fri, 2 Mar 2018 11:13:08 +0000 +Subject: [PATCH 1/8] jdk: comparison between pointer and integer +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In file included from jdk/src/share/native/java/net/net_util.c:28:0: +jdk/src/share/native/java/net/net_util.c: In function 'NET_SockaddrToInetAddress': +jdk/src/share/native/common/jni_util.h:302:17: warning: comparison between pointer and integer + if ((x) == NULL) { \ + ^ +jdk/src/share/native/java/net/net_util.c:225:13: note: in expansion of macro 'CHECK_NULL_RETURN' + CHECK_NULL_RETURN(ret, NULL); + ^~~~~~~~~~~~~~~~~ + +Backport a patch to fix this. + +Upstream-Status: Backport [http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/90c643593ed7] +Signed-off-by: André Draszik +--- + jdk/src/share/native/java/net/net_util.c | 15 +++++++-------- + jdk/src/share/native/java/net/net_util.h | 8 ++++---- + jdk/src/solaris/native/java/net/Inet6AddressImpl.c | 4 ++-- + 3 files changed, 13 insertions(+), 14 deletions(-) + +diff --git a/jdk/src/share/native/java/net/net_util.c b/jdk/src/share/native/java/net/net_util.c +index 2194e2e6..00c9e2ac 100644 +--- a/jdk/src/share/native/java/net/net_util.c ++++ b/jdk/src/share/native/java/net/net_util.c +@@ -108,7 +108,7 @@ jobject getInet6Address_scopeifname(JNIEnv *env, jobject iaObj) { + return (*env)->GetObjectField(env, holder, ia6_scopeifnameID); + } + +-int setInet6Address_scopeifname(JNIEnv *env, jobject iaObj, jobject scopeifname) { ++jboolean setInet6Address_scopeifname(JNIEnv *env, jobject iaObj, jobject scopeifname) { + jobject holder = (*env)->GetObjectField(env, iaObj, ia6_holder6ID); + CHECK_NULL_RETURN(holder, JNI_FALSE); + (*env)->SetObjectField(env, holder, ia6_scopeifnameID, scopeifname); +@@ -127,7 +127,7 @@ int getInet6Address_scopeid(JNIEnv *env, jobject iaObj) { + return (*env)->GetIntField(env, holder, ia6_scopeidID); + } + +-int setInet6Address_scopeid(JNIEnv *env, jobject iaObj, int scopeid) { ++jboolean setInet6Address_scopeid(JNIEnv *env, jobject iaObj, int scopeid) { + jobject holder = (*env)->GetObjectField(env, iaObj, ia6_holder6ID); + CHECK_NULL_RETURN(holder, JNI_FALSE); + (*env)->SetIntField(env, holder, ia6_scopeidID, scopeid); +@@ -138,7 +138,7 @@ int setInet6Address_scopeid(JNIEnv *env, jobject iaObj, int scopeid) { + } + + +-int getInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *dest) { ++jboolean getInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *dest) { + jobject holder, addr; + jbyteArray barr; + +@@ -150,7 +150,7 @@ int getInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *dest) { + return JNI_TRUE; + } + +-int setInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *address) { ++jboolean setInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *address) { + jobject holder; + jbyteArray addr; + +@@ -202,7 +202,6 @@ NET_SockaddrToInetAddress(JNIEnv *env, struct sockaddr *him, int *port) { + jobject iaObj; + #ifdef AF_INET6 + if (him->sa_family == AF_INET6) { +- jbyteArray ipaddress; + #ifdef WIN32 + struct SOCKADDR_IN6 *him6 = (struct SOCKADDR_IN6 *)him; + #else +@@ -218,11 +217,12 @@ NET_SockaddrToInetAddress(JNIEnv *env, struct sockaddr *him, int *port) { + setInetAddress_family(env, iaObj, IPv4); + } else { + jint scope; +- int ret; ++ jboolean ret; + iaObj = (*env)->NewObject(env, ia6_class, ia6_ctrID); + CHECK_NULL_RETURN(iaObj, NULL); + ret = setInet6Address_ipaddress(env, iaObj, (char *)&(him6->sin6_addr)); +- CHECK_NULL_RETURN(ret, NULL); ++ if (ret == JNI_FALSE) ++ return NULL; + setInetAddress_family(env, iaObj, IPv6); + scope = getScopeID(him); + setInet6Address_scopeid(env, iaObj, scope); +@@ -269,7 +269,6 @@ NET_SockaddrEqualsInetAddress(JNIEnv *env, struct sockaddr *him, jobject iaObj) + return JNI_FALSE; + } + } else { +- jbyteArray ipaddress; + jbyte caddrCur[16]; + int scope; + +diff --git a/jdk/src/share/native/java/net/net_util.h b/jdk/src/share/native/java/net/net_util.h +index c8a5e68c..176ca586 100644 +--- a/jdk/src/share/native/java/net/net_util.h ++++ b/jdk/src/share/native/java/net/net_util.h +@@ -64,12 +64,12 @@ JNIEXPORT void JNICALL initInetAddressIDs(JNIEnv *env); + * get_ methods that return objects return NULL on error. + */ + extern jobject getInet6Address_scopeifname(JNIEnv *env, jobject ia6Obj); +-extern int setInet6Address_scopeifname(JNIEnv *env, jobject ia6Obj, jobject scopeifname); ++extern jboolean setInet6Address_scopeifname(JNIEnv *env, jobject ia6Obj, jobject scopeifname); + extern int getInet6Address_scopeid_set(JNIEnv *env, jobject ia6Obj); + extern int getInet6Address_scopeid(JNIEnv *env, jobject ia6Obj); +-extern int setInet6Address_scopeid(JNIEnv *env, jobject ia6Obj, int scopeid); +-extern int getInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *dest); +-extern int setInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *address); ++extern jboolean setInet6Address_scopeid(JNIEnv *env, jobject ia6Obj, int scopeid); ++extern jboolean getInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *dest); ++extern jboolean setInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *address); + + extern void setInetAddress_addr(JNIEnv *env, jobject iaObj, int address); + extern void setInetAddress_family(JNIEnv *env, jobject iaObj, int family); +diff --git a/jdk/src/solaris/native/java/net/Inet6AddressImpl.c b/jdk/src/solaris/native/java/net/Inet6AddressImpl.c +index e29a25da..23ec2985 100644 +--- a/jdk/src/solaris/native/java/net/Inet6AddressImpl.c ++++ b/jdk/src/solaris/native/java/net/Inet6AddressImpl.c +@@ -403,7 +403,7 @@ Java_java_net_Inet6AddressImpl_lookupAllHostAddr(JNIEnv *env, jobject this, + } + + while (iterator != NULL) { +- int ret1; ++ jboolean ret1; + if (iterator->ai_family == AF_INET) { + jobject iaObj = (*env)->NewObject(env, ia4_class, ia4_ctrID); + if (IS_NULL(iaObj)) { +@@ -423,7 +423,7 @@ Java_java_net_Inet6AddressImpl_lookupAllHostAddr(JNIEnv *env, jobject this, + goto cleanupAndReturn; + } + ret1 = setInet6Address_ipaddress(env, iaObj, (char *)&(((struct sockaddr_in6*)iterator->ai_addr)->sin6_addr)); +- if (!ret1) { ++ if (ret1 == JNI_FALSE) { + ret = NULL; + goto cleanupAndReturn; + } +-- +2.16.2 + -- cgit v1.2.3-54-g00ecf