Bug 92459 - jdk-1.4.2p8_2 crashes in libzip.so when starting eclipse
Summary: jdk-1.4.2p8_2 crashes in libzip.so when starting eclipse
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: java (show other bugs)
Version: 6.0-RELEASE
Hardware: Any Any
: Normal Affects Only Me
Assignee: Greg Lewis
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-01-28 14:10 UTC by Vaclav Kadlcik
Modified: 2006-02-12 00:29 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vaclav Kadlcik 2006-01-28 14:10:10 UTC
The patchset p8 broke comaptibility with eclipse:

java: jdk-1.4.2p8_2, eclipse: eclipse-3.1.1_3

When starting eclipse, it crashes with an error window: "JVM terminated. Exit code=1 /usr/local/bin/java (...edited...)" and an error log file hs_err_pidNNN.log:
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0x286DCF57
Function=inflate_fast+0x17
Library=/usr/local/jdk1.4.2/jre/lib/i386/libzip.so

Current Java thread:
        at org.eclipse.swt.internal.gtk.OS._pango_context_list_families(Native Method)
(...edited...)
Dynamic libraries:
(...edited...)
0x286cd000      /usr/local/jdk1.4.2/jre/lib/i386/libzip.so
(...edited...)
0x42d15000      /lib/libz.so.3
(...edited...)
# Java VM: Java HotSpot(TM) Client VM (1.4.2-p8-root_28_jan_2006_08_37 mixed mode)

I looked at Changelog in bsd-jdk14-patches-8.tar.gz and found:
2005-12-08 Thursday 05:48  glewis
(...edited...)
          "Privatise" the symbols in libzip.so to avoid conflicting with those
          in the systems libz.so.  This conflict broke applications such as
          Eclipse which is linked with libz.so (via gtk+ I believe).

I'm afraid *this* change broke Eclipse...

Fix: 

Just a workaround: I uninstalled jdk-1.4.2p8_2 and installed jdk-1.4.2p7_2. (I usually run portupgrade with '-b'.)
How-To-Repeat: Build java/jdk14 and java/eclipse from ports and run eclipse.
Comment 1 HASHI Hiroaki 2006-01-30 02:13:34 UTC
----Next_Part(Mon_Jan_30_11_13_34_2006_247)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hello.

I made a patch for jdk14.

That using system's zlib instead of jdk's zlib-1.1.3 .

----Next_Part(Mon_Jan_30_11_13_34_2006_247)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="jdk14.patch"

diff -ruN jdk14.orig/Makefile jdk14/Makefile
--- jdk14.orig/Makefile	Sat Jan 21 15:06:09 2006
+++ jdk14/Makefile	Mon Jan 30 11:03:51 2006
@@ -7,7 +7,7 @@
 
 PORTNAME=	jdk
 PORTVERSION=	${JDK_VERSION}p${JDK_PATCHSET_VERSION}
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	java devel
 MASTER_SITES=	# http://www.sun.com/software/java2/download.html
 #		 http://www.eyesbeyond.com/freebsddom/java/jdk14.html
@@ -241,6 +241,8 @@
 		${REINPLACE_CMD} -e "s:-lkse:${PTHREAD_LIBS}:g" \
 			${WRKSRC}/$${file}; \
 	done
+	@cd ${WRKDIR}/j2se/src/share/native/java/util/zip && \
+		${RM} -rf zlib-1.1.3
 
 pre-build-linuxcheck:
 .if defined(WITH_LINUX_BOOTSTRAP)
diff -ruN jdk14.orig/files/patch-java::zip::FILES_c.gmk jdk14/files/patch-java::zip::FILES_c.gmk
--- jdk14.orig/files/patch-java::zip::FILES_c.gmk	Thu Jan  1 09:00:00 1970
+++ jdk14/files/patch-java::zip::FILES_c.gmk	Mon Jan 30 10:26:37 2006
@@ -0,0 +1,18 @@
+--- ../../../../jdk14.orig/work/j2se/make/java/zip/FILES_c.gmk	Thu Sep 11 10:43:01 2003
++++ ../../j2se/make/java/zip/FILES_c.gmk	Mon Jan 30 02:22:58 2006
+@@ -8,15 +8,4 @@
+ 	$(CTARGDIR)Inflater.c \
+ 	$(CTARGDIR)ZipFile.c \
+ 	$(CTARGDIR)ZipEntry.c \
+-	$(CTARGDIR)zadler32.c \
+-	$(CTARGDIR)zcrc32.c \
+-	$(CTARGDIR)deflate.c \
+-	$(CTARGDIR)trees.c \
+-	$(CTARGDIR)zutil.c \
+-	$(CTARGDIR)inflate.c \
+-	$(CTARGDIR)infblock.c \
+-	$(CTARGDIR)inftrees.c \
+-	$(CTARGDIR)infcodes.c \
+-	$(CTARGDIR)infutil.c \
+-	$(CTARGDIR)inffast.c \
+ 	$(CTARGDIR)zip_util.c
diff -ruN jdk14.orig/files/patch-java::zip::Makefile jdk14/files/patch-java::zip::Makefile
--- jdk14.orig/files/patch-java::zip::Makefile	Thu Jan  1 09:00:00 1970
+++ jdk14/files/patch-java::zip::Makefile	Mon Jan 30 10:27:34 2006
@@ -0,0 +1,30 @@
+--- ../../../../jdk14.orig/work/j2se/make/java/zip/Makefile	Thu Sep 11 10:43:01 2003
++++ ../../j2se/make/java/zip/Makefile	Mon Jan 30 02:04:45 2006
+@@ -12,8 +12,6 @@
+ PRODUCT = sun
+ include $(BUILDDIR)/common/Defs.gmk
+ 
+-ZLIB_VERSION = 1.1.3
+-
+ #
+ # Files to compile.
+ #
+@@ -58,12 +56,9 @@
+ CPPFLAGS += -UDEBUG 
+ endif
+ 
+-CPPFLAGS += -I$(SHARE_SRC)/native/java/util/zip/zlib-$(ZLIB_VERSION)
+-
+ #
+ # Add to ambient vpath so we pick up the library files
+ #
+-vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/zlib-$(ZLIB_VERSION)
+ 
+ #
+ # Has been converted to the JNI: generate JNI-style header files
+@@ -73,4 +68,4 @@
+ #
+ # Link to JVM library for JVM_Zip* functions
+ #
+-OTHER_LDLIBS = $(JVMLIB)
++OTHER_LDLIBS = $(JVMLIB) -lz

----Next_Part(Mon_Jan_30_11_13_34_2006_247)----
Comment 2 Greg Lewis freebsd_committer freebsd_triage 2006-01-31 16:31:25 UTC
Responsible Changed
From-To: freebsd-java->glewis

I'll take it.
Comment 3 Greg Lewis freebsd_committer freebsd_triage 2006-02-12 00:28:47 UTC
State Changed
From-To: open->closed

I backported the patch from jdk15 to fix this.  Its similar but not quite 
the same as the patch submitted by HASHI Hiroaki in the PR.