From 208140d0186efae75bac1336c023997e5a02bb2b Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Wed, 9 Sep 2015 10:03:02 +0100 Subject: [PATCH] dev-java/oracle-jdk-bin: Remove PostVMInitHook to stop usage tracker Deleting the usage tracker resulted in exceptions being silently raised in a thread and this caused havoc with debuggers. Deleting the hook that calls it instead is a smaller change and avoids both problems. It is possible that Oracle may use this hook for something else later. I have therefore added a JAVA_PKG_STRICT check to display its contents on each merge so that we can keep an eye on it. See bug #559936 for more details. Package-Manager: portage-2.2.20.1 --- ...1.ebuild => oracle-jdk-bin-1.8.0.60-r2.ebuild} | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) rename dev-java/oracle-jdk-bin/{oracle-jdk-bin-1.8.0.60-r1.ebuild => oracle-jdk-bin-1.8.0.60-r2.ebuild} (95%) diff --git a/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.60-r1.ebuild b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.60-r2.ebuild similarity index 95% rename from dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.60-r1.ebuild rename to dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.60-r2.ebuild index ee9ca0d97c93..5c7418a14f6e 100644 --- a/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.60-r1.ebuild +++ b/dev-java/oracle-jdk-bin/oracle-jdk-bin-1.8.0.60-r2.ebuild @@ -183,10 +183,17 @@ src_prepare() { mv "${WORKDIR}"/${JCE_DIR} jre/lib/security/ || die fi - # Delete Oracle's evil usage tracker. Not just because it's evil but - # because it breaks the sandbox during builds and we can't find any - # other feasible way to disable it or make it write somewhere else. - zip -d jre/lib/rt.jar sun/usagetracker/\* || die + if [[ -n ${JAVA_PKG_STRICT} ]] ; then + eqawarn "Ensure that this only calls trackJavaUsage(). If not, see bug #559936." + eqawarn + eqawarn "$(./bin/javap -J-Duser.home=${T} -c sun.misc.PostVMInitHook || die)" + fi + + # Remove the hook that calls Oracle's evil usage tracker. Not just + # because it's evil but because it breaks the sandbox during builds + # and we can't find any other feasible way to disable it or make it + # write somewhere else. See bug #559936 for details. + zip -d jre/lib/rt.jar sun/misc/PostVMInitHook.class || die } src_install() { -- 2.26.2