From gbenson at redhat.com Wed Oct 1 02:52:07 2008 From: gbenson at redhat.com (Gary Benson) Date: Wed, 01 Oct 2008 09:52:07 +0000 Subject: changeset in /hg/icedtea6: 2008-10-01 Gary Benson changeset f4981f8a1720 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f4981f8a1720 description: 2008-10-01 Gary Benson * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a section of old code that had been #ifdef'd out. diffstat: 2 files changed, 5 insertions(+), 261 deletions(-) ChangeLog | 5 ports/hotspot/src/share/vm/shark/sharkState.cpp | 261 ----------------------- diffs (283 lines): diff -r d03dd528c2ed -r f4981f8a1720 ChangeLog --- a/ChangeLog Tue Sep 30 13:22:52 2008 -0400 +++ b/ChangeLog Wed Oct 01 05:52:01 2008 -0400 @@ -1,3 +1,8 @@ 2008-09-30 Lillian Angel + + * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a + section of old code that had been #ifdef'd out. + 2008-09-30 Lillian Angel * Makefile.am diff -r d03dd528c2ed -r f4981f8a1720 ports/hotspot/src/share/vm/shark/sharkState.cpp --- a/ports/hotspot/src/share/vm/shark/sharkState.cpp Tue Sep 30 13:22:52 2008 -0400 +++ b/ports/hotspot/src/share/vm/shark/sharkState.cpp Wed Oct 01 05:52:01 2008 -0400 @@ -205,267 +205,6 @@ void SharkPHIState::add_incoming(SharkSt } } -#if 0 -void SharkTrackingState::decache_for(CDReason reason, ciMethod *callee) -{ - // Start recording the debug information - OopMap *oopmap = new OopMap( - oopmap_slot_munge(function()->oopmap_frame_size()), - oopmap_slot_munge(function()->arg_size())); - int offset = function()->code_offset(); - debug_info()->add_safepoint(offset, oopmap); - - // Decache expression stack slots as necessary - GrowableArray *exparray = - new GrowableArray(stack_depth()); - - for (int i = stack_depth() - 1; i >= 0; i--) { - SharkValue *value = stack(i); - - Location::Type type = Location::normal; - if (value && value->is_jobject()) - type = Location::oop; - - int dst = i + max_stack() - stack_depth(); - int oiwfusp = function()->stack_slots_offset() + dst; - VMReg dst_as_vmreg = slot2reg(oiwfusp); - LocationValue* dst_as_lv = slot2lv(oiwfusp, type); - - bool write = false; - bool record = false; - - if (reason == TRAP) { - write = value != NULL; - record = true; - } - else if (value) { - if (reason == JAVA_CALL && i < callee->arg_size()) { - write = true; - record = false; - } - else { - write = value->is_jobject(); - record = true; - } - } - - if (write) { - if (value->is_two_word()) { - assert(i > 0, "should be"); - assert(stack(i - 1) == NULL, "should be"); - dst--; - } - - builder()->CreateStore( - value->generic_value(), - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->stack_slots(), dst), - PointerType::getUnqual(SharkType::to_stackType( - value->basic_type())))); - - if (record) - oopmap->set_oop(dst_as_vmreg); - } - - if (record) - exparray->append(dst_as_lv); - } - - // If we're decaching for a call then pop the arguments - int trim_slots = max_stack() - stack_depth(); - if (reason == JAVA_CALL) - pop(callee->arg_size()); - - // Record any monitors - GrowableArray *monarray = - new GrowableArray(function()->monitor_count()); - - for (int i = 0; i < function()->monitor_count(); i++) { - int box_oiwfusp = - function()->monitors_slots_offset() + - i * frame::interpreter_frame_monitor_size(); - - int obj_oiwfusp = - box_oiwfusp + - (BasicObjectLock::obj_offset_in_bytes() >> LogBytesPerWord); - - oopmap->set_oop(slot2reg(obj_oiwfusp)); - - monarray->append(new MonitorValue( - slot2lv (obj_oiwfusp, Location::oop), - slot2loc(box_oiwfusp, Location::normal))); - } - - // Record the exception slot - oopmap->set_oop(slot2reg(function()->exception_slot_offset())); - - // Decache the method pointer - builder()->CreateStore(method(), function()->method_slot()); - oopmap->set_oop(slot2reg(function()->method_slot_offset())); - - // Decache the PC - builder()->CreateStore( - builder()->CreateAdd( - function()->base_pc(), LLVMValue::intptr_constant(offset)), - function()->pc_slot()); - - // Decache local variables as necesary - GrowableArray *locarray = - new GrowableArray(max_locals()); - - for (int i = 0; i < max_locals(); i++) { - SharkValue *value = local(i); - - Location::Type type = Location::invalid; - if (value) { - if (value->is_jobject()) - type = Location::oop; - else - type = Location::normal; - } - else if (i > 0) { - SharkValue *prev = local(i - 1); - if (prev && prev->is_two_word()) - type = Location::normal; - } - - int dst = max_locals() - 1 - i; - int oiwfusp = function()->locals_slots_offset() + dst; - VMReg dst_as_vmreg = slot2reg(oiwfusp); - LocationValue* dst_as_lv = slot2lv(oiwfusp, type); - - if (value) { - if (value->is_two_word()) { - assert(i + 1 < max_locals(), "should be"); - assert(local(i + 1) == NULL, "should be"); - dst--; - } - - if (reason == TRAP || value->is_jobject()) { - builder()->CreateStore( - value->generic_value(), - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->locals_slots(), dst), - PointerType::getUnqual( - SharkType::to_stackType(value->basic_type())))); - } - - if (value->is_jobject()) - oopmap->set_oop(dst_as_vmreg); - } - locarray->append(dst_as_lv); - } - - // Trim back the stack if necessary - if (trim_slots) { - function()->CreateStoreZeroStackPointer( - builder()->CreatePtrToInt( - builder()->CreateStructGEP( - function()->stack_slots(), trim_slots), - SharkType::intptr_type())); - } - - // Record the scope and end the block of debug information - DebugToken *locvals = debug_info()->create_scope_values(locarray); - DebugToken *expvals = debug_info()->create_scope_values(exparray); - DebugToken *monvals = debug_info()->create_monitor_values(monarray); - debug_info()->describe_scope( - offset, block()->target(), block()->bci(), locvals, expvals, monvals); - debug_info()->end_safepoint(offset); -} - -void SharkTrackingState::cache_after(CDReason reason, ciMethod *callee) -{ - assert(reason != TRAP, "shouldn't be"); - - // If we're caching after a call then push a dummy result to set up the stack - int result_size = reason == JAVA_CALL ? callee->return_type()->size() : 0; - if (result_size) { - ciType *result_type; - switch (callee->return_type()->basic_type()) { - case T_BOOLEAN: - case T_BYTE: - case T_CHAR: - case T_SHORT: - result_type = ciType::make(T_INT); - break; - - default: - result_type = callee->return_type(); - } - - push(SharkValue::create_generic(result_type, NULL)); - if (result_size == 2) - push(NULL); - } - - // Cache expression stack slots as necessary - for (int i = 0; i < stack_depth(); i++) { - SharkValue *value = stack(i); - if (value == NULL) { - set_stack(i, NULL); - continue; - } - - bool read; - - if (i < result_size) { - read = true; - } - else { - read = value->is_jobject(); - } - - if (read) { - int src = i + max_stack() - stack_depth(); - if (value->is_two_word()) { - assert(i > 0, "should be"); - assert(stack(i - 1) == NULL, "should be"); - src--; - } - - set_stack( - i, - SharkValue::create_generic( - value->type(), - builder()->CreateLoad( - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->stack_slots(), src), - PointerType::getUnqual( - SharkType::to_stackType(value->basic_type())))))); - } - } - - // Cache the method pointer - set_method(builder()->CreateLoad(function()->method_slot())); - - // Cache local variables as necesary - for (int i = max_locals() - 1; i >= 0; i--) { - SharkValue *value = local(i); - if (value && value->is_jobject()) { - int src = max_locals() - 1 - i; - set_local( - i, - SharkValue::create_generic( - value->type(), - builder()->CreateLoad( - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->locals_slots(), src), - PointerType::getUnqual( - SharkType::to_stackType(value->type())))))); - } - } - - // Restore the stack pointer if necessary - if (stack_depth() != max_stack()) { - function()->CreateStoreZeroStackPointer( - builder()->CreatePtrToInt( - builder()->CreateStructGEP(function()->stack_slots(), 0), - SharkType::intptr_type())); - } -} -#endif // 0 - void SharkTrackingState::merge(SharkState* other, BasicBlock* other_block, BasicBlock* this_block) From mark at klomp.org Thu Oct 2 02:46:51 2008 From: mark at klomp.org (Mark Wielaard) Date: Thu, 02 Oct 2008 11:46:51 +0200 Subject: Public open specs In-Reply-To: <48DB92FC.3060100@sun.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> Message-ID: <1222940811.3265.12.camel@dijkstra.wildebeest.org> Hi Dalibor, On Thu, 2008-09-25 at 15:32 +0200, Dalibor Topic wrote: > Mark Wielaard wrote: > > Any progress on getting this specification open and public? > > > Unfortunately, there is no visible progress yet. Any invisible progress then now? Thanks, Mark From mjw at redhat.com Thu Oct 2 02:49:30 2008 From: mjw at redhat.com (Mark Wielaard) Date: Thu, 02 Oct 2008 11:49:30 +0200 Subject: Cleaning up crypto support In-Reply-To: <1222369008.3266.91.camel@dijkstra.wildebeest.org> References: <1219931049.4019.32.camel@dijkstra.wildebeest.org> <1222369008.3266.91.camel@dijkstra.wildebeest.org> Message-ID: <1222940970.3265.16.camel@dijkstra.wildebeest.org> Hi, On Thu, 2008-09-25 at 20:56 +0200, Mark Wielaard wrote: > I believe this version is pretty clean. And it should be simple to > verify that it works correctly now since all unnecessary code is just > thrown out. Of course I threw all the crypto and security tests at it > that I could find and all happily passed. I did alter the TestUtil class > so that it always checks all algorithms and full keys. > > It would be nice to push this in OpenJDK proper so there is less > divergence and so the GPLed version always has full crypto support > enabled. > > If you still want to support a ClosedJDK with restricted crypto support > then all you have to do it provide your own Cipher and JceSecurity > class, plus any of the now removed auxiliary classes JarVerfifier and > JceSecurityManager. Everything else can be the same between the free > openjdk and proprietary closedjdk. > > Please let me know if you would need any help integrating this. > I did already push it into icedtea6. I didn't see any replies to this yet. Please do let me know if I can help in any way to get this pushed forward faster. Thanks, Mark From bugzilla-daemon at icedtea.classpath.org Thu Oct 2 07:41:40 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Oct 2008 14:41:40 +0000 Subject: [Bug 199] New: Crash during a build of xerces-j2 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=199 Summary: Crash during a build of xerces-j2 Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: mvyskocil at suse.cz The openjdk (b09) often crashs during a build of xerces-j2 (from jpackage 5.0). The build was done in a chrooted environment with empty /proc. $ ant -Dbuild.compiler=modern clean jars /usr/bin/build-classpath: error: Could not find jaxp_parser_impl Java extension for this JVM /usr/bin/build-classpath: error: Some specified jars were not found OpenJDK 64-Bit Server VM warning: Can't detect initial thread stack location - find_vma failed [snip] prepare-src: [copy] Copying 1 file to /usr/src/packages/BUILD/xerces-2_7_1/build/classes/META-INF/services Exception in thread "Reference Handler" java.lang.IllegalMonitorStateException at java.lang.Object.notifyAll(Native Method) at java.lang.ref.ReferenceQueue.enqueue(ReferenceQueue.java:68) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:146) [copy] Copying 682 files to /usr/src/packages/BUILD/xerces-2_7_1/build/src # # An unexpected error has been detected by Java Runtime Environment: # # Internal Error (nmethod.cpp:1740), pid=25811, tid=1105303888 # Error: guarantee(nm->_lock_count >= 0,"unmatched nmethod lock/unlock") # # Java VM: OpenJDK 64-Bit Server VM (1.6.0-b09 mixed mode linux-amd64) # An error report file with more information is saved as: # /usr/src/packages/BUILD/xerces-2_7_1/hs_err_pid25811.log # # If you would like to submit a bug report, please visit: # http://icedtea.classpath.org/bugzilla # Ne?sp??n? ukon?en (SIGABRT) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Oct 2 07:42:57 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Oct 2008 14:42:57 +0000 Subject: [Bug 199] Crash during a build of xerces-j2 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=199 ------- Comment #1 from mvyskocil at suse.cz 2008-10-02 14:42 ------- Created an attachment (id=103) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=103&action=view) A crashlog from compiler -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From langel at redhat.com Thu Oct 2 07:56:21 2008 From: langel at redhat.com (Lillian Angel) Date: Thu, 02 Oct 2008 14:56:21 +0000 Subject: changeset in /hg/icedtea6: 2008-10-02 Lillian Angel changeset 09dcedbe63a8 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=09dcedbe63a8 description: 2008-10-02 Lillian Angel * HACKING: Updated with new visualvm patch. * INSTALL: Updated to include netbeans in requirements. * Makefile.am: Updated to build and install visualvm with system-installed NetBeans 6.1 (currently in Fedora rawhide). Added new visualvm patch to the list and removed need for NetBeans platform sources. * README: Updated visualvm notes. * acinclude.m4: Updated to find netbeans and removed WITH_NETBEANS_PLATFORM_SRC_ZIP check. * configure.ac: Updated to check for netbeans and added --with-netbeans-home option. * patches/icedtea-visualvm.patch: Visualvm patch. diffstat: 8 files changed, 178 insertions(+), 68 deletions(-) ChangeLog | 15 ++++ HACKING | 1 INSTALL | 1 Makefile.am | 127 +++++++++++++++++++++++++--------------- README | 11 +-- acinclude.m4 | 42 +++++++------ configure.ac | 23 ++++++- patches/icedtea-visualvm.patch | 26 ++++++++ diffs (495 lines): diff -r f4981f8a1720 -r 09dcedbe63a8 ChangeLog --- a/ChangeLog Wed Oct 01 05:52:01 2008 -0400 +++ b/ChangeLog Thu Oct 02 10:55:55 2008 -0400 @@ -1,3 +1,18 @@ 2008-10-01 Gary Benson + + * HACKING: Updated with new visualvm patch. + * INSTALL: Updated to include netbeans in requirements. + * Makefile.am: Updated to build and install visualvm with + system-installed NetBeans 6.1 (currently in Fedora rawhide). Added new + visualvm patch to the list and removed need for NetBeans platform + sources. + * README: Updated visualvm notes. + * acinclude.m4: Updated to find netbeans and removed + WITH_NETBEANS_PLATFORM_SRC_ZIP check. + * configure.ac: Updated to check for netbeans and added + --with-netbeans-home option. + * patches/icedtea-visualvm.patch: Visualvm patch. + 2008-10-01 Gary Benson * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a diff -r f4981f8a1720 -r 09dcedbe63a8 HACKING --- a/HACKING Wed Oct 01 05:52:01 2008 -0400 +++ b/HACKING Thu Oct 02 10:55:55 2008 -0400 @@ -53,6 +53,7 @@ The following patches are currently appl * icedtea-tools.patch: Remove DebugHelperHelper and add sources in make/java/awt/Makefile to fix build of jvmti. * icedtea-use-system-tzdata.patch: Use timezone data from the system (PR70/S6593486). * icedtea-version.patch: Replace name and bug URL with IcedTea versions. +* icedtea-visualvm.patch: Patches sources to build with platform8 and profiler3 instead of platform7 and profiler2. * icedtea-webservices.patch: Add applet support. * icedtea-zero-build.patch: Add support for the zero assembler build. * icedtea-shark-build.patch: Add support for building the Shark JIT. diff -r f4981f8a1720 -r 09dcedbe63a8 INSTALL --- a/INSTALL Wed Oct 01 05:52:01 2008 -0400 +++ b/INSTALL Thu Oct 02 10:55:55 2008 -0400 @@ -30,6 +30,7 @@ libjpeg-devel = 6b libjpeg-devel = 6b zlib-devel rhino +netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm For building the zero-assembler port (see below), you will need libffi. diff -r f4981f8a1720 -r 09dcedbe63a8 Makefile.am --- a/Makefile.am Wed Oct 01 05:52:01 2008 -0400 +++ b/Makefile.am Thu Oct 02 10:55:55 2008 -0400 @@ -5,7 +5,7 @@ CACAO_VERSION = 0.99.3 CACAO_VERSION = 0.99.3 CACAO_MD5SUM = 80de3ad344c1a20c086ec5f1390bd1b8 -NETBEANS_PLATFORM_MD5SUM = 77c79b3a7d3dbe6a8858639f8d564a38 +NETBEANS_BASIC_CLUSTER = a7ea855f475fa3a982f094a45c155ab4 NETBEANS_PROFILER_MD5SUM = ff8e8abc42df6c6749e6b02bcf7bb0a5 VISUALVM_MD5SUM = 4b55bc623418818793392bb233da2927 @@ -19,8 +19,8 @@ ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = ICEDTEAPLUGIN_JAR = +LIVECONNECT = PLUGIN_PATCH = patches/icedtea-plugin.patch -LIVECONNECT = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -28,6 +28,12 @@ GCJWEBPLUGIN_CLEAN = GCJWEBPLUGIN_CLEAN = GCJWEBPLUGIN_TARGET = endif +endif + +if WITH_VISUALVM +VISUALVM_PATCH = patches/icedtea-visualvm.patch +else +VISUALVM_PATCH = endif # Top-Level Targets @@ -48,19 +54,15 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so - rm -rf IcedTeaPlugin.jar + rm -f IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so endif endif -if WITH_VISUALVM + rm -rf cacao rm -rf visualvm rm -rf netbeans -endif -if WITH_CACAO - rm -rf cacao -endif install: @@ -83,7 +85,7 @@ EXTRA_DIST = rt generated $(ICEDTEA_PATC overlays extra jconsole.desktop policytool.desktop \ test/jtreg patches/icedtea-plugin.patch \ patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING + HACKING patches/icedtea-visualvm.patch # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. @@ -280,13 +282,8 @@ else CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.gz endif -NETBEANS_PLATFORM_URL = http://download.netbeans.org/netbeans/6.0/final/zip/ - -if USE_ALT_NETBEANS_PLATFORM_SRC_ZIP - NETBEANS_PLATFORM_SRC_ZIP = $(ALT_NETBEANS_PLATFORM_SRC_ZIP) -else - NETBEANS_PLATFORM_SRC_ZIP = netbeans-6.0.1-200801291616-platform-src.zip -endif +NETBEANS_BASIC_CLUSTER_URL = http://nbi.netbeans.org/files/documents/210/2056/ +NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip NETBEANS_PROFILER_URL = http://icedtea.classpath.org/visualvm/ @@ -334,19 +331,17 @@ endif endif endif if WITH_VISUALVM -if USE_ALT_NETBEANS_PLATFORM_SRC_ZIP -else - if ! echo "$(NETBEANS_PLATFORM_MD5SUM) $(NETBEANS_PLATFORM_SRC_ZIP)" \ + if ! echo "$(NETBEANS_BASIC_CLUSTER_MD5SUM) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP)" \ | $(MD5SUM) --check ; \ then \ - if [ $(NETBEANS_PLATFORM_SRC_ZIP) ] ; \ + if [ $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ] ; \ then \ - mv $(NETBEANS_PLATFORM_SRC_ZIP) $(NETBEANS_PLATFORM_SRC_ZIP).old ; \ + mv $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP).old ; \ fi ; \ - $(WGET) $(NETBEANS_PLATFORM_URL)$(NETBEANS_PLATFORM_SRC_ZIP) \ - -O $(NETBEANS_PLATFORM_SRC_ZIP) ; \ - fi -endif + $(WGET) $(NETBEANS_BASIC_CLUSTER_URL)$(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ + -O $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ; \ + fi + if USE_ALT_NETBEANS_PROFILER_SRC_ZIP else if ! echo "$(NETBEANS_PROFILER_MD5SUM) $(NETBEANS_PROFILER_SRC_ZIP)" \ @@ -384,8 +379,8 @@ endif endif if WITH_VISUALVM rm -f $(VISUALVM_SRC_ZIP) - rm -f $(NETBEANS_PLATFORM_SRC_ZIP) rm -f $(NETBEANS_PROFILER_SRC_ZIP) + rm -rf $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) endif # Link ports sources into tree @@ -510,7 +505,8 @@ ICEDTEA_PATCHES = \ $(GCC_PATCH) \ patches/icedtea-arch.patch \ patches/icedtea-lc_ctype.patch \ - patches/icedtea-messageutils.patch + patches/icedtea-messageutils.patch \ + $(VISUALVM_PATCH) if WITH_RHINO ICEDTEA_PATCHES += \ @@ -550,8 +546,17 @@ if WITH_VISUALVM if ! test -d netbeans ; \ then \ mkdir netbeans ; \ - $(UNZIP) -q $(NETBEANS_PLATFORM_SRC_ZIP) -d netbeans ; \ $(TAR) xf $(NETBEANS_PROFILER_SRC_ZIP) -C netbeans ; \ + $(UNZIP) -q $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) nbbuild/* -d netbeans/ ; \ + mv netbeans/profiler/ netbeans/profiler.cvs/ ; \ + $(UNZIP) -q $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ + api.java/* api.progress/* apisupport.harness/* editor.mimelookup/* \ + o.jdesktop.layout/* openide.actions/* openide.awt/* \ + openide.dialogs/* openide.execution/* openide.explorer/* \ + openide.filesystems/* openide.io/* openide.loaders/* \ + openide.modules/* openide.nodes/* openide.text/* openide.util/* \ + openide.windows/* options.api/* projectapi/* queries/* java.platform/* \ + -d netbeans/ ; \ fi endif if [ ! -e $(abs_top_builddir)/generated ]; then \ @@ -595,6 +600,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo WARNING make clean-patch before retrying a fix ; \ false; \ fi + if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ endif @@ -936,6 +942,7 @@ endif endif if WITH_VISUALVM mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ sed "s/APPNAME=\`basename.*\`/APPNAME=visualvm/" \ visualvm/visualvm/launcher/visualvm >> \ $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/jvisualvm ; \ @@ -944,18 +951,18 @@ if WITH_VISUALVM $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ echo visualvm >> \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ - echo profiler2 >> \ + echo profiler3 >> \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ - cp -r visualvm/visualvm/build/cluster \ + cp -r visualvm/visualvm/build/cluster/* \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ - cp -r netbeans/nbbuild/netbeans/platform7 \ + cp -r netbeans/nbbuild/netbeans/platform8 \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm ; \ - cp -r netbeans/nbbuild/netbeans/profiler2 \ + cp -r netbeans/nbbuild/netbeans/profiler3 \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm endif cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/about.jnlp \ extra-lib/about.jar \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib + $(BUILD_OUTPUT_DIR)/j2re-image/lib ; \ cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/about.jnlp \ extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib @@ -989,9 +996,29 @@ if ENABLE_PLUGIN $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) endif endif +if WITH_VISUALVM + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ + sed "s/APPNAME=\`basename.*\`/APPNAME=visualvm/" \ + visualvm/visualvm/launcher/visualvm >> \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/jvisualvm ; \ + chmod a+x $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/jvisualvm ; \ + cp visualvm/visualvm/launcher/visualvm.conf \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ + echo visualvm >> \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ + echo profiler3 >> \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ + cp -r visualvm/visualvm/build/cluster/* \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ + cp -r netbeans/nbbuild/netbeans/platform8 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm ; \ + cp -r netbeans/nbbuild/netbeans/profiler3 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm +endif cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/default.jnlp \ extra-lib/about.jar \ - $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib ; \ cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/default.jnlp \ extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib @@ -1247,10 +1274,10 @@ bootstrap/jdk1.7.0/jre/lib/rt-closed.jar if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ $(JAR) cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ fi if test -d bootstrap/ecj/jre/lib ; \ then \ @@ -1326,7 +1353,6 @@ IcedTeaPlugin.o: IcedTeaPlugin.cc $(GTK_CFLAGS) \ $(XULRUNNER_CFLAGS) \ -fPIC -c -o $@ $< - IcedTeaPlugin.so: IcedTeaPlugin.o $(CXX) $(CXXFLAGS) \ $< \ @@ -1427,7 +1453,8 @@ stamps/visualvm.stamp: $(BOOTSTRAP_DIREC stamps/extract.stamp stamps/nbplatform.stamp if WITH_VISUALVM cd visualvm/visualvm ; \ - ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans netbeans ; \ + ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans . ; \ + rm netbeans/profiler3 && mv netbeans/extra netbeans/profiler3 ; \ JAVA_HOME=$(ICEDTEA_HOME) $(ANT) build endif mkdir -p stamps @@ -1442,10 +1469,18 @@ stamps/nbplatform.stamp: $(BOOTSTRAP_DIR stamps/nbplatform.stamp: $(BOOTSTRAP_DIRECTORY_STAMP) stamps/extract.stamp \ stamps/download.stamp if WITH_VISUALVM - cd netbeans/nbbuild && JAVA_HOME=$(ICEDTEA_HOME) $(ANT) \ - -Dpermit.jdk6.builds=true build-platform ; \ - cd ../profiler && find . -iname '*.so' | xargs rm ; \ - cd libs/jfluid/native/build ; \ + cd netbeans ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/libs/jfluid/ lib.profiler ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/libs/common/ lib.profiler.common ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/libs/jfluid-ui/ lib.profiler.ui ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/modules/nbmodule/ profiler.nbmodule ; \ + mkdir -p ./nbbuild/netbeans/ ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/platform8/ ./nbbuild/netbeans/platform8 ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/apisupport1/ ./nbbuild/netbeans/apisupport1 ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/harness/ ./nbbuild/netbeans/harness ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/java2/ ./nbbuild/netbeans/java2 ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/ide9/ ./nbbuild/netbeans/ide9 ; \ + cd profiler.cvs/libs/jfluid/native/build ; \ if ! (uname -a | grep x86_64) ; then \ buildscript=./buildnative-linux-15.sh ; \ else \ @@ -1453,13 +1488,15 @@ if WITH_VISUALVM fi ; \ JAVA_HOME_15=$(ICEDTEA_HOME) JAVA_HOME_16=$(ICEDTEA_HOME) \ $$buildscript ; \ - cd ../../../.. ; \ + cd ../../../../.. ; \ + ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans/extra nbbuild/netbeans/profiler3 ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/modules/main/ profiler ; \ for dir in jfluid jfluid-ui common ; do \ JAVA_HOME=$(ICEDTEA_HOME) $(ANT) -Dpermit.jdk6.builds=true \ - -f libs/$$dir/build.xml ; \ + -f profiler.cvs/libs/$$dir/build.xml ; \ done ; \ JAVA_HOME=$(ICEDTEA_HOME) $(ANT) -Dpermit.jdk6.builds=true \ - -f modules/main/build.xml ; + -f profiler.cvs/modules/main/build.xml ; endif mkdir -p stamps touch $@ diff -r f4981f8a1720 -r 09dcedbe63a8 README --- a/README Wed Oct 01 05:52:01 2008 -0400 +++ b/README Thu Oct 02 10:55:55 2008 -0400 @@ -151,10 +151,11 @@ VisualVM ======== Passing --enable-visualvm to configure will build the VisualVM profiling -and troubleshooting tool. NetBeans platform7 and a modified version of -NetBeans profiler2 (visualvm_preview2) are built from source before building -VisualVM. A binary launcher jvisualvm is placed in the +and troubleshooting tool. NetBeans profiler3 (visualvm_preview2) is +built from source before building VisualVM. NetBeans 6.1 must be installed +on the system. A binary launcher jvisualvm is placed in the openjdk/control/build/arch/j2sdk-image/bin directory after the jdk is built. Other useful VisualVM configure options include --with-visualvm-src-zip, ---with-netbeans-platform-src-zip, and --with-netbeans-profiler-src-zip which -can be used to prevent re-downloading of the source zips. +and --with-netbeans-profiler-src-zip which can be used to prevent +re-downloading of the source zips. --with-netbeans-home can be used to specify +where the Netbeans tools are installed (default /usr/share/netbeans). diff -r f4981f8a1720 -r 09dcedbe63a8 acinclude.m4 --- a/acinclude.m4 Wed Oct 01 05:52:01 2008 -0400 +++ b/acinclude.m4 Thu Oct 02 10:55:55 2008 -0400 @@ -456,23 +456,6 @@ AC_DEFUN([WITH_VISUALVM_SRC_ZIP], AC_SUBST(ALT_VISUALVM_SRC_ZIP) ]) -AC_DEFUN([WITH_NETBEANS_PLATFORM_SRC_ZIP], -[ - AC_MSG_CHECKING(netbeans platform source zip) - AC_ARG_WITH([netbeans-platform-src-zip], - [AS_HELP_STRING(--with-netbeans-platform-src-zip, specify the location of the netbeans platform source zip)], - [ - ALT_NETBEANS_PLATFORM_SRC_ZIP=${withval} - AM_CONDITIONAL(USE_ALT_NETBEANS_PLATFORM_SRC_ZIP, test x = x) - ], - [ - ALT_NETBEANS_PLATFORM_SRC_ZIP="not specified" - AM_CONDITIONAL(USE_ALT_NETBEANS_PLATFORM_SRC_ZIP, test x != x) - ]) - AC_MSG_RESULT(${ALT_NETBEANS_PLATFORM_SRC_ZIP}) - AC_SUBST(ALT_NETBEANS_PLATFORM_SRC_ZIP) -]) - AC_DEFUN([WITH_NETBEANS_PROFILER_SRC_ZIP], [ AC_MSG_CHECKING(netbeans profiler source zip) @@ -613,6 +596,31 @@ AC_DEFUN([FIND_XERCES2_JAR], AC_MSG_ERROR("A xerces2 jar was not found.") fi AC_SUBST(XERCES2_JAR) +]) + +AC_DEFUN([FIND_NETBEANS], +[ + AC_ARG_WITH([netbeans], + [AS_HELP_STRING(--with-netbeans,specify location of netbeans)], + [ + if test -f "${withval}"; then + AC_MSG_CHECKING(netbeans) + NETBEANS="${withval}" + AC_MSG_RESULT(${withval}) + else + AC_PATH_PROG(NETBEANS, "${withval}") + fi + ], + [ + NETBEANS= + ]) + if test -z "${NETBEANS}"; then + AC_PATH_PROG(NETBEANS, "netbeans") + fi + if test -z "${NETBEANS}"; then + AC_MSG_ERROR("NetBeans was not found.") + fi + AC_SUBST(NETBEANS) ]) AC_DEFUN([FIND_RHINO_JAR], diff -r f4981f8a1720 -r 09dcedbe63a8 configure.ac --- a/configure.ac Wed Oct 01 05:52:01 2008 -0400 +++ b/configure.ac Thu Oct 02 10:55:55 2008 -0400 @@ -82,6 +82,22 @@ AC_ARG_WITH([icedtea-home], ]) AC_SUBST(SYSTEM_ICEDTEA_DIR) +AC_ARG_WITH([netbeans-home], + [AS_HELP_STRING([--with-netbeans-home], + [NetBeans home directory (default is /usr/share/netbeans)])], + [ + if test "x${withval}" = x + then + SYSTEM_NETBEANS_DIR=/usr/share/netbeans + else + SYSTEM_NETBEANS_DIR=${withval} + fi + ], + [ + SYSTEM_NETBEANS_DIR=/usr/share/netbeans + ]) +AC_SUBST(SYSTEM_NETBEANS_DIR) + AC_ARG_WITH([ant-home], [AS_HELP_STRING([--with-ant-home], [Ant home directory (default is /usr/share/ant)])], @@ -121,6 +137,11 @@ AC_ARG_ENABLE([visualvm], [Enable compilation of visualvm.])], [enable_visualvm="yes"], [enable_visualvm="no"]) AM_CONDITIONAL(WITH_VISUALVM, test "x${enable_visualvm}" = "xyes") + +if test "x${enable_visualvm}" = "xyes" +then + FIND_NETBEANS +fi AC_ARG_WITH([icedtea], [AS_HELP_STRING([--with-icedtea], @@ -214,10 +235,10 @@ fi fi fi FIND_RHINO_JAR +FIND_NETBEANS WITH_OPENJDK_SRC_ZIP WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP -WITH_NETBEANS_PLATFORM_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP WITH_ALT_JAR_BINARY AC_CHECK_WITH_CACAO diff -r f4981f8a1720 -r 09dcedbe63a8 patches/icedtea-visualvm.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-visualvm.patch Thu Oct 02 10:55:55 2008 -0400 @@ -0,0 +1,26 @@ +--- oldplatform.properties 2008-09-29 13:52:36.000000000 -0400 ++++ visualvm/visualvm/jvm/nbproject/platform.properties 2008-09-29 13:53:33.000000000 -0400 +@@ -16,8 +16,8 @@ + org.openide.compat,\ + org.openide.util.enumerations + enabled.clusters=\ +- platform7,\ +- profiler2 ++ platform8,\ ++ profiler3 + nbjdk.active=Java_HotSpot_TM__Client_VM_1.6.0-b88-17-release + nbplatform.active=NetBeans_Platform_Dev_(Build_200711261600) + suite.dir=${basedir} +--- oldplatform.properties1 2008-09-29 13:52:46.000000000 -0400 ++++ visualvm/visualvm/nbproject/platform.properties 2008-09-29 13:53:41.000000000 -0400 +@@ -15,8 +15,8 @@ + org.openide.compat,\ + org.openide.util.enumerations + enabled.clusters=\ +- platform7,\ +- profiler2 ++ platform8,\ ++ profiler3 + nbjdk.active=default + nbplatform.active=NetBeans_Platform_6.0.1_(Build_200801291616) + suite.dir=${basedir} From langel at redhat.com Thu Oct 2 07:56:35 2008 From: langel at redhat.com (Lillian Angel) Date: Thu, 02 Oct 2008 10:56:35 -0400 Subject: VisualVM in IcedTea Message-ID: <48E4E123.90403@redhat.com> Hi, Since NetBeans has been pushed into Fedora rawhide, I have updated visualvm in IcedTea to use NetBeans 6.1 to build. Instead of downloading NetBeans and building it during compile time, the IcedTea build now only downloads the profiler tool and the basic NetBeans build cluster to build visualvm. On Fedora: yum --enablerepo=rawhide install netbeans-* VisualVM still is not built by default. To build it, pass --enable-visualvm to configure. You can also use --with-netbeans-home=/path/to/netbeans to specify where NetBeans 6.1 is installed. By default, it is set to /usr/share/netbeans. I have updated all the docs (README, INSTALL, HACKING) to reflect this change. Pending no there are no problems, visualvm will be available in Fedora 10 after the upcoming release. Cheers, Lillian From bugzilla-daemon at icedtea.classpath.org Thu Oct 2 08:57:23 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Oct 2008 15:57:23 +0000 Subject: [Bug 199] Crash during a build of xerces-j2 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=199 ------- Comment #2 from mark at klomp.org 2008-10-02 15:57 ------- This is a pretty old version of icedtea. Could you try upgrading to a never version to see if it still occurs. Also note the following in your crash log: WARNING!! /proc file system not found. Java may be unstable running multithreaded in a chroot environment on Linux when /proc filesystem is not mounted. Could you mount /proc to see if that is the issue? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From langel at redhat.com Thu Oct 2 13:14:14 2008 From: langel at redhat.com (Lillian Angel) Date: Thu, 02 Oct 2008 20:14:14 +0000 Subject: changeset in /hg/icedtea6: Fixed Netbeans check Message-ID: changeset fc63d0674a46 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=fc63d0674a46 description: Fixed Netbeans check diffstat: 1 file changed, 1 deletion(-) configure.ac | 1 - diffs (11 lines): diff -r 09dcedbe63a8 -r fc63d0674a46 configure.ac --- a/configure.ac Thu Oct 02 10:55:55 2008 -0400 +++ b/configure.ac Thu Oct 02 16:14:10 2008 -0400 @@ -235,7 +235,6 @@ fi fi fi FIND_RHINO_JAR -FIND_NETBEANS WITH_OPENJDK_SRC_ZIP WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP From dbhole at redhat.com Thu Oct 2 13:49:35 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 02 Oct 2008 20:49:35 +0000 Subject: changeset in /hg/icedtea6: Merging local with remote Message-ID: changeset 880c7189324c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=880c7189324c description: Merging local with remote diffstat: 29 files changed, 2445 insertions(+), 2280 deletions(-) .hgignore | 1 IcedTeaPlugin.cc | 214 +- Makefile.am | 43 plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 -------- plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java | 193 - plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 - plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 --- plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java | 172 - plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 6 plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java | 76 plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java | 75 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 1021 ++++++++++ plugin/icedtea/sun/applet/PluginCallRequestFactory.java | 19 plugin/icedtea/sun/applet/PluginMain.java | 188 + plugin/icedtea/sun/applet/PluginMessageConsumer.java | 67 plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java | 78 plugin/icedtea/sun/applet/PluginObjectStore.java | 121 + plugin/icedtea/sun/applet/PluginStreamHandler.java | 371 +++ plugin/icedtea/sun/applet/RequestQueue.java | 39 plugin/icedtea/sun/applet/TestEnv.java | 172 + plugin/icedtea/sun/applet/VoidPluginCallRequest.java | 68 diffs (truncated from 5129 to 500 lines): diff -r 868547baa028 -r 880c7189324c .hgignore --- a/.hgignore Thu Oct 02 15:34:39 2008 -0400 +++ b/.hgignore Thu Oct 02 15:45:31 2008 -0400 @@ -25,7 +25,6 @@ gcjwebplugin.so gcjwebplugin.so IcedTeaPlugin.o IcedTeaPlugin.so -IcedTeaPlugin.jar extra-source-files.txt rt-source-files.txt hotspot-tools-source-files.txt diff -r 868547baa028 -r 880c7189324c IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 02 15:34:39 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 02 15:45:31 2008 -0400 @@ -244,7 +244,6 @@ static GError* channel_error = NULL; static GError* channel_error = NULL; // Fully-qualified appletviewer executable. static char* appletviewer_executable = NULL; -static char* extra_jars = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -317,8 +316,6 @@ char const* TYPES[10] = { "Object", char context[16]; \ GetCurrentPageAddress(&addr); \ GetCurrentContextAddr(context); \ - printf("Addr: %s , Context: %s\n", addr, context);\ -\ nsCString message ("context "); \ message.AppendInt (0); \ message += " reference "; \ @@ -428,12 +425,14 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_REFERENCE(reference, cast, name) \ nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ - if (factory->result_map[reference]->returnIdentifier == 0) \ + if (factory->result_map[reference]->returnIdentifier == 0 || \ + factory->result_map[reference]->errorOccured == PR_TRUE) \ { \ *name = NULL; \ } else { \ @@ -449,25 +448,33 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + { \ + *id = NULL; \ + } else \ + { \ *id = reinterpret_cast \ (new JNIID (factory->result_map[reference]->returnIdentifier, signature)); \ printf ("RECEIVE_ID: %s result: %x = %d, %s\n", \ __func__, *id, factory->result_map[reference]->returnIdentifier, \ - signature); + signature); \ + } #define MESSAGE_RECEIVE_VALUE(reference, ctype, result) \ nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = ParseValue (type, factory->result_map[reference]->returnValue); + *result = ParseValue (type, factory->result_map[reference]->returnValue); // \ // char* valueString = ValueString (type, *result); \ // printf ("RECEIVE_VALUE: %s result: %x = %s\n", \ @@ -479,13 +486,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ - PLUGIN_CHECK ("parse integer", conversionResult); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ + PLUGIN_CHECK ("parse integer", conversionResult); \ + } // \ // printf ("RECEIVE_SIZE: %s result: %x = %d\n", \ // __func__, result, *result); @@ -495,13 +508,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ - *result = reinterpret_cast \ - (strdup (factory->result_map[reference]->returnValue.get ())); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + {\ + printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ + *result = reinterpret_cast \ + (strdup (factory->result_map[reference]->returnValue.get ()));\ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ // __func__, result, *result); @@ -511,16 +530,22 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ - while (factory->result_map[reference]->returnValueUCS.IsEmpty()) \ + while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - int length = factory->result_map[reference]->returnValueUCS.Length (); \ - jchar* newstring = static_cast (PR_Malloc (length)); \ - memset (newstring, 0, length); \ - memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ - std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ - *result = static_cast (newstring); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + int length = factory->result_map[reference]->returnValueUCS.Length (); \ + jchar* newstring = static_cast (PR_Malloc (length)); \ + memset (newstring, 0, length); \ + memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ + std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ + *result = static_cast (newstring); \ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ @@ -530,11 +555,15 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = factory->result_map[reference]->returnIdentifier; + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + *result = factory->result_map[reference]->returnIdentifier; // res = factory->current->ProcessNextEvent (PR_TRUE, \ // &processed); \ // PLUGIN_CHECK_RETURN (__func__, res); \ @@ -1225,9 +1254,57 @@ template NS_IMETHODIMP template NS_IMETHODIMP IcedTeaRunnableMethod::Run () { - (object->*method) (); - return NS_OK; -} + (object->*method) (); + return NS_OK; +} + + +// FIXME: Special class just for dispatching GetURL to another +// thread.. seriously, a class just for that? there has to be a better way! + +class GetURLRunnable : public nsIRunnable +{ +public: + NS_DECL_ISUPPORTS + NS_DECL_NSIRUNNABLE + + GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target); + + ~GetURLRunnable (); + +private: + nsIPluginInstancePeer* peer; + const char* url; + const char* target; +}; + +NS_IMPL_ISUPPORTS1 (GetURLRunnable, nsIRunnable) + +GetURLRunnable::GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target) +: peer(peer), + url(url), + target(target) +{ + NS_ADDREF (peer); +} + +GetURLRunnable::~GetURLRunnable () +{ + NS_RELEASE(peer); +} + +NS_IMETHODIMP +GetURLRunnable::Run () +{ + nsCOMPtr ownerGetter = + do_QueryInterface (peer); + nsIPluginInstanceOwner* owner = nsnull; + ownerGetter->GetOwner (&owner); + + return owner->GetURL ((const char*) url, (const char*) target, + nsnull, 0, nsnull, 0); +} + NS_IMPL_ISUPPORTS6 (IcedTeaPluginFactory, nsIFactory, nsIPlugin, nsIJVMManager, nsIJVMPrefsWindow, nsIJVMPlugin, nsIInputStreamCallback) @@ -2433,6 +2510,11 @@ IcedTeaPluginFactory::OnInputStreamReady return NS_OK; } +#include +#include +#include +#include + void IcedTeaPluginFactory::HandleMessage (nsCString const& message) { @@ -2477,8 +2559,11 @@ IcedTeaPluginFactory::HandleMessage (nsC { IcedTeaPluginInstance* instance = NULL; instances.Get (identifier, &instance); -// if (instance != 0) -// instance->peer->ShowStatus (nsCString (rest).get ()); + if (instance != 0) + { + instance->peer->ShowStatus (nsCString (rest).get ()); + + } } else if (command == "initialized") { @@ -2504,9 +2589,10 @@ IcedTeaPluginFactory::HandleMessage (nsC nsIPluginInstanceOwner* owner = nsnull; ownerGetter->GetOwner (&owner); printf("Calling GetURL with %s and %s\n", nsCString (url).get (), nsCString (target).get ()); - owner->GetURL (nsCString (url).get (), - nsCString (target).get (), - nsnull, 0, nsnull, 0); + nsCOMPtr event = new GetURLRunnable (instance->peer, + nsCString (url).get (), + nsCString (target).get ()); + current->Dispatch(event, nsIEventTarget::DISPATCH_NORMAL); } } else if (command == "GetWindow") @@ -2841,20 +2927,47 @@ void IcedTeaPluginFactory::ProcessMessag void IcedTeaPluginFactory::ProcessMessage () { while (true) { - printf("Process thread sleeping...\n"); - PR_Sleep(PR_INTERVAL_NO_TIMEOUT); + PR_Sleep(1000); + + // If there was an interrupt, clear it PR_ClearInterrupt(); - - printf("Process thread interrupted...\n"); - // Was I interrupted for shutting down? if (shutting_down == PR_TRUE) { break; } - ConsumeMsgFromJVM(); + // Nope. Ok, is there work to do? + if (!jvmMsgQueue.empty()) + ConsumeMsgFromJVM(); + + // All done. Now let's process pending events + + // Were there new events dispatched? + + PRBool this_has_pending, curr_has_pending, processed = PR_FALSE; + PRBool continue_processing = PR_TRUE; + + while (continue_processing == PR_TRUE) { + + processThread->HasPendingEvents(&this_has_pending); + if (this_has_pending == PR_TRUE) { + processThread->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (this) ... %d\n", processed); + } + + current->HasPendingEvents(&curr_has_pending); + if (curr_has_pending == PR_TRUE) { + current->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (current) ... %d\n", processed); + } + + if (this_has_pending != PR_TRUE && curr_has_pending != PR_TRUE) { + continue_processing = PR_FALSE; + } + } } + } void IcedTeaPluginFactory::ConsumeMsgFromJVM () @@ -2872,9 +2985,7 @@ void IcedTeaPluginFactory::ConsumeMsgFro HandleMessage (message); printf("Processing complete\n"); } - -} - +} /** * @@ -3189,9 +3300,9 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_CHECK_RETURN ("init process", result); // FIXME: hard-coded port number. - char const* args[8] = { "-classpath", extra_jars, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "org.classpath.icedtea.plugin.PluginMain", "50007" }; + char const* args[5] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain", "50007" }; // char const* args[2] = { "sun.applet.PluginMain", "50007" }; - result = applet_viewer_process->Run (PR_FALSE, args, 8, nsnull); + result = applet_viewer_process->Run (PR_FALSE, args, 5, nsnull); PLUGIN_CHECK_RETURN ("run process", result); // start processing thread @@ -3812,6 +3923,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) { + return NS_OK; PLUGIN_TRACE_JNIENV (); // Get JSContext from stack. @@ -3835,7 +3947,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) { - + return NS_OK; PLUGIN_TRACE_JNIENV (); nsIPrincipal *prin; @@ -4922,27 +5034,15 @@ NSGetFactory (nsISupports* aServMgr, nsC //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - extrajars += jar; - extrajars += nsCString("/IcedTeaPlugin.jar"); - extrajars += ":"; - extrajars += jar; - extrajars += nsCString("/rt.jar"); //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - extra_jars = strdup (extrajars.get ()); //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); - return NS_ERROR_OUT_OF_MEMORY; - } - - if (!extra_jars) - { - PLUGIN_ERROR ("Failed to create plugin jar name."); return NS_ERROR_OUT_OF_MEMORY; } diff -r 868547baa028 -r 880c7189324c Makefile.am --- a/Makefile.am Thu Oct 02 15:34:39 2008 -0400 +++ b/Makefile.am Thu Oct 02 15:45:31 2008 -0400 @@ -12,15 +12,13 @@ if ENABLE_LIVECONNECT if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so -ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch -LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ +LIVECONNECT_DIR = -C lib/rt netscape else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = -ICEDTEAPLUGIN_JAR = -LIVECONNECT = PLUGIN_PATCH = patches/icedtea-plugin.patch +LIVECONNECT_DIR = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -52,9 +50,9 @@ distclean-local: clean-copy clean-jtreg rm -rf openjdk-ecj rm -rf openjdk rm -rf hotspot-tools + rm -rf rt/netscape if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so - rm -f IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so @@ -600,9 +598,9 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo WARNING make clean-patch before retrying a fix ; \ false; \ fi - if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + cp -a plugin/icedtea/netscape rt/ endif clean-patch: @@ -622,6 +620,7 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi + rm -rf rt/netscape for file in plugin/icedtea/sun/applet/*java ; \ do \ rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ @@ -917,7 +916,7 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ - $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) $(ICEDTEAPLUGIN_JAR) \ + $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp $(MAKE) \ $(ICEDTEA_ENV) \ @@ -928,10 +927,6 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib/ else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -973,7 +968,7 @@ stamps/icedtea-debug.stamp: stamps/boots stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ - $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) $(ICEDTEAPLUGIN_JAR) \ + $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ extra-lib/about.jar stamps/cacao.stamp $(MAKE) \ $(ICEDTEA_ENV) \ @@ -984,10 +979,6 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -1239,7 +1230,7 @@ bootstrap/jdk1.7.0/jre/lib/tools.jar: st # rt-closed.jar class files. rt-source-files.txt: stamps/extract.stamp stamps/copy-source-files.stamp - find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT) -name '*.java' \ From dbhole at redhat.com Thu Oct 2 13:49:34 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 02 Oct 2008 20:49:34 +0000 Subject: changeset in /hg/icedtea6: More refactoring -- the last big one ... Message-ID: changeset 358cb21c4730 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=358cb21c4730 description: More refactoring -- the last big one in the forseeable future. Implemented proper sandbox for liveconnect calls. Added error detection in the plugin, so it doesn't loop forever if Java side encounters an error. diffstat: 30 files changed, 2483 insertions(+), 2274 deletions(-) .hgignore | 1 ChangeLog | 44 IcedTeaPlugin.cc | 214 +- Makefile.am | 31 plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 -------- plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java | 193 - plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 - plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 --- plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java | 172 - plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 6 plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java | 76 plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java | 75 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 1021 ++++++++++ plugin/icedtea/sun/applet/PluginCallRequestFactory.java | 19 plugin/icedtea/sun/applet/PluginMain.java | 188 + plugin/icedtea/sun/applet/PluginMessageConsumer.java | 67 plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java | 78 plugin/icedtea/sun/applet/PluginObjectStore.java | 121 + plugin/icedtea/sun/applet/PluginStreamHandler.java | 371 +++ plugin/icedtea/sun/applet/RequestQueue.java | 39 plugin/icedtea/sun/applet/TestEnv.java | 172 + plugin/icedtea/sun/applet/VoidPluginCallRequest.java | 68 diffs (truncated from 5148 to 500 lines): diff -r f4981f8a1720 -r 358cb21c4730 .hgignore --- a/.hgignore Wed Oct 01 05:52:01 2008 -0400 +++ b/.hgignore Wed Oct 01 16:40:56 2008 -0400 @@ -25,7 +25,6 @@ gcjwebplugin.so gcjwebplugin.so IcedTeaPlugin.o IcedTeaPlugin.so -IcedTeaPlugin.jar extra-source-files.txt rt-source-files.txt hotspot-tools-source-files.txt diff -r f4981f8a1720 -r 358cb21c4730 ChangeLog --- a/ChangeLog Wed Oct 01 05:52:01 2008 -0400 +++ b/ChangeLog Wed Oct 01 16:40:56 2008 -0400 @@ -1,3 +1,47 @@ 2008-10-01 Gary Benson + * .hgignore: Removed IcedTeaPlugin.jar + * IcedTeaPlugin.cc: Updated classpath when launching Java. added checks to + detect error on Java side. + * Makefile.am: Updated to fit new refactored files. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: New file, + moved out of org/classpath/icedtea/plugin/, as a result of refactoring. + * plugin/icedtea/sun/applet/PluginCallRequestFactory.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Same. + * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. + * plugin/icedtea/sun/applet/PluginMain.java: Same. + * plugin/icedtea/sun/applet/PluginMessageConsumer.java: Same. + * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java: Same. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/RequestQueue.java: Same. + * plugin/icedtea/sun/applet/TestEnv.java: Same. + * plugin/icedtea/sun/applet/VoidPluginCallRequest.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java: + Removed, as a result of refactoring. + * plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java: + Same. + *plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java: + Same. + * + plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java: + Same. + * + plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java: + Same. + * plugin/icedtea/sun/applet/AppletSecurityContext.java: Same. + 2008-10-01 Gary Benson * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a diff -r f4981f8a1720 -r 358cb21c4730 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Wed Oct 01 05:52:01 2008 -0400 +++ b/IcedTeaPlugin.cc Wed Oct 01 16:40:56 2008 -0400 @@ -244,7 +244,6 @@ static GError* channel_error = NULL; static GError* channel_error = NULL; // Fully-qualified appletviewer executable. static char* appletviewer_executable = NULL; -static char* extra_jars = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -317,8 +316,6 @@ char const* TYPES[10] = { "Object", char context[16]; \ GetCurrentPageAddress(&addr); \ GetCurrentContextAddr(context); \ - printf("Addr: %s , Context: %s\n", addr, context);\ -\ nsCString message ("context "); \ message.AppendInt (0); \ message += " reference "; \ @@ -428,12 +425,14 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_REFERENCE(reference, cast, name) \ nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ - if (factory->result_map[reference]->returnIdentifier == 0) \ + if (factory->result_map[reference]->returnIdentifier == 0 || \ + factory->result_map[reference]->errorOccured == PR_TRUE) \ { \ *name = NULL; \ } else { \ @@ -449,25 +448,33 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + { \ + *id = NULL; \ + } else \ + { \ *id = reinterpret_cast \ (new JNIID (factory->result_map[reference]->returnIdentifier, signature)); \ printf ("RECEIVE_ID: %s result: %x = %d, %s\n", \ __func__, *id, factory->result_map[reference]->returnIdentifier, \ - signature); + signature); \ + } #define MESSAGE_RECEIVE_VALUE(reference, ctype, result) \ nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = ParseValue (type, factory->result_map[reference]->returnValue); + *result = ParseValue (type, factory->result_map[reference]->returnValue); // \ // char* valueString = ValueString (type, *result); \ // printf ("RECEIVE_VALUE: %s result: %x = %s\n", \ @@ -479,13 +486,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ - PLUGIN_CHECK ("parse integer", conversionResult); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ + PLUGIN_CHECK ("parse integer", conversionResult); \ + } // \ // printf ("RECEIVE_SIZE: %s result: %x = %d\n", \ // __func__, result, *result); @@ -495,13 +508,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ - *result = reinterpret_cast \ - (strdup (factory->result_map[reference]->returnValue.get ())); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + {\ + printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ + *result = reinterpret_cast \ + (strdup (factory->result_map[reference]->returnValue.get ()));\ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ // __func__, result, *result); @@ -511,16 +530,22 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ - while (factory->result_map[reference]->returnValueUCS.IsEmpty()) \ + while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - int length = factory->result_map[reference]->returnValueUCS.Length (); \ - jchar* newstring = static_cast (PR_Malloc (length)); \ - memset (newstring, 0, length); \ - memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ - std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ - *result = static_cast (newstring); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + int length = factory->result_map[reference]->returnValueUCS.Length (); \ + jchar* newstring = static_cast (PR_Malloc (length)); \ + memset (newstring, 0, length); \ + memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ + std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ + *result = static_cast (newstring); \ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ @@ -530,11 +555,15 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = factory->result_map[reference]->returnIdentifier; + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + *result = factory->result_map[reference]->returnIdentifier; // res = factory->current->ProcessNextEvent (PR_TRUE, \ // &processed); \ // PLUGIN_CHECK_RETURN (__func__, res); \ @@ -1225,9 +1254,57 @@ template NS_IMETHODIMP template NS_IMETHODIMP IcedTeaRunnableMethod::Run () { - (object->*method) (); - return NS_OK; -} + (object->*method) (); + return NS_OK; +} + + +// FIXME: Special class just for dispatching GetURL to another +// thread.. seriously, a class just for that? there has to be a better way! + +class GetURLRunnable : public nsIRunnable +{ +public: + NS_DECL_ISUPPORTS + NS_DECL_NSIRUNNABLE + + GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target); + + ~GetURLRunnable (); + +private: + nsIPluginInstancePeer* peer; + const char* url; + const char* target; +}; + +NS_IMPL_ISUPPORTS1 (GetURLRunnable, nsIRunnable) + +GetURLRunnable::GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target) +: peer(peer), + url(url), + target(target) +{ + NS_ADDREF (peer); +} + +GetURLRunnable::~GetURLRunnable () +{ + NS_RELEASE(peer); +} + +NS_IMETHODIMP +GetURLRunnable::Run () +{ + nsCOMPtr ownerGetter = + do_QueryInterface (peer); + nsIPluginInstanceOwner* owner = nsnull; + ownerGetter->GetOwner (&owner); + + return owner->GetURL ((const char*) url, (const char*) target, + nsnull, 0, nsnull, 0); +} + NS_IMPL_ISUPPORTS6 (IcedTeaPluginFactory, nsIFactory, nsIPlugin, nsIJVMManager, nsIJVMPrefsWindow, nsIJVMPlugin, nsIInputStreamCallback) @@ -2433,6 +2510,11 @@ IcedTeaPluginFactory::OnInputStreamReady return NS_OK; } +#include +#include +#include +#include + void IcedTeaPluginFactory::HandleMessage (nsCString const& message) { @@ -2477,8 +2559,11 @@ IcedTeaPluginFactory::HandleMessage (nsC { IcedTeaPluginInstance* instance = NULL; instances.Get (identifier, &instance); -// if (instance != 0) -// instance->peer->ShowStatus (nsCString (rest).get ()); + if (instance != 0) + { + instance->peer->ShowStatus (nsCString (rest).get ()); + + } } else if (command == "initialized") { @@ -2504,9 +2589,10 @@ IcedTeaPluginFactory::HandleMessage (nsC nsIPluginInstanceOwner* owner = nsnull; ownerGetter->GetOwner (&owner); printf("Calling GetURL with %s and %s\n", nsCString (url).get (), nsCString (target).get ()); - owner->GetURL (nsCString (url).get (), - nsCString (target).get (), - nsnull, 0, nsnull, 0); + nsCOMPtr event = new GetURLRunnable (instance->peer, + nsCString (url).get (), + nsCString (target).get ()); + current->Dispatch(event, nsIEventTarget::DISPATCH_NORMAL); } } else if (command == "GetWindow") @@ -2841,20 +2927,47 @@ void IcedTeaPluginFactory::ProcessMessag void IcedTeaPluginFactory::ProcessMessage () { while (true) { - printf("Process thread sleeping...\n"); - PR_Sleep(PR_INTERVAL_NO_TIMEOUT); + PR_Sleep(1000); + + // If there was an interrupt, clear it PR_ClearInterrupt(); - - printf("Process thread interrupted...\n"); - // Was I interrupted for shutting down? if (shutting_down == PR_TRUE) { break; } - ConsumeMsgFromJVM(); + // Nope. Ok, is there work to do? + if (!jvmMsgQueue.empty()) + ConsumeMsgFromJVM(); + + // All done. Now let's process pending events + + // Were there new events dispatched? + + PRBool this_has_pending, curr_has_pending, processed = PR_FALSE; + PRBool continue_processing = PR_TRUE; + + while (continue_processing == PR_TRUE) { + + processThread->HasPendingEvents(&this_has_pending); + if (this_has_pending == PR_TRUE) { + processThread->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (this) ... %d\n", processed); + } + + current->HasPendingEvents(&curr_has_pending); + if (curr_has_pending == PR_TRUE) { + current->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (current) ... %d\n", processed); + } + + if (this_has_pending != PR_TRUE && curr_has_pending != PR_TRUE) { + continue_processing = PR_FALSE; + } + } } + } void IcedTeaPluginFactory::ConsumeMsgFromJVM () @@ -2872,9 +2985,7 @@ void IcedTeaPluginFactory::ConsumeMsgFro HandleMessage (message); printf("Processing complete\n"); } - -} - +} /** * @@ -3189,9 +3300,9 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_CHECK_RETURN ("init process", result); // FIXME: hard-coded port number. - char const* args[8] = { "-classpath", extra_jars, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "org.classpath.icedtea.plugin.PluginMain", "50007" }; + char const* args[5] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain", "50007" }; // char const* args[2] = { "sun.applet.PluginMain", "50007" }; - result = applet_viewer_process->Run (PR_FALSE, args, 8, nsnull); + result = applet_viewer_process->Run (PR_FALSE, args, 5, nsnull); PLUGIN_CHECK_RETURN ("run process", result); // start processing thread @@ -3812,6 +3923,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) { + return NS_OK; PLUGIN_TRACE_JNIENV (); // Get JSContext from stack. @@ -3835,7 +3947,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) { - + return NS_OK; PLUGIN_TRACE_JNIENV (); nsIPrincipal *prin; @@ -4922,27 +5034,15 @@ NSGetFactory (nsISupports* aServMgr, nsC //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - extrajars += jar; - extrajars += nsCString("/IcedTeaPlugin.jar"); - extrajars += ":"; - extrajars += jar; - extrajars += nsCString("/rt.jar"); //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - extra_jars = strdup (extrajars.get ()); //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); - return NS_ERROR_OUT_OF_MEMORY; - } - - if (!extra_jars) - { - PLUGIN_ERROR ("Failed to create plugin jar name."); return NS_ERROR_OUT_OF_MEMORY; } diff -r f4981f8a1720 -r 358cb21c4730 Makefile.am --- a/Makefile.am Wed Oct 01 05:52:01 2008 -0400 +++ b/Makefile.am Wed Oct 01 16:40:56 2008 -0400 @@ -12,13 +12,11 @@ if ENABLE_LIVECONNECT if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so -ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = -ICEDTEAPLUGIN_JAR = PLUGIN_PATCH = patches/icedtea-plugin.patch LIVECONNECT = if ENABLE_PLUGIN @@ -48,7 +46,6 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so - rm -rf IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so @@ -597,6 +594,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta fi if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + cp -a plugin/icedtea/netscape openjdk/jdk/src/share/classes/ endif clean-patch: @@ -616,6 +614,7 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi + rm -rf openjdk/jdk/src/share/classes/netscape for file in plugin/icedtea/sun/applet/*java ; \ do \ rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ @@ -911,7 +910,7 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ From dbhole at redhat.com Thu Oct 2 13:49:34 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 02 Oct 2008 20:49:34 +0000 Subject: changeset in /hg/icedtea6: - More updates to the makefile so tha... Message-ID: changeset e41e54a1c0b0 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e41e54a1c0b0 description: - More updates to the makefile so that it works with the new structure diffstat: 1 file changed, 8 insertions(+), 7 deletions(-) Makefile.am | 15 ++++++++------- diffs (66 lines): diff -r 358cb21c4730 -r e41e54a1c0b0 Makefile.am --- a/Makefile.am Wed Oct 01 16:40:56 2008 -0400 +++ b/Makefile.am Thu Oct 02 15:27:35 2008 -0400 @@ -13,12 +13,12 @@ ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugi ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so PLUGIN_PATCH = patches/icedtea-liveconnect.patch -LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ +LIVECONNECT_DIR = -C lib/rt netscape else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = PLUGIN_PATCH = patches/icedtea-plugin.patch -LIVECONNECT = +LIVECONNECT_DIR = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -44,6 +44,7 @@ distclean-local: clean-copy clean-jtreg rm -rf openjdk-ecj rm -rf openjdk rm -rf hotspot-tools + rm -rf rt/netscape if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so else @@ -594,7 +595,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta fi if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ - cp -a plugin/icedtea/netscape openjdk/jdk/src/share/classes/ + cp -a plugin/icedtea/netscape rt/ endif clean-patch: @@ -614,7 +615,7 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi - rm -rf openjdk/jdk/src/share/classes/netscape + rm -rf rt/netscape for file in plugin/icedtea/sun/applet/*java ; \ do \ rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ @@ -1203,7 +1204,7 @@ bootstrap/jdk1.7.0/jre/lib/tools.jar: st # rt-closed.jar class files. rt-source-files.txt: stamps/extract.stamp stamps/copy-source-files.stamp - find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT) -name '*.java' \ + find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt -name '*.java' \ | sort -u > $@ stamps/rt-class-files.stamp: rt-source-files.txt @@ -1238,10 +1239,10 @@ bootstrap/jdk1.7.0/jre/lib/rt-closed.jar if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ $(JAR) cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \ fi if test -d bootstrap/ecj/jre/lib ; \ then \ From dbhole at redhat.com Thu Oct 2 13:49:35 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 02 Oct 2008 20:49:35 +0000 Subject: changeset in /hg/icedtea6: Merge with upstream Message-ID: changeset b83387569a2a in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=b83387569a2a description: Merge with upstream diffstat: 1 file changed, 1 deletion(-) configure.ac | 1 - diffs (11 lines): diff -r 880c7189324c -r b83387569a2a configure.ac --- a/configure.ac Thu Oct 02 15:45:31 2008 -0400 +++ b/configure.ac Thu Oct 02 16:15:21 2008 -0400 @@ -235,7 +235,6 @@ fi fi fi FIND_RHINO_JAR -FIND_NETBEANS WITH_OPENJDK_SRC_ZIP WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP From dbhole at redhat.com Thu Oct 2 13:49:34 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 02 Oct 2008 20:49:34 +0000 Subject: changeset in /hg/icedtea6: ChangeLog update Message-ID: changeset 868547baa028 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=868547baa028 description: ChangeLog update diffstat: 1 file changed, 43 insertions(+) ChangeLog | 43 +++++++++++++++++++++++++++++++++++++++++++ diffs (50 lines): diff -r 09dcedbe63a8 -r 868547baa028 ChangeLog --- a/ChangeLog Thu Oct 02 10:55:55 2008 -0400 +++ b/ChangeLog Thu Oct 02 15:34:39 2008 -0400 @@ -1,3 +1,46 @@ 2008-10-02 Lillian Angel + * .hgignore: Removed IcedTeaPlugin.jar + * IcedTeaPlugin.cc: Updated classpath when launching Java. added + checks to detect error on Java side. + * Makefile.am: Updated to fit new refactored files. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: New + file, moved out of org/classpath/icedtea/plugin/, as a result of + refactoring. + * plugin/icedtea/sun/applet/PluginCallRequestFactory.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Same. + * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. + * plugin/icedtea/sun/applet/PluginMain.java: Same. + * plugin/icedtea/sun/applet/PluginMessageConsumer.java: Same. + * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java: Same. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/RequestQueue.java: Same. + * plugin/icedtea/sun/applet/TestEnv.java: Same. + * plugin/icedtea/sun/applet/VoidPluginCallRequest.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java: + Removed, as a result of refactoring. + * plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java: + Same. + * plugin/icedtea/sun/applet/AppletSecurityContext.java: Same. + 2008-10-02 Lillian Angel * HACKING: Updated with new visualvm patch. From matthew.flaschen at gatech.edu Thu Oct 2 21:31:49 2008 From: matthew.flaschen at gatech.edu (Matthew Flaschen) Date: Fri, 03 Oct 2008 00:31:49 -0400 Subject: JNLP failures building latest hg of IcedTea In-Reply-To: <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> References: <48E05334.2000807@gatech.edu> <20080929164859.GB1303@rivendell.middle-earth.co.uk> <48E13D5F.80907@gatech.edu> <20080930004409.GE1303@rivendell.middle-earth.co.uk> <48E1801C.6070806@gatech.edu> <17c6771e0809300221x744dc00ex4f2ff96fbfc8b0a2@mail.gmail.com> <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> Message-ID: <48E5A035.8090008@gatech.edu> Andrew John Hughes wrote: >> So the problem is: >> >> /home/matthew/Code/Java/IcedTea/icedtea7/bootstrap/jdk1.6.0/bin/javac >> -J-Xmx512m -g -d extra-lib \ >> -source 1.5 \ >> -sourcepath extra -cp >> /home/matthew/Code/Java/IcedTea/icedtea7/bootstrap/jdk1.6.0/jre/lib/rt.jar >> \ >> -bootclasspath '' @extra-source-files.txt ; \ >> >> And I have a feeling it may be that your IcedTea is too old to use for >> a --with-icedtea build >> (i.e. it lacks some features of the netx support that the build >> expects to find there). The problem was with the stamps/extra-class-files.stamp target. As you note, this target requires Launcher.class, among other things. Interestingly, it appears that this target does not run on ecj builds. However, I don't think my system is updated enough to do an ecj build. I was able to successfuly do a --with-icedtea build after removing the extra-lib/about.jar target, which depends on stamps/extra-class-files.stamp. The built IcedTea7 contains Launcher.class (though I'm not sure when in the build this gets compiled), so I was able to use this to build unmodified latest hg. Matt Flaschen From Joe.Darcy at Sun.COM Thu Oct 2 22:34:58 2008 From: Joe.Darcy at Sun.COM (Joseph D. Darcy) Date: Thu, 02 Oct 2008 22:34:58 -0700 Subject: On ecj and @Override annotations for interface methods In-Reply-To: <1222517020.22140.19.camel@hermans.wildebeest.org> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <17c6771e0809180426o5483138cnd801325aa004a7ee@mail.gmail.com> <1221737607.3256.22.camel@dijkstra.wildebeest.org> <20080918113722.GG10250@bamboo.destinee.acro.gen.nz> <1221738084.3256.24.camel@dijkstra.wildebeest.org> <1221739400.3256.34.camel@dijkstra.wildebeest.org> <48D263FD.1080702@sun.com> <1221748518.3256.59.camel@dijkstra.wildebeest.org> <48D2A430.2070903@sun.com> <1222164188.3178.42.camel@dijkstra.wildebeest.org> <48D8F940.40600@sun.com> <1222517020.22140.19.camel@hermans.wildebeest.org> Message-ID: <48E5AF02.7060801@sun.com> Hello. Mark Wielaard wrote: > Hi Joe, > > On Tue, 2008-09-23 at 07:12 -0700, Joseph D. Darcy wrote: > >>> Are these manpages written by hand these days? It has a comment that >>> says: "Generated by html2man", but it doesn't say what the original html >>> file is that it was generated from. >>> >>> >> The process used in the past for man pages was that the docs team works >> with us developers to write the HTML man pages, which are in turn >> converted to SGML and *roff for Solaris and Linux, respectively. It >> looks like the last update to the HTML page, 6392810 "javac manpage >> needs to be updated to include JSR 269 and other Mustang options," did >> not get converted to the other formats. If the actual *nix man pages, >> regardless of format, are supposed to be generated in this fashion, it >> would admittedly be a better architecture to have them as generated >> files during the build and not track all three versions of the man page >> under version control. >> > > So if the preferred form of the for making modifications to these > documents is the HTML or SGML version that the doc team maintains it > would be good to get those in the openjdk tree. Agreed. > Does the documentation > team maintain their own repository for these documents? > Yes; at the moment there is a Sun-internal-only repository for these documents. IMO, at least the master manpages should be moved to a public repository for JDK 7 and the build rearranged so that the *roff and SGML files are generated and not separated tracked under version control. I'll broach this with the docs team for later in JDK 7. For OpenJDK 6, I'll make sure up-to-date manpages are included in the next build. -Joe From gnu_andrew at member.fsf.org Fri Oct 3 01:06:45 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Fri, 3 Oct 2008 09:06:45 +0100 Subject: JNLP failures building latest hg of IcedTea In-Reply-To: <48E5A035.8090008@gatech.edu> References: <48E05334.2000807@gatech.edu> <20080929164859.GB1303@rivendell.middle-earth.co.uk> <48E13D5F.80907@gatech.edu> <20080930004409.GE1303@rivendell.middle-earth.co.uk> <48E1801C.6070806@gatech.edu> <17c6771e0809300221x744dc00ex4f2ff96fbfc8b0a2@mail.gmail.com> <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> <48E5A035.8090008@gatech.edu> Message-ID: <17c6771e0810030106t128f1dfbl2ceae10aa3c5b12e@mail.gmail.com> 2008/10/3 Matthew Flaschen : > Andrew John Hughes wrote: >>> So the problem is: >>> >>> /home/matthew/Code/Java/IcedTea/icedtea7/bootstrap/jdk1.6.0/bin/javac >>> -J-Xmx512m -g -d extra-lib \ >>> -source 1.5 \ >>> -sourcepath extra -cp >>> /home/matthew/Code/Java/IcedTea/icedtea7/bootstrap/jdk1.6.0/jre/lib/rt.jar >>> \ >>> -bootclasspath '' @extra-source-files.txt ; \ >>> >>> And I have a feeling it may be that your IcedTea is too old to use for >>> a --with-icedtea build >>> (i.e. it lacks some features of the netx support that the build >>> expects to find there). > > The problem was with the stamps/extra-class-files.stamp target. As you > note, this target requires Launcher.class, among other things. > Interestingly, it appears that this target does not run on ecj builds. > However, I don't think my system is updated enough to do an ecj build. > It should be; I managed to use it to build on Debian etch on Wednesday... > I was able to successfuly do a --with-icedtea build after removing the > extra-lib/about.jar target, which depends on > stamps/extra-class-files.stamp. The built IcedTea7 contains > Launcher.class (though I'm not sure when in the build this gets > compiled), so I was able to use this to build unmodified latest hg. > It sounds like you effectively did a hacked-up variant of the ecj build. The naming is perhaps a misnomer. The ecj build is the default, and uses your system jdk to build IcedTea. A number of patches are included to accomodate older versions of ecj, GNU Classpath/gcj etc. It then uses this build to bootstrap a clean IcedTea build as you just did. --with-icedtea is a shortcut option to skip to the second stage if you already have a copy of IcedTea new enough. If ${JDK_INSTALL} is the location of your installed JDK (be that IcedTea, gcj-jdk or whatever) the following options can be used: ./configure --with-gcj-home=${JDK_INSTALL} --with-libgcj-jar=${JDK_INSTALL}/jre/lib/rt.jar \ --with-java=${JDK_INSTALL}/bin/java --with-javah=${JDK_INSTALL}/bin/javah --with-jar=${JDK_INSTALL}/bin/jar You can fake this setup from a Classpath + VM install. mkdir -p fake-jdk/bin ln -s ${VM_INSTALL}/bin/${VM} fake-jdk/bin/java ln -s ${CLASSPATH_INSTALL}/bin/gjar fake-jdk/bin/jar ln -s ${CLASSPATH_INSTALL}/bin/gjavah fake-jdk/bin/javah mkdir -p fake-jdk/jre/lib ln -s ${CLASSPATH_INSTALL}/share/classpath/glibj.zip fake-jdk/jre/lib/rt.jar mkdir -p fake-jdk/lib ln -s ${CLASSPATH_INSTALL}/share/classpath/tools.zip fake-jdk/lib/tools.jar mkdir -p fake-jdk/jre/lib/${ARCH}/{client,server} ln -s ${VM_INSTALL}/lib/libjvm.so fake-jdk/jre/lib/${ARCH}/client ln -s ${VM_INSTALL}/lib/libjvm.so fake-jdk/jre/lib/${ARCH}/server ln -s ${CLASSPATH_INSTALL}/include fake-jdk > Matt Flaschen > -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From matthew.flaschen at gatech.edu Fri Oct 3 01:58:42 2008 From: matthew.flaschen at gatech.edu (Matthew Flaschen) Date: Fri, 03 Oct 2008 04:58:42 -0400 Subject: JNLP failures building latest hg of IcedTea In-Reply-To: <17c6771e0810030106t128f1dfbl2ceae10aa3c5b12e@mail.gmail.com> References: <48E05334.2000807@gatech.edu> <20080929164859.GB1303@rivendell.middle-earth.co.uk> <48E13D5F.80907@gatech.edu> <20080930004409.GE1303@rivendell.middle-earth.co.uk> <48E1801C.6070806@gatech.edu> <17c6771e0809300221x744dc00ex4f2ff96fbfc8b0a2@mail.gmail.com> <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> <48E5A035.8090008@gatech.edu> <17c6771e0810030106t128f1dfbl2ceae10aa3c5b12e@mail.gmail.com> Message-ID: <48E5DEC2.10809@gatech.edu> Andrew John Hughes wrote: >> However, I don't think my system is updated enough to do an ecj build. >> > > It should be; I managed to use it to build on Debian etch on Wednesday... I don't have libgcj-4.3.*.jar. >> I was able to successfuly do a --with-icedtea build after removing the >> extra-lib/about.jar target, which depends on >> stamps/extra-class-files.stamp. The built IcedTea7 contains >> Launcher.class (though I'm not sure when in the build this gets >> compiled), so I was able to use this to build unmodified latest hg. >> > > It sounds like you effectively did a hacked-up variant of the ecj build. > The naming is perhaps a misnomer. The ecj build is the default, and uses > your system jdk to build IcedTea. I don't think so, unless I'm reading the Makefile totally wrong. I was still using an old copy of IcedTea to build a new IcedTea; I just skipped a very small part of the build (about.jar). My patch to the Makefile is attached. Now, of course, I can use my "new" IcedTea to build without the little hack (and have done so to test). Matt Flaschen -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea_on_icedtea_tweaks_2008-10-02.patch Type: text/x-patch Size: 889 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081003/0814a709/icedtea_on_icedtea_tweaks_2008-10-02.patch From gnu_andrew at member.fsf.org Fri Oct 3 02:54:44 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Fri, 3 Oct 2008 10:54:44 +0100 Subject: JNLP failures building latest hg of IcedTea In-Reply-To: <48E5DEC2.10809@gatech.edu> References: <48E05334.2000807@gatech.edu> <20080929164859.GB1303@rivendell.middle-earth.co.uk> <48E13D5F.80907@gatech.edu> <20080930004409.GE1303@rivendell.middle-earth.co.uk> <48E1801C.6070806@gatech.edu> <17c6771e0809300221x744dc00ex4f2ff96fbfc8b0a2@mail.gmail.com> <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> <48E5A035.8090008@gatech.edu> <17c6771e0810030106t128f1dfbl2ceae10aa3c5b12e@mail.gmail.com> <48E5DEC2.10809@gatech.edu> Message-ID: <17c6771e0810030254x29a5068ei1bf3ab1c56dfc36a@mail.gmail.com> 2008/10/3 Matthew Flaschen : > Andrew John Hughes wrote: >>> However, I don't think my system is updated enough to do an ecj build. >>> >> >> It should be; I managed to use it to build on Debian etch on Wednesday... > > I don't have libgcj-4.3.*.jar. > As I said, --with-libgcj-jar= would fix this. >>> I was able to successfuly do a --with-icedtea build after removing the >>> extra-lib/about.jar target, which depends on >>> stamps/extra-class-files.stamp. The built IcedTea7 contains >>> Launcher.class (though I'm not sure when in the build this gets >>> compiled), so I was able to use this to build unmodified latest hg. >>> >> >> It sounds like you effectively did a hacked-up variant of the ecj build. >> The naming is perhaps a misnomer. The ecj build is the default, and uses >> your system jdk to build IcedTea. > > I don't think so, unless I'm reading the Makefile totally wrong. I was > still using an old copy of IcedTea to build a new IcedTea; I just > skipped a very small part of the build (about.jar). My patch to the > Makefile is attached. > > Now, of course, I can use my "new" IcedTea to build without the little > hack (and have done so to test). > > Matt Flaschen > -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From matthew.flaschen at gatech.edu Fri Oct 3 03:00:30 2008 From: matthew.flaschen at gatech.edu (Matthew Flaschen) Date: Fri, 03 Oct 2008 06:00:30 -0400 Subject: JNLP failures building latest hg of IcedTea In-Reply-To: <17c6771e0810030254x29a5068ei1bf3ab1c56dfc36a@mail.gmail.com> References: <48E05334.2000807@gatech.edu> <20080929164859.GB1303@rivendell.middle-earth.co.uk> <48E13D5F.80907@gatech.edu> <20080930004409.GE1303@rivendell.middle-earth.co.uk> <48E1801C.6070806@gatech.edu> <17c6771e0809300221x744dc00ex4f2ff96fbfc8b0a2@mail.gmail.com> <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> <48E5A035.8090008@gatech.edu> <17c6771e0810030106t128f1dfbl2ceae10aa3c5b12e@mail.gmail.com> <48E5DEC2.10809@gatech.edu> <17c6771e0810030254x29a5068ei1bf3ab1c56dfc36a@mail.gmail.com> Message-ID: <48E5ED3E.4030400@gatech.edu> Andrew John Hughes wrote: > 2008/10/3 Matthew Flaschen : >> Andrew John Hughes wrote: >>>> However, I don't think my system is updated enough to do an ecj build. >>>> >>> It should be; I managed to use it to build on Debian etch on Wednesday... >> I don't have libgcj-4.3.*.jar. >> > > As I said, --with-libgcj-jar= would fix this. And that would work even if rt.jar didn't have Launcher.class? I think I understand this now. Matt Flaschen From gnu_andrew at member.fsf.org Fri Oct 3 03:24:52 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Fri, 3 Oct 2008 11:24:52 +0100 Subject: JNLP failures building latest hg of IcedTea In-Reply-To: <48E5ED3E.4030400@gatech.edu> References: <48E05334.2000807@gatech.edu> <20080930004409.GE1303@rivendell.middle-earth.co.uk> <48E1801C.6070806@gatech.edu> <17c6771e0809300221x744dc00ex4f2ff96fbfc8b0a2@mail.gmail.com> <17c6771e0809300224n236dd4dftcf9cef1ef1006714@mail.gmail.com> <48E5A035.8090008@gatech.edu> <17c6771e0810030106t128f1dfbl2ceae10aa3c5b12e@mail.gmail.com> <48E5DEC2.10809@gatech.edu> <17c6771e0810030254x29a5068ei1bf3ab1c56dfc36a@mail.gmail.com> <48E5ED3E.4030400@gatech.edu> Message-ID: <17c6771e0810030324l4d5e18d6maab09526a47bb6bb@mail.gmail.com> 2008/10/3 Matthew Flaschen : > Andrew John Hughes wrote: >> 2008/10/3 Matthew Flaschen : >>> Andrew John Hughes wrote: >>>>> However, I don't think my system is updated enough to do an ecj build. >>>>> >>>> It should be; I managed to use it to build on Debian etch on Wednesday... >>> I don't have libgcj-4.3.*.jar. >>> >> >> As I said, --with-libgcj-jar= would fix this. > > And that would work even if rt.jar didn't have Launcher.class? I think > I understand this now. > > Matt Flaschen > Yes :) It adds a preliminary stage to the build that effectively puts you in the situation you are now; with a current IcedTea for building IcedTea. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Fri Oct 3 04:20:30 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 03 Oct 2008 11:20:30 +0000 Subject: [Bug 200] New: java-1.6.0-openjdk-plugin (x86_64) fails to render radar time loop animation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=200 Summary: java-1.6.0-openjdk-plugin (x86_64) fails to render radar time loop animation Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: trapper at ledduk.net The web page with rendering failure is here: http://www.goes.noaa.gov/HURRLOOPS/huirloop.html This is a radar time loop java applet with generally 7 to 10 sequential frames. Although the progress bar shows the frame progress, the frames do not switch. Only the first frame is displayed. There is no animation of the radar display. This has been an ongoing issue with openjdk and Sun java through Fedora 8, 9 and 10 in both 32 bit & 64 bit versions when used with firefox 2x and 3x. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gbenson at redhat.com Fri Oct 3 04:58:25 2008 From: gbenson at redhat.com (Gary Benson) Date: Fri, 03 Oct 2008 11:58:25 +0000 Subject: changeset in /hg/icedtea6: 2008-10-03 Gary Benson changeset e0a13e4cc434 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e0a13e4cc434 description: 2008-10-03 Gary Benson * ports/hotspot/build/linux/makefiles/shark.make: Work around some GCC optimizer failures. diffstat: 2 files changed, 19 insertions(+) ChangeLog | 5 +++++ ports/hotspot/build/linux/makefiles/shark.make | 14 ++++++++++++++ diffs (39 lines): diff -r b83387569a2a -r e0a13e4cc434 ChangeLog --- a/ChangeLog Thu Oct 02 16:15:21 2008 -0400 +++ b/ChangeLog Fri Oct 03 07:58:17 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-01 Deepak Bhole + + * ports/hotspot/build/linux/makefiles/shark.make: + Work around some GCC optimizer failures. + 2008-10-01 Deepak Bhole * .hgignore: Removed IcedTeaPlugin.jar * IcedTeaPlugin.cc: Updated classpath when launching Java. added diff -r b83387569a2a -r e0a13e4cc434 ports/hotspot/build/linux/makefiles/shark.make --- a/ports/hotspot/build/linux/makefiles/shark.make Thu Oct 02 16:15:21 2008 -0400 +++ b/ports/hotspot/build/linux/makefiles/shark.make Fri Oct 03 07:58:17 2008 -0400 @@ -1,5 +1,6 @@ # # Copyright 1999-2005 Sun Microsystems, Inc. All Rights Reserved. +# Copyright 2008 Red Hat, Inc. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -29,3 +30,16 @@ VM_SUBDIR = server VM_SUBDIR = server CFLAGS += -DSHARK + +# Something these files fail with GCC at higher optimization levels. +# An llvm::Value ends up NULL, causing segfaults in LLVM when it is +# used. Observed with 4.1.2 20070925 (Red Hat 4.1.2-33) and 4.3.2. +OPT_CFLAGS/sharkBlock.o = -O0 +OPT_CFLAGS/sharkMonitor.o = -O0 + +# Something in this file fails with GCC at higher optimization levels. +# The part of ciTypeFlow::StateVector::meet_exception() that fills in +# local variables stops part way through leaving the rest set to T_TOP +# (ie uninitialized). The VM then aborts with a ShouldNotReachHere() +# in SharkPHIState::initialize(). Observed with 4.3.2. +OPT_CFLAGS/ciTypeFlow.o = -O1 From iivan at redhat.com Fri Oct 3 13:20:58 2008 From: iivan at redhat.com (Ioana Ivan) Date: Fri, 03 Oct 2008 20:20:58 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-03 Ioana Ivan changeset a9057b218aa0 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=a9057b218aa0 description: 2008-10-03 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/EventLoop.java: replaced call to System.load with call to System.loadLibrary * src/java/org/classpath/icedtea/pulseaudio/Operation.java: Likewise * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java: Likewise * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java: Likewise * src/java/org/classpath/icedtea/pulseaudio/Stream.java Likewise * Makefile.am: removed * build.xml: removed * src/native/Makefile.am: removed diffstat: 8 files changed, 5 insertions(+), 178 deletions(-) Makefile.am | 6 build.xml | 93 ---------- src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 11 - src/java/org/classpath/icedtea/pulseaudio/Operation.java | 11 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 11 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 11 - src/java/org/classpath/icedtea/pulseaudio/Stream.java | 11 - src/native/Makefile.am | 29 --- diffs (245 lines): diff -r a6a5ca46e90e -r a9057b218aa0 Makefile.am --- a/Makefile.am Tue Sep 30 14:43:55 2008 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -SUBDIRS = src/native - -clean-local: - ant clean ; \ - rm -f libpulse-java.so ; - diff -r a6a5ca46e90e -r a9057b218aa0 build.xml --- a/build.xml Tue Sep 30 14:43:55 2008 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r a6a5ca46e90e -r a9057b218aa0 src/java/org/classpath/icedtea/pulseaudio/EventLoop.java --- a/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Tue Sep 30 14:43:55 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Fri Oct 03 16:20:27 2008 -0400 @@ -106,16 +106,7 @@ public class EventLoop implements Runnab */ static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out.println(EventLoop.class.getCanonicalName() + ": " - // + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } + System.loadLibrary("pulse-java"); } private EventLoop() { diff -r a6a5ca46e90e -r a9057b218aa0 src/java/org/classpath/icedtea/pulseaudio/Operation.java --- a/src/java/org/classpath/icedtea/pulseaudio/Operation.java Tue Sep 30 14:43:55 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Operation.java Fri Oct 03 16:20:27 2008 -0400 @@ -59,16 +59,7 @@ public class Operation { } static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out.println(Operation.class.getCanonicalName() + ": " - // + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } + System.loadLibrary("pulse-java"); } private native void native_ref(); diff -r a6a5ca46e90e -r a9057b218aa0 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Tue Sep 30 14:43:55 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Fri Oct 03 16:20:27 2008 -0400 @@ -44,16 +44,7 @@ public class PulseAudioSourcePort extend public class PulseAudioSourcePort extends PulseAudioPort { static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out.println(PulseAudioVolumeControl.class.getCanonicalName() - // + ": " + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } + System.loadLibrary("pulse-java"); } public PulseAudioSourcePort(String name, EventLoop eventLoop) { diff -r a6a5ca46e90e -r a9057b218aa0 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Tue Sep 30 14:43:55 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 03 16:20:27 2008 -0400 @@ -44,16 +44,7 @@ public class PulseAudioTargetPort extend public class PulseAudioTargetPort extends PulseAudioPort { static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out.println(PulseAudioVolumeControl.class.getCanonicalName() - // + ": " + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } + System.loadLibrary("pulse-java"); } public PulseAudioTargetPort(String name, EventLoop eventLoop) { diff -r a6a5ca46e90e -r a9057b218aa0 src/java/org/classpath/icedtea/pulseaudio/Stream.java --- a/src/java/org/classpath/icedtea/pulseaudio/Stream.java Tue Sep 30 14:43:55 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Stream.java Fri Oct 03 16:20:27 2008 -0400 @@ -105,16 +105,7 @@ public class Stream { private byte[] streamPointer; static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out - // .println(Stream.class.getCanonicalName() + ": " + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } + System.loadLibrary("pulse-java"); } private Format format; diff -r a6a5ca46e90e -r a9057b218aa0 src/native/Makefile.am --- a/src/native/Makefile.am Tue Sep 30 14:43:55 2008 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -lib_LTLIBRARIES = libpulse-java.la - -libpulse_java_la_SOURCES = \ - jni-common.c \ - jni-common.h \ - org_classpath_icedtea_pulseaudio_EventLoop.c \ - org_classpath_icedtea_pulseaudio_EventLoop.h \ - org_classpath_icedtea_pulseaudio_Operation.h \ - org_classpath_icedtea_pulseaudio_Operation.c \ - org_classpath_icedtea_pulseaudio_Stream.c \ - org_classpath_icedtea_pulseaudio_Stream.h \ - org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.h \ - org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c \ - org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c \ - org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.h - - - - -AM_CFLAGS = -g -Wall -Werror $(PLATFORM_FLAGS) $(LIBPULSE_CFLAGS) -AM_LDFLAGS = -g -Wall -Werror $(LIBPULSE_LIBS) - -PLATFORM_FLAGS = -DWITH_32BIT_PLATFORM - -topdir = ../.. - -all-local: $(lib_LTLIBRARIES) - cp .libs/libpulse-java.so $(topdir) - From doko at ubuntu.com Mon Oct 6 01:51:07 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Mon, 06 Oct 2008 08:51:07 +0000 Subject: changeset in /hg/icedtea6: 2008-10-05 Matthias Klose changeset 192176f52fb4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=192176f52fb4 description: 2008-10-05 Matthias Klose * Makefile.am (distclean-local): Remove IcedTeaPlugin object file. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 2 +- diffs (23 lines): diff -r e0a13e4cc434 -r 192176f52fb4 ChangeLog --- a/ChangeLog Fri Oct 03 07:58:17 2008 -0400 +++ b/ChangeLog Mon Oct 06 10:37:31 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-03 Gary Benson + + * Makefile.am (distclean-local): Remove IcedTeaPlugin object file. + 2008-10-03 Gary Benson * ports/hotspot/build/linux/makefiles/shark.make: diff -r e0a13e4cc434 -r 192176f52fb4 Makefile.am --- a/Makefile.am Fri Oct 03 07:58:17 2008 -0400 +++ b/Makefile.am Mon Oct 06 10:37:31 2008 +0200 @@ -52,7 +52,7 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools rm -rf rt/netscape if ENABLE_LIVECONNECT - rm -f IcedTeaPlugin.so + rm -f IcedTeaPlugin.o IcedTeaPlugin.so else if ENABLE_PLUGIN rm -f gcjwebplugin.so From doko at ubuntu.com Mon Oct 6 03:00:26 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Mon, 06 Oct 2008 10:00:26 +0000 Subject: changeset in /hg/icedtea6: 2008-10-06 Matthias Klose changeset 76843a64878d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=76843a64878d description: 2008-10-06 Matthias Klose * IcedTeaPlugin.cc (PLUGIN_MIME_DESC): Remove 1.7 specs. diffstat: 2 files changed, 6 insertions(+), 4 deletions(-) ChangeLog | 4 ++++ IcedTeaPlugin.cc | 6 ++---- diffs (34 lines): diff -r 192176f52fb4 -r 76843a64878d ChangeLog --- a/ChangeLog Mon Oct 06 10:37:31 2008 +0200 +++ b/ChangeLog Mon Oct 06 11:59:41 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-05 Matthias Klose + + * IcedTeaPlugin.cc (PLUGIN_MIME_DESC): Remove 1.7 specs. + 2008-10-05 Matthias Klose * Makefile.am (distclean-local): Remove IcedTeaPlugin object file. diff -r 192176f52fb4 -r 76843a64878d IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Oct 06 10:37:31 2008 +0200 +++ b/IcedTeaPlugin.cc Mon Oct 06 11:59:41 2008 +0200 @@ -215,8 +215,7 @@ private: "application/x-java-applet;version=1.4.2:class,jar:IcedTea;" \ "application/x-java-applet;version=1.5:class,jar:IcedTea;" \ "application/x-java-applet;version=1.6:class,jar:IcedTea;" \ - "application/x-java-applet;version=1.7:class,jar:IcedTea;" \ - "application/x-java-applet;jpi-version=1.7.0_00:class,jar:IcedTea;" \ + "application/x-java-applet;jpi-version=1.6.0_00:class,jar:IcedTea;" \ "application/x-java-bean:class,jar:IcedTea;" \ "application/x-java-bean;version=1.1:class,jar:IcedTea;" \ "application/x-java-bean;version=1.1.1:class,jar:IcedTea;" \ @@ -232,8 +231,7 @@ private: "application/x-java-bean;version=1.4.2:class,jar:IcedTea;" \ "application/x-java-bean;version=1.5:class,jar:IcedTea;" \ "application/x-java-bean;version=1.6:class,jar:IcedTea;" \ - "application/x-java-bean;version=1.7:class,jar:IcedTea;" \ - "application/x-java-bean;jpi-version=1.7.0_00:class,jar:IcedTea;" + "application/x-java-bean;jpi-version=1.6.0_00:class,jar:IcedTea;" #define FAILURE_MESSAGE "IcedTeaPluginFactory error: Failed to run %s." \ " For more detail rerun \"firefox -g\" in a terminal window." From doko at ubuntu.com Mon Oct 6 03:02:47 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Mon, 06 Oct 2008 10:02:47 +0000 Subject: changeset in /hg/icedtea6: 2008-10-06 Matthias Klose changeset d6c8840e4167 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d6c8840e4167 description: 2008-10-06 Matthias Klose * generated/sun/misc/Version.java: Regenerate for 6b12. * generated/sun/tools/jconsole/Version.java: Likewise. diffstat: 3 files changed, 8 insertions(+), 3 deletions(-) ChangeLog | 5 +++++ generated/sun/misc/Version.java | 4 ++-- generated/sun/tools/jconsole/Version.java | 2 +- diffs (40 lines): diff -r 76843a64878d -r d6c8840e4167 ChangeLog --- a/ChangeLog Mon Oct 06 11:59:41 2008 +0200 +++ b/ChangeLog Mon Oct 06 12:02:04 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-06 Matthias Klose + + * generated/sun/misc/Version.java: Regenerate for 6b12. + * generated/sun/tools/jconsole/Version.java: Likewise. + 2008-10-06 Matthias Klose * IcedTeaPlugin.cc (PLUGIN_MIME_DESC): Remove 1.7 specs. diff -r 76843a64878d -r d6c8840e4167 generated/sun/misc/Version.java --- a/generated/sun/misc/Version.java Mon Oct 06 11:59:41 2008 +0200 +++ b/generated/sun/misc/Version.java Mon Oct 06 12:02:04 2008 +0200 @@ -36,10 +36,10 @@ public class Version { "1.6.0_0"; private static final String java_runtime_name = - "OpenJDK Runtime Environment"; + "OpenJDK Runtime Environment"; private static final String java_runtime_version = - "1.6.0_0-b11"; + "1.6.0_0-b12"; static { init(); diff -r 76843a64878d -r d6c8840e4167 generated/sun/tools/jconsole/Version.java --- a/generated/sun/tools/jconsole/Version.java Mon Oct 06 11:59:41 2008 +0200 +++ b/generated/sun/tools/jconsole/Version.java Mon Oct 06 12:02:04 2008 +0200 @@ -29,7 +29,7 @@ import java.io.PrintStream; public class Version { private static final String jconsole_version = - "1.6.0_0-b11"; + "1.6.0_0-b12"; public static void print(PrintStream ps) { printFullVersion(ps); From bugzilla-daemon at icedtea.classpath.org Mon Oct 6 03:18:38 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 06 Oct 2008 10:18:38 +0000 Subject: [Bug 203] New: Shark segfaults in DaCapo eclipse benchmark Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=203 Summary: Shark segfaults in DaCapo eclipse benchmark Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: gbenson at redhat.com Shark fails to run the DaCapo eclipse benchmark, segfaulting after a while in org.eclipse.jdt.internal.compiler.parser.AbstractCommentParser.readTokenSafely()I. It works fine if this method is excluded from being compiled, which suggests it is a miscompilation of some sort. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 6 03:18:47 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 06 Oct 2008 10:18:47 +0000 Subject: [Bug 203] Shark segfaults in DaCapo eclipse benchmark Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=203 gbenson at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|gbenson at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From aph at redhat.com Mon Oct 6 04:49:57 2008 From: aph at redhat.com (Andrew Haley) Date: Mon, 06 Oct 2008 12:49:57 +0100 Subject: preparing a icedtea-1.3 release? In-Reply-To: <48E0DBF8.7070804@redhat.com> References: <48DFA75E.6080906@ubuntu.com> <1222636644.3271.10.camel@dijkstra.wildebeest.org> <20080928212527.GA7083@rivendell.middle-earth.co.uk> <48E0DBF8.7070804@redhat.com> Message-ID: <48E9FB65.7070504@redhat.com> Lillian Angel wrote: > Andrew John Hughes wrote: >> On 23:17 Sun 28 Sep , Mark Wielaard wrote: >>> Hi, >>> >>> On Sun, 2008-09-28 at 17:48 +0200, Matthias Klose wrote: >>>> The last icedtea release 1.2 (bases on b09) was four months ago. I >>>> would like to >>>> prepare a 1.3 release based ob b12. are there currently outstanding >>>> issues? >>> Good idea. There have been lots of improvements since the last official >>> 1.2 release. Including various security and crasher issues, that we >>> really should make sure are picked up by the various distros. >>> >> >> Lillian already mentioned she is working on this in her blog. >> >> http://langel.wordpress.com/2008/09/24/women-in-foss/ >> >> This really should have been sent to distro-pkg-dev as well. > > I have been waiting for the PulseAudio and LiveConnect work before going > ahead with a release. Is everyone ok with waiting for these? Yes. I think it's much better to go with a release when these significant features are added rather than at a fixed time interval. Andrew. From omajid at redhat.com Mon Oct 6 08:31:33 2008 From: omajid at redhat.com (Omair Majid) Date: Mon, 06 Oct 2008 15:31:33 +0000 Subject: changeset in /hg/pulseaudio: 2008-09-6 Omair Majid changeset eb2d35a91b0d in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=eb2d35a91b0d description: 2008-09-6 Omair Majid * Got rid of unneeded imports. * Removed unused stuff from PulseAudioVolumeControl diffstat: 6 files changed, 25 deletions(-) src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 1 src/java/org/classpath/icedtea/pulseaudio/Operation.java | 1 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 2 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 2 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java | 18 ---------- src/java/org/classpath/icedtea/pulseaudio/Stream.java | 1 diffs (94 lines): diff -r a9057b218aa0 -r eb2d35a91b0d src/java/org/classpath/icedtea/pulseaudio/EventLoop.java --- a/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Fri Oct 03 16:20:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Mon Oct 06 11:31:34 2008 -0400 @@ -37,7 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Semaphore; diff -r a9057b218aa0 -r eb2d35a91b0d src/java/org/classpath/icedtea/pulseaudio/Operation.java --- a/src/java/org/classpath/icedtea/pulseaudio/Operation.java Fri Oct 03 16:20:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Operation.java Mon Oct 06 11:31:34 2008 -0400 @@ -37,7 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; /* * Encapsulates a pa_operation object diff -r a9057b218aa0 -r eb2d35a91b0d src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Fri Oct 03 16:20:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Mon Oct 06 11:31:34 2008 -0400 @@ -37,8 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; - import javax.sound.sampled.Port; public class PulseAudioSourcePort extends PulseAudioPort { diff -r a9057b218aa0 -r eb2d35a91b0d src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 03 16:20:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Mon Oct 06 11:31:34 2008 -0400 @@ -37,8 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; - import javax.sound.sampled.Port; public class PulseAudioTargetPort extends PulseAudioPort { diff -r a9057b218aa0 -r eb2d35a91b0d src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java Fri Oct 03 16:20:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java Mon Oct 06 11:31:34 2008 -0400 @@ -37,8 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; - import javax.sound.sampled.FloatControl; class PulseAudioVolumeControl extends FloatControl { @@ -55,24 +53,8 @@ class PulseAudioVolumeControl extends Fl this.eventLoop = eventLoop; } - @SuppressWarnings("unused") - private byte[] streamPointer; - private EventLoop eventLoop; private PulseAudioPlaybackLine line; - - static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out.println(PulseAudioVolumeControl.class.getCanonicalName() - // + ": " + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } - } public synchronized void setValue(float newValue) { if (newValue > MAX_VOLUME || newValue < MIN_VOLUME) { diff -r a9057b218aa0 -r eb2d35a91b0d src/java/org/classpath/icedtea/pulseaudio/Stream.java --- a/src/java/org/classpath/icedtea/pulseaudio/Stream.java Fri Oct 03 16:20:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Stream.java Mon Oct 06 11:31:34 2008 -0400 @@ -37,7 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; import java.util.LinkedList; import java.util.List; From omajid at redhat.com Mon Oct 6 12:42:18 2008 From: omajid at redhat.com (Omair Majid) Date: Mon, 06 Oct 2008 19:42:18 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-06 Omair Majid changeset fa7dd0d762f1 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=fa7dd0d762f1 description: 2008-10-06 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (open): Synchronized method. (native_setVolume): Synchronized native method on eventLoop. (setVolume): Synchronized method. (write): Set flushed to false on initialization, and false when handling the flush. (close): Synchronized method. diffstat: 1 file changed, 20 insertions(+), 16 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 36 +++++----- diffs (98 lines): diff -r 86fab9e2bc64 -r fa7dd0d762f1 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Mon Oct 06 15:30:33 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Mon Oct 06 15:36:55 2008 -0400 @@ -51,7 +51,7 @@ public class PulseAudioSourceDataLine ex private PulseAudioVolumeControl volumeControl; private boolean muted; private float volume; - + boolean flushed = false; boolean drained = false; @@ -67,7 +67,7 @@ public class PulseAudioSourceDataLine ex } @Override - public void open(AudioFormat format, int bufferSize) + synchronized public void open(AudioFormat format, int bufferSize) throws LineUnavailableException { super.open(format, bufferSize); @@ -88,7 +88,9 @@ public class PulseAudioSourceDataLine ex } public byte[] native_setVolume(float value) { - return stream.native_setVolume(value); + synchronized (eventLoop.threadLock) { + return stream.native_setVolume(value); + } } public boolean isMuted() { @@ -103,7 +105,7 @@ public class PulseAudioSourceDataLine ex return this.volume; } - public void setVolume(float value) { + synchronized public void setVolume(float value) { this.volume = value; } @@ -155,20 +157,22 @@ public class PulseAudioSourceDataLine ex int sizeWritten = 0; + flushed = false; + boolean interrupted = false; while (remainingLength != 0) { synchronized (this) { - - if (!isStarted || !isOpen) { + + if (!isStarted || !isOpen) { return sizeWritten; } - + if (flushed) { + flushed = false; return sizeWritten; } - synchronized (eventLoop.threadLock) { @@ -264,7 +268,7 @@ public class PulseAudioSourceDataLine ex operation.waitForCompletion(); operation.releaseReference(); - + synchronized (this) { drained = true; } @@ -287,13 +291,13 @@ public class PulseAudioSourceDataLine ex operation.releaseReference(); synchronized (this) { - flushed= true; - } - - } - - @Override - public void close() { + flushed = true; + } + + } + + @Override + synchronized public void close() { if (!isOpen) { throw new IllegalStateException("not open so cant close"); } From omajid at redhat.com Mon Oct 6 12:42:18 2008 From: omajid at redhat.com (Omair Majid) Date: Mon, 06 Oct 2008 19:42:18 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-06 Omair Majid changeset 86fab9e2bc64 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=86fab9e2bc64 description: 2008-10-06 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java New variables flushed and drained. (write): Synchronized on this. (flush): Set flushed to true. (drain): Set drained to true. diffstat: 2 files changed, 61 insertions(+), 34 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 92 ++++++---- src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 3 diffs (139 lines): diff -r eb2d35a91b0d -r 86fab9e2bc64 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Mon Oct 06 11:31:34 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Mon Oct 06 15:30:33 2008 -0400 @@ -51,6 +51,9 @@ public class PulseAudioSourceDataLine ex private PulseAudioVolumeControl volumeControl; private boolean muted; private float volume; + + boolean flushed = false; + boolean drained = false; public PulseAudioSourceDataLine(EventLoop eventLoop, AudioFormat[] formats, AudioFormat defaultFormat) { @@ -156,43 +159,56 @@ public class PulseAudioSourceDataLine ex while (remainingLength != 0) { - synchronized (eventLoop.threadLock) { - - do { - availableSize = stream.getWritableSize(); - - if (availableSize < 0) { - return sizeWritten; + synchronized (this) { + + if (!isStarted || !isOpen) { + return sizeWritten; + } + + if (flushed) { + return sizeWritten; + } + + + synchronized (eventLoop.threadLock) { + + do { + availableSize = stream.getWritableSize(); + + if (availableSize < 0) { + return sizeWritten; + } + + if (availableSize == 0) { + try { + eventLoop.threadLock.wait(); + } catch (InterruptedException e) { + // ignore for now + interrupted = true; + } + + } + + } while (availableSize == 0); + + if (availableSize > remainingLength) { + availableSize = remainingLength; } - if (availableSize == 0) { - try { - eventLoop.threadLock.wait(); - } catch (InterruptedException e) { - // ignore for now - interrupted = true; - } - - } - - } while (availableSize == 0); - - if (availableSize > remainingLength) { - availableSize = remainingLength; + // only write entire frames, so round down avialableSize to + // a + // multiple of frameSize + availableSize = (availableSize / frameSize) * frameSize; + + /* write a little bit of the buffer */ + stream.write(data, position, availableSize); + + sizeWritten += availableSize; + position += availableSize; + remainingLength -= availableSize; + + framesSinceOpen += availableSize / frameSize; } - - // only write entire frames, so round down avialableSize to a - // multiple of frameSize - availableSize = (availableSize / frameSize) * frameSize; - - /* write a little bit of the buffer */ - stream.write(data, position, availableSize); - - sizeWritten += availableSize; - position += availableSize; - remainingLength -= availableSize; - - framesSinceOpen += availableSize / frameSize; } } @@ -248,6 +264,10 @@ public class PulseAudioSourceDataLine ex operation.waitForCompletion(); operation.releaseReference(); + + synchronized (this) { + drained = true; + } } @@ -266,6 +286,10 @@ public class PulseAudioSourceDataLine ex operation.waitForCompletion(); operation.releaseReference(); + synchronized (this) { + flushed= true; + } + } @Override diff -r eb2d35a91b0d -r 86fab9e2bc64 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Mon Oct 06 11:31:34 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Mon Oct 06 15:30:33 2008 -0400 @@ -151,6 +151,9 @@ public class PulseAudioTargetDataLine ex /* bytes read on each iteration of loop */ int bytesRead; + flushed = false; + drained = false; + /* * to read, we first take stuff from the fragmentBuffer */ From omajid at redhat.com Mon Oct 6 14:03:18 2008 From: omajid at redhat.com (Omair Majid) Date: Mon, 06 Oct 2008 21:03:18 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-06 Omair Majid changeset 6695cbc7fe43 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=6695cbc7fe43 description: 2008-10-06 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (read): Continue reading if peek returns null. * src/native/org_classpath_icedtea_pulseaudio_Stream.c (Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1peek): Return null if no data to read. diffstat: 2 files changed, 7 insertions(+), 1 deletion(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 3 ++- src/native/org_classpath_icedtea_pulseaudio_Stream.c | 5 +++++ diffs (32 lines): diff -r fa7dd0d762f1 -r 6695cbc7fe43 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Mon Oct 06 15:36:55 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Mon Oct 06 17:03:22 2008 -0400 @@ -219,11 +219,12 @@ public class PulseAudioTargetDataLine ex /* read a fragment, and drop it from the server */ currentFragment = stream.peek(); + stream.drop(); if (currentFragment == null) { System.out .println("DEBUG: PulseAudioTargetDataLine:read(): error in stream.peek()"); - return sizeRead; + continue; } bytesRead = Math.min(currentFragment.length, diff -r fa7dd0d762f1 -r 6695cbc7fe43 src/native/org_classpath_icedtea_pulseaudio_Stream.c --- a/src/native/org_classpath_icedtea_pulseaudio_Stream.c Mon Oct 06 15:36:55 2008 -0400 +++ b/src/native/org_classpath_icedtea_pulseaudio_Stream.c Mon Oct 06 17:03:22 2008 -0400 @@ -560,6 +560,11 @@ JNIEXPORT jbyteArray JNICALL Java_org_cl return NULL; } + /* no data available */ + if (startLocation == NULL) { + return NULL; + } + jsize length = count; jbyteArray data = (*env)->NewByteArray(env, length); From doko at ubuntu.com Tue Oct 7 05:12:33 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Tue, 07 Oct 2008 12:12:33 +0000 Subject: changeset in /hg/icedtea6: 2008-10-07 Matthias Klose changeset e4575e17609d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e4575e17609d description: 2008-10-07 Matthias Klose * Makefile.am: Don't rely on versioned cacao source directory. diffstat: 2 files changed, 7 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 4 +++- diffs (32 lines): diff -r d6c8840e4167 -r e4575e17609d ChangeLog --- a/ChangeLog Mon Oct 06 12:02:04 2008 +0200 +++ b/ChangeLog Tue Oct 07 14:11:49 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-06 Matthias Klose + + * Makefile.am: Don't rely on versioned cacao source directory. + 2008-10-06 Matthias Klose * generated/sun/misc/Version.java: Regenerate for 6b12. diff -r d6c8840e4167 -r e4575e17609d Makefile.am --- a/Makefile.am Mon Oct 06 12:02:04 2008 +0200 +++ b/Makefile.am Tue Oct 07 14:11:49 2008 +0200 @@ -533,6 +533,8 @@ if !USE_SYSTEM_CACAO then \ mkdir cacao ; \ $(TAR) xf $(CACAO_SRC_ZIP) -C cacao ; \ + dir=$$(basename cacao/cacao-*) ; \ + ln -s $$dir cacao/cacao ; \ fi endif endif @@ -1316,7 +1318,7 @@ stamps/cacao.stamp: stamps/extract.stamp stamps/cacao.stamp: stamps/extract.stamp stamps/rt-class-files.stamp if WITH_CACAO if !USE_SYSTEM_CACAO - cd cacao/cacao-$(CACAO_VERSION) && \ + cd cacao/cacao && \ ./configure \ --prefix=$(abs_top_builddir)/cacao/install \ --with-java-runtime-library=openjdk \ From gbenson at redhat.com Tue Oct 7 08:16:21 2008 From: gbenson at redhat.com (Gary Benson) Date: Tue, 07 Oct 2008 15:16:21 +0000 Subject: changeset in /hg/icedtea6: 2008-10-07 Gary Benson changeset ab8aa9425fc4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ab8aa9425fc4 description: 2008-10-07 Gary Benson Andrew Haley * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp (object): Add missing return statement. (displaced_header): Likewise. * ports/hotspot/build/linux/makefiles/shark.make: Remove workaround for the above. diffstat: 3 files changed, 12 insertions(+), 8 deletions(-) ChangeLog | 10 ++++++++++ ports/hotspot/build/linux/makefiles/shark.make | 6 ------ ports/hotspot/src/share/vm/shark/sharkMonitor.hpp | 4 ++-- diffs (54 lines): diff -r e4575e17609d -r ab8aa9425fc4 ChangeLog --- a/ChangeLog Tue Oct 07 14:11:49 2008 +0200 +++ b/ChangeLog Tue Oct 07 11:16:16 2008 -0400 @@ -1,3 +1,13 @@ 2008-10-07 Matthias Klose + Andrew Haley + + * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp + (object): Add missing return statement. + (displaced_header): Likewise. + + * ports/hotspot/build/linux/makefiles/shark.make: + Remove workaround for the above. + 2008-10-07 Matthias Klose * Makefile.am: Don't rely on versioned cacao source directory. diff -r e4575e17609d -r ab8aa9425fc4 ports/hotspot/build/linux/makefiles/shark.make --- a/ports/hotspot/build/linux/makefiles/shark.make Tue Oct 07 14:11:49 2008 +0200 +++ b/ports/hotspot/build/linux/makefiles/shark.make Tue Oct 07 11:16:16 2008 -0400 @@ -31,12 +31,6 @@ VM_SUBDIR = server CFLAGS += -DSHARK -# Something these files fail with GCC at higher optimization levels. -# An llvm::Value ends up NULL, causing segfaults in LLVM when it is -# used. Observed with 4.1.2 20070925 (Red Hat 4.1.2-33) and 4.3.2. -OPT_CFLAGS/sharkBlock.o = -O0 -OPT_CFLAGS/sharkMonitor.o = -O0 - # Something in this file fails with GCC at higher optimization levels. # The part of ciTypeFlow::StateVector::meet_exception() that fills in # local variables stops part way through leaving the rest set to T_TOP diff -r e4575e17609d -r ab8aa9425fc4 ports/hotspot/src/share/vm/shark/sharkMonitor.hpp --- a/ports/hotspot/src/share/vm/shark/sharkMonitor.hpp Tue Oct 07 14:11:49 2008 +0200 +++ b/ports/hotspot/src/share/vm/shark/sharkMonitor.hpp Tue Oct 07 11:16:16 2008 -0400 @@ -67,7 +67,7 @@ class SharkMonitor : public ResourceObj public: llvm::Value* object() const { - builder()->CreateLoad(object_addr()); + return builder()->CreateLoad(object_addr()); } void set_object(llvm::Value* object) const { @@ -75,7 +75,7 @@ class SharkMonitor : public ResourceObj } llvm::Value* displaced_header() const { - builder()->CreateLoad(displaced_header_addr()); + return builder()->CreateLoad(displaced_header_addr()); } void set_displaced_header(llvm::Value* displaced_header) const { From omajid at redhat.com Tue Oct 7 09:06:26 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 07 Oct 2008 16:06:26 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-07 Omair Majid changeset e688b471726e in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=e688b471726e description: 2008-10-07 Omair Majid * src/native/jni-common.h Grouped related functions together. Added sections in file. Added two constants ILLEGAL_STATE_EXCEPTION and ILLEGAL_ARGUMENT_EXCEPTION to make it easiser to throw exceptions. * src/native/org_classpath_icedtea_pulseaudio_Stream.c (Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1read): Removed commented function. (drain_callback): Throw an exception instaed of an assert if the operation failed. (cork_callback): Likewise. (flush_callback): Likewise. (trigger_callback): Likewise. (set_name_callback): Likewise. (set_buffer_attr_callback): Likewise. (update_sample_rate_callback): Likewise diffstat: 2 files changed, 100 insertions(+), 83 deletions(-) src/native/jni-common.h | 27 ++- src/native/org_classpath_icedtea_pulseaudio_Stream.c | 156 +++++++++--------- diffs (302 lines): diff -r 6695cbc7fe43 -r e688b471726e src/native/jni-common.h --- a/src/native/jni-common.h Mon Oct 06 17:03:22 2008 -0400 +++ b/src/native/jni-common.h Tue Oct 07 11:31:39 2008 -0400 @@ -49,6 +49,21 @@ typedef struct java_context_t { jobject obj; } java_context_t; +/* Exception Handling */ + +void throwByName(JNIEnv* const env, const char* const name, + const char* const msg); + +#define ILLEGAL_ARGUMENT_EXCEPTION "java/lang/IllegalArgumentException" +#define ILLEGAL_STATE_EXCEPTION "java/lang/IllegalStateException" + +/* Threading and Synchronization */ + +jobject getLockObject(JNIEnv* env); +void notifyWaitingOperations(JNIEnv* env); + +/* Storing and Loading Values */ + jint getJavaIntField(JNIEnv* env, jobject obj, char* fieldName); void setJavaIntField(JNIEnv* env, jobject obj, char* fieldName, jint value); @@ -59,13 +74,7 @@ void setJavaByteArrayField(JNIEnv* env, void setJavaByteArrayField(JNIEnv* env, jobject obj, char* name, jbyteArray array); -void callJavaVoidMethod(JNIEnv* env, jobject obj, const char* method_name); - -void throwByName(JNIEnv* const env, const char* const name, - const char* const msg); - -jobject getLockObject(JNIEnv* env); -void notifyWaitingOperations(JNIEnv* env); +/* Pointers and Java */ void* getJavaPointer(JNIEnv* env, jobject obj, char* name); void setJavaPointer(JNIEnv* env, jobject obj, char*name, void* pointer_value); @@ -73,5 +82,9 @@ void* convertJavaPointerToNative(JNIEnv* void* convertJavaPointerToNative(JNIEnv* env, jbyteArray pointer); jbyteArray convertNativePointerToJava(JNIEnv* env, void* pointer); +/* Calling Java Functions */ + +void callJavaVoidMethod(JNIEnv* env, jobject obj, const char* method_name); + #endif diff -r 6695cbc7fe43 -r e688b471726e src/native/org_classpath_icedtea_pulseaudio_Stream.c --- a/src/native/org_classpath_icedtea_pulseaudio_Stream.c Mon Oct 06 17:03:22 2008 -0400 +++ b/src/native/org_classpath_icedtea_pulseaudio_Stream.c Tue Oct 07 11:31:39 2008 -0400 @@ -401,15 +401,14 @@ JNIEXPORT jint JNICALL Java_org_classpat jbyteArray volumePointer, jbyteArray sync_streamPointer) { pa_stream *sync_stream; - if(sync_streamPointer != NULL) { - sync_stream = convertJavaPointerToNative(env, sync_streamPointer); - printf("Master stream is %p\n", sync_stream); - } else { - sync_stream = NULL; - } - - pa_stream* stream = (pa_stream*) getJavaPointer(env, obj, STREAM_POINTER); - + if(sync_streamPointer != NULL) { + sync_stream = convertJavaPointerToNative(env, sync_streamPointer); + printf("Master stream is %p\n", sync_stream); + } else { + sync_stream = NULL; + } + + pa_stream* stream = (pa_stream*) getJavaPointer(env, obj, STREAM_POINTER); pa_buffer_attr buffer_attr; @@ -436,8 +435,8 @@ JNIEXPORT jint JNICALL Java_org_classpat } } /* Set flags to 0 to fix problem with draining before calling start, might need to - be changed back to PA_STREAM_START_CORKED in the future, if we'll be able to implement - synchronization*/ + be changed back to PA_STREAM_START_CORKED in the future, if we'll be able to implement + synchronization*/ int value = pa_stream_connect_playback(stream, dev, &buffer_attr, 0, NULL, sync_stream); if (dev != NULL) { @@ -526,24 +525,6 @@ JNIEXPORT jint JNICALL Java_org_classpat } /* -JNIEXPORT jint JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1read -(JNIEnv *env, jobject obj, jbyteArray array, jint length, jint offset) { - pa_stream *stream = getJavaPointer(env, obj, STREAM_POINTER); - assert(stream); - const void *read_data = NULL; - size_t read_length = 0; - pa_stream_peek(stream, &read_data, &read_length); - if (length < read_length) { - read_length = length; - } - - (*env)->SetByteArrayRegion(env, array, offset, read_length, read_data); - pa_stream_drop(stream); - return read_length; -} -*/ - -/* * Class: org_classpath_icedtea_pulseaudio_Stream * Method: native_pa_stream_peek * Signature: ()[B @@ -564,7 +545,7 @@ JNIEXPORT jbyteArray JNICALL Java_org_cl if (startLocation == NULL) { return NULL; } - + jsize length = count; jbyteArray data = (*env)->NewByteArray(env, length); @@ -616,48 +597,56 @@ JNIEXPORT jint JNICALL Java_org_classpat static void drain_callback(pa_stream* stream, int success, void* userdata) { - assert(success); + assert(stream); + JNIEnv* env = pulse_thread_env; + assert(env); + + notifyWaitingOperations(env); + + if (success == 0) { + throwByName(env, ILLEGA_STATE_EXCEPTION, "drain failed"); + } + +} + +/* + * Class: org_classpath_icedtea_pulseaudio_Stream + * Method: native_pa_stream_drain + * Signature: ()[B + */ +JNIEXPORT jbyteArray JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1drain +(JNIEnv* env, jobject obj) { + pa_stream* stream = (pa_stream*)getJavaPointer(env, obj, STREAM_POINTER); + assert(stream); + pa_operation* operation = pa_stream_drain(stream, drain_callback, NULL); + assert(operation); + return convertNativePointerToJava(env, operation); +} + +/* + * Class: org_classpath_icedtea_pulseaudio_Stream + * Method: native_pa_stream_is_corked + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1is_1corked +(JNIEnv* env, jobject obj) { + pa_stream* stream = (pa_stream*) getJavaPointer(env, obj, STREAM_POINTER); + assert(stream); + return pa_stream_is_corked(stream); +} + +static void cork_callback(pa_stream* stream, int success, void* userdata) { + + java_context* context = userdata; + assert(stream); + assert(context); JNIEnv* env = pulse_thread_env; assert(env); notifyWaitingOperations(env); -} - -/* - * Class: org_classpath_icedtea_pulseaudio_Stream - * Method: native_pa_stream_drain - * Signature: ()[B - */ -JNIEXPORT jbyteArray JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1drain -(JNIEnv* env, jobject obj) { - pa_stream* stream = (pa_stream*)getJavaPointer(env, obj, STREAM_POINTER); - assert(stream); - pa_operation* operation = pa_stream_drain(stream, drain_callback, NULL); - assert(operation); - return convertNativePointerToJava(env, operation); -} - -/* - * Class: org_classpath_icedtea_pulseaudio_Stream - * Method: native_pa_stream_is_corked - * Signature: ()I - */ -JNIEXPORT jint JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1is_1corked -(JNIEnv* env, jobject obj) { - pa_stream* stream = (pa_stream*) getJavaPointer(env, obj, STREAM_POINTER); - assert(stream); - return pa_stream_is_corked(stream); -} - -static void cork_callback(pa_stream* stream, int success, void* userdata) { - - java_context* context = userdata; - assert(stream); - assert(context); - assert(success); - JNIEnv* env = pulse_thread_env; - assert(env); - notifyWaitingOperations(env); + if (success == 0) { + throwByName(env, ILLEGAL_STATE_EXCEPTION, "cork failed"); + } } @@ -680,11 +669,15 @@ JNIEXPORT jbyteArray JNICALL Java_org_cl } static void flush_callback(pa_stream* stream, int success, void* userdata) { - assert(success); + assert(stream); JNIEnv* env = pulse_thread_env; assert(env); notifyWaitingOperations(env); + if (success == 0) { + throwByName(env, ILLEGAL_STATE_EXCEPTION, "flush failed"); + } + } /* @@ -702,11 +695,15 @@ JNIEXPORT jbyteArray JNICALL Java_org_cl } static void trigger_callback(pa_stream* stream, int success, void* userdata) { - assert(success); + assert(stream); JNIEnv* env = pulse_thread_env; assert(env); notifyWaitingOperations(env); + if (success == 0) { + throwByName(env, ILLEGAL_STATE_EXCEPTION, "trigger failed"); + } + } /* @@ -724,10 +721,13 @@ JNIEXPORT jbyteArray JNICALL Java_org_cl } static void set_name_callback(pa_stream* stream, int success, void* userdata) { - assert(success); + assert(stream); JNIEnv* env = pulse_thread_env; notifyWaitingOperations(env); + if (success == 0) { + throwByName(env, ILLEGAL_STATE_EXCEPTION, "set_name failed"); + } } /* @@ -856,14 +856,14 @@ static void set_buffer_attr_callback(pa_ static void set_buffer_attr_callback(pa_stream* stream, int success, void* userdata) { - const pa_buffer_attr* buffer = pa_stream_get_buffer_attr(stream); - assert(buffer); - - assert(success); + assert(stream); JNIEnv* env = pulse_thread_env; assert(env); notifyWaitingOperations(env); + if (success == 0) { + throwByName(env, ILLEGAL_STATE_EXCEPTION, "set_buffer_attr failed"); + } } /* @@ -918,11 +918,15 @@ JNIEXPORT jbyteArray JNICALL Java_org_cl static void update_sample_rate_callback(pa_stream* stream, int success, void* userdata) { - assert(success); + assert(stream); JNIEnv* env = pulse_thread_env; assert(env); notifyWaitingOperations(env); + if (success == 0) { + throwByName(eng, ILLEGAL_STATE_EXCEPTION, "update_sampl_rate failed"); + } + } /* * Class: org_classpath_icedtea_pulseaudio_Stream From omajid at redhat.com Tue Oct 7 09:06:26 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 07 Oct 2008 16:06:26 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-07 Omair Majid changeset d7c213ee6717 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=d7c213ee6717 description: 2008-10-07 Omair Majid * src/native/org_classpath_icedtea_pulseaudio_Stream.c (drain_callback): Fixed typo. (update_sample_rate_callback): Likewise. diffstat: 1 file changed, 2 insertions(+), 2 deletions(-) src/native/org_classpath_icedtea_pulseaudio_Stream.c | 4 ++-- diffs (21 lines): diff -r e688b471726e -r d7c213ee6717 src/native/org_classpath_icedtea_pulseaudio_Stream.c --- a/src/native/org_classpath_icedtea_pulseaudio_Stream.c Tue Oct 07 11:31:39 2008 -0400 +++ b/src/native/org_classpath_icedtea_pulseaudio_Stream.c Tue Oct 07 12:06:29 2008 -0400 @@ -604,7 +604,7 @@ static void drain_callback(pa_stream* st notifyWaitingOperations(env); if (success == 0) { - throwByName(env, ILLEGA_STATE_EXCEPTION, "drain failed"); + throwByName(env, ILLEGAL_STATE_EXCEPTION, "drain failed"); } } @@ -924,7 +924,7 @@ static void update_sample_rate_callback( notifyWaitingOperations(env); if (success == 0) { - throwByName(eng, ILLEGAL_STATE_EXCEPTION, "update_sampl_rate failed"); + throwByName(env, ILLEGAL_STATE_EXCEPTION, "update_sampl_rate failed"); } } From omajid at redhat.com Tue Oct 7 11:08:18 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 07 Oct 2008 18:08:18 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-07 Omair Majid changeset c080309b8edd in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=c080309b8edd description: 2008-10-07 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (writeFrames): Synchronized the call to notifyAll. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (addStreamListeners): Likewise. diffstat: 2 files changed, 17 insertions(+), 23 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 4 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 36 +++------- diffs (112 lines): diff -r d7c213ee6717 -r c080309b8edd src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 07 12:06:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 07 14:08:22 2008 -0400 @@ -125,7 +125,9 @@ public class PulseAudioClip extends Puls WriteListener writeListener = new WriteListener() { @Override public void update() { - eventLoop.threadLock.notifyAll(); + synchronized (eventLoop.threadLock) { + eventLoop.threadLock.notifyAll(); + } } }; diff -r d7c213ee6717 -r c080309b8edd src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 07 12:06:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 07 14:08:22 2008 -0400 @@ -58,9 +58,8 @@ public abstract class PulseAudioDataLine // true between start() and stop() protected boolean isStarted = false; - //true between a started and an underflow callback + // true between a started and an underflow callback protected boolean dataWritten = false; - // true if a stream has been paused // protected boolean isPaused = false; @@ -161,10 +160,9 @@ public abstract class PulseAudioDataLine Stream.UnderflowListener stoppedListener = new Stream.UnderflowListener() { @Override - public void update() { dataWritten = false; - System.out.println("underflow"); + // always send a STOP event on an underflow (assumption: // an underflow can't happen while the stream is corked) fireLineEvent(new LineEvent(PulseAudioDataLine.this, @@ -176,10 +174,9 @@ public abstract class PulseAudioDataLine Stream.PlaybackStartedListener startedListener = new Stream.PlaybackStartedListener() { @Override public void update() { - System.out.println("started callback"); - - //only send a START event in the beginning and following - //an underflow + + // only send a START event in the beginning and following + // an underflow if (!dataWritten) { fireLineEvent(new LineEvent(PulseAudioDataLine.this, LineEvent.Type.START, framesSinceOpen)); @@ -196,8 +193,9 @@ public abstract class PulseAudioDataLine @Override public void update() { - // System.out.println("can write"); - eventLoop.threadLock.notifyAll(); + synchronized (eventLoop.threadLock) { + eventLoop.threadLock.notifyAll(); + } } }; @@ -207,8 +205,9 @@ public abstract class PulseAudioDataLine @Override public void update() { - - eventLoop.threadLock.notifyAll(); + synchronized (eventLoop.threadLock) { + eventLoop.threadLock.notifyAll(); + } } }; @@ -314,10 +313,9 @@ public abstract class PulseAudioDataLine if (isStarted) { return; - - } - - + + } + Operation op; synchronized (eventLoop.threadLock) { op = stream.unCork(); @@ -330,7 +328,6 @@ public abstract class PulseAudioDataLine op.waitForCompletion(); op.releaseReference(); isStarted = true; - } @@ -427,11 +424,6 @@ public abstract class PulseAudioDataLine public void setName(String streamName) { if (isOpen) { - /* - * Note: setting the name of the stream after it's created wont - * work. In fact, it sets the name of the application! This is a bug - * in PulseAudio 0.9.12 but fixed in git. - */ Operation o; synchronized (eventLoop.threadLock) { From bugzilla-daemon at icedtea.classpath.org Tue Oct 7 11:49:23 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Oct 2008 18:49:23 +0000 Subject: [Bug 206] New: Eclipse crashes Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=206 Summary: Eclipse crashes Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: critical Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: marc at marcchamberlin.com I guess I am suppose to report this here... I keep getting crashes in Eclipse Version: 3.4.1 Build id: M20080911-1700 These crashes occur at an unpredictable moment, dunno if each crash is related. HUMP! Well I would have included the log file but this version of Bugzilla will neither let me append it to this description (too long) nor does is have the ability to attach a separate file to a report. If you want me to send it in, then send me an email telling where... I will hang on to it for a month or so.. I have appended the first part of the log file... Marc.. # # An unexpected error has been detected by Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007fcd30fd5e1a, pid=12902, tid=1088575824 # # Java VM: OpenJDK 64-Bit Server VM (1.6.0-b09 mixed mode linux-amd64) # Problematic frame: # V [libjvm.so+0x200e1a] # # If you would like to submit a bug report, please visit: # http://icedtea.classpath.org/bugzilla # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Tue Oct 7 14:17:39 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 07 Oct 2008 21:17:39 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-07 Omair Majid changeset a4ec901897a5 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=a4ec901897a5 description: 2008-10-07 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java (static): Use System.loadLibrary instead of System.load. diffstat: 1 file changed, 1 insertion(+), 12 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 13 ---------- diffs (30 lines): diff -r c080309b8edd -r a4ec901897a5 src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Tue Oct 07 14:08:22 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Tue Oct 07 17:17:31 2008 -0400 @@ -37,8 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; - import javax.sound.sampled.AudioSystem; import javax.sound.sampled.LineEvent; import javax.sound.sampled.LineUnavailableException; @@ -66,16 +64,7 @@ public abstract class PulseAudioPort ext private PulseAudioVolumeControl volumeControl; static { - try { - String library = new java.io.File(".").getCanonicalPath() - + java.io.File.separatorChar - + System.mapLibraryName("pulse-java"); - // System.out.println(PulseAudioVolumeControl.class.getCanonicalName() - // + ": " + library); - System.load(library); - } catch (IOException e) { - assert ("Loading failed".endsWith("library")); - } + System.loadLibrary("pulse-java"); } public PulseAudioPort(String name, EventLoop eventLoop) { From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 01:17:51 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 08:17:51 +0000 Subject: [Bug 206] Eclipse crashes Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=206 ------- Comment #1 from matthew.flaschen at gatech.edu 2008-10-08 08:17 ------- Click "Create a New Attachment"... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 01:49:07 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 08:49:07 +0000 Subject: [Bug 206] Eclipse crashes Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=206 ------- Comment #2 from mark at klomp.org 2008-10-08 08:49 ------- This seems to be a really old IcedTea, based on openjdk b09. This is most likely a duplicate of bug #180. Could you try with a newer version? BTW. Attachements can only be added after the bug is created. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Wed Oct 8 07:10:20 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 14:10:20 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset c9645471db6c in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=c9645471db6c description: 2008-10-08 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (isSynchronizationSupported): Return false. (synchronize): Commented out non-working code. Throw exception instead. diffstat: 1 file changed, 35 insertions(+), 32 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 67 +++++----- diffs (81 lines): diff -r a4ec901897a5 -r c9645471db6c src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Tue Oct 07 17:17:31 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 10:09:48 2008 -0400 @@ -393,42 +393,45 @@ public class PulseAudioMixer implements @Override public boolean isSynchronizationSupported(Line[] lines, boolean maintainSync) { - // FIXME - return true; + return false; } @Override public void synchronize(Line[] lines, boolean maintainSync) { - Line masterStream = null; - for (Line line : lines) { - if (line.isOpen()) { - masterStream = line; - break; - } - } - if (masterStream == null) { - // for now, can't synchronize lines if none of them is open (no - // stream pointer to pass) - // will see what to do about this later - throw new IllegalArgumentException(); - } - - try { - - for (Line line : lines) { - if (line != masterStream) { - - ((PulseAudioDataLine) line) - .reconnectforSynchronization(((PulseAudioDataLine) masterStream) - .getStream()); - - } - } - } catch (LineUnavailableException e) { - // we couldn't reconnect, so tell the user we failed by throwing an - // exception - throw new IllegalArgumentException(e); - } + + throw new IllegalArgumentException( + "Mixer does not support synchronizing lines"); + + // Line masterStream = null; + // for (Line line : lines) { + // if (line.isOpen()) { + // masterStream = line; + // break; + // } + // } + // if (masterStream == null) { + // // for now, can't synchronize lines if none of them is open (no + // // stream pointer to pass) + // // will see what to do about this later + // throw new IllegalArgumentException(); + // } + // + // try { + // + // for (Line line : lines) { + // if (line != masterStream) { + // + // ((PulseAudioDataLine) line) + // .reconnectforSynchronization(((PulseAudioDataLine) masterStream) + // .getStream()); + // + // } + // } + // } catch (LineUnavailableException e) { + // // we couldn't reconnect, so tell the user we failed by throwing an + // // exception + // throw new IllegalArgumentException(e); + // } } From omajid at redhat.com Wed Oct 8 07:19:40 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 14:19:40 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset 96e885ef985c in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=96e885ef985c description: 2008-10-08 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getMaxLines): Return AudioSystem.NOT_SPECIFIED only for supported formats. diffstat: 1 file changed, 10 insertions(+), 2 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 12 ++++++++-- diffs (22 lines): diff -r c9645471db6c -r 96e885ef985c src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 10:09:48 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 10:19:48 2008 -0400 @@ -316,8 +316,16 @@ public class PulseAudioMixer implements } @Override - public int getMaxLines(javax.sound.sampled.Line.Info info) { - return AudioSystem.NOT_SPECIFIED; + public int getMaxLines(Line.Info info) { + /* + * PulseAudio supports (theoretically) unlimited number of streams for + * supported formats + */ + if (isLineSupported(info)) { + return AudioSystem.NOT_SPECIFIED; + } + + return 0; } @Override From omajid at redhat.com Wed Oct 8 07:38:25 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 14:38:25 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset a3a8e9e19967 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=a3a8e9e19967 description: 2008-10-08 Omair Majid * unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java (testSynchronizationNotSupported): Checks that synchronization isnt allowed by the mixer. diffstat: 1 file changed, 37 insertions(+) unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 37 ++++++++++ diffs (54 lines): diff -r 96e885ef985c -r a3a8e9e19967 unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 10:19:48 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 10:38:29 2008 -0400 @@ -45,6 +45,7 @@ import javax.sound.sampled.LineUnavailab import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.Mixer; import javax.sound.sampled.Port; +import javax.sound.sampled.SourceDataLine; import javax.sound.sampled.TargetDataLine; import org.junit.After; @@ -366,6 +367,42 @@ public class PulseAudioMixerTest { } @Test + public void testSynchronizationNotSupported() + throws LineUnavailableException { + selectedMixer.open(); + + SourceDataLine line1 = (SourceDataLine) selectedMixer + .getLine(new Line.Info(SourceDataLine.class)); + SourceDataLine line2 = (SourceDataLine) selectedMixer + .getLine(new Line.Info(SourceDataLine.class)); + Line[] lines = { line1, line2 }; + + Assert.assertFalse(selectedMixer + .isSynchronizationSupported(lines, true)); + + Assert.assertFalse(selectedMixer.isSynchronizationSupported(lines, + false)); + + try { + selectedMixer.synchronize(lines, true); + Assert.fail("mixer shouldnt be able to synchronize lines"); + } catch (IllegalArgumentException e) { + + } + + try { + selectedMixer.synchronize(lines, false); + Assert.fail("mixer shouldnt be able to synchronize lines"); + } catch (IllegalArgumentException e) { + + } + + selectedMixer.close(); + + } + + @Ignore + @Test public void testLongWait() throws LineUnavailableException { selectedMixer.open(); try { From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 11:08:45 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 18:08:45 +0000 Subject: [Bug 206] Eclipse crashes Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=206 ------- Comment #3 from marc at marcchamberlin.com 2008-10-08 18:08 ------- Created an attachment (id=107) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=107&action=view) Log file from Eclipse crash -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 11:10:12 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 18:10:12 +0000 Subject: [Bug 206] Eclipse crashes Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=206 ------- Comment #4 from marc at marcchamberlin.com 2008-10-08 18:10 ------- Aw I see the "Create a New Attachment" now... bit confusing that Bugzilla does not offer that initially when creating a new bug report... Anywise I will attach the log file so it can be examined and if this is a duplicate of an already reported bug then ok by me to mark as resolved... I think I will not be using this flavor of Java after all however.. it now appears that I will need to use an Enterprise Edition of Java JDK or SDK so will go look at IBM's Geronimo or Sun's GlassFish versions and install one of those instead... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 11:21:13 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 18:21:13 +0000 Subject: [Bug 180] JVM crash while running Eclipse 3.4 on Fedora 9 (x86_64) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=180 mark at klomp.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |marc at marcchamberlin.com ------- Comment #8 from mark at klomp.org 2008-10-08 18:21 ------- *** Bug 206 has been marked as a duplicate of this bug. *** -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 11:21:13 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 18:21:13 +0000 Subject: [Bug 206] Eclipse crashes Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=206 mark at klomp.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |DUPLICATE ------- Comment #5 from mark at klomp.org 2008-10-08 18:21 ------- DataTreeNode.forwardDeltaWith hotspot crash is indeed a duplicate of bug #180. Please upgrade to a newer icedtea version. *** This bug has been marked as a duplicate of bug 180 *** -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From iivan at redhat.com Wed Oct 8 11:35:49 2008 From: iivan at redhat.com (Ioana Ivan) Date: Wed, 08 Oct 2008 18:35:49 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Ioana Ivan changeset 4260a476a101 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=4260a476a101 description: 2008-10-08 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (addStreamListener): startedListener always fires a START event strtedListener notifies drain that there is data on the line (stop): sets writeInterrupted to true (start): doesn't send any events (getBytesInBuffer): new function, returns the number of bytes currently present in a stream's buffer * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java: (write): -checks writeInterrupted instead of drain and flush -if stop() was called before write() it writes data to the buffer until the buffer fills, then blocks -moved some code from the synchronized(this) block, since it was causing one test to hang (close): sets writeInterrupted to true (drain): sets writeInterrupted to true if the line is stopped and there is no data on the line, returns immediately, if there is data, blocks until the line is started * src/java/org/classpath/icedtea/pulseaudio/Stream.java (native_pa_stream_updateTimingInfo): new function ( bytesInBuffer): new function * src/native/org_classpath_icedtea_pulseaudio_Stream.c (JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_bytesInBuffer): new function (Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1updateTimingInfo): new function (update_timing_info_callback): new function (Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1writable_1size): return 0 if the stream has been closed diffstat: 12 files changed, 254 insertions(+), 102 deletions(-) ChangeLog | 36 ++ configure.ac | 6 src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 4 src/java/org/classpath/icedtea/pulseaudio/Operation.java | 1 src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 41 +-- src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 1 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 136 +++++----- src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 2 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 2 src/java/org/classpath/icedtea/pulseaudio/Stream.java | 16 + src/native/org_classpath_icedtea_pulseaudio_Stream.c | 44 +++ unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java | 67 +++- diffs (truncated from 695 to 500 lines): diff -r a3a8e9e19967 -r 4260a476a101 ChangeLog --- a/ChangeLog Wed Oct 08 10:38:29 2008 -0400 +++ b/ChangeLog Wed Oct 08 14:27:39 2008 -0400 @@ -1,3 +1,39 @@ 2008-09-25 Ioana Ivan +2008-10-08 Ioana Ivan + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (addStreamListener): startedListener always fires a START event + strtedListener notifies drain that there is data + on the line + (stop): sets writeInterrupted to true + (start): doesn't send any events + (getBytesInBuffer): new function, returns the number of bytes + currently present in a stream's buffer + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java: + (write): -checks writeInterrupted instead of drain and flush + -if stop() was called before write() it writes data to the + buffer until the buffer fills, then blocks + -moved some code from the synchronized(this) block, since it + was causing one test to hang + (close): sets writeInterrupted to true + (drain): sets writeInterrupted to true + if the line is stopped and there is no data on the line, + returns immediately, if there is data, blocks until the line + is started + + * src/java/org/classpath/icedtea/pulseaudio/Stream.java + (native_pa_stream_updateTimingInfo): new function + ( bytesInBuffer): new function + + * src/native/org_classpath_icedtea_pulseaudio_Stream.c + (JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_bytesInBuffer): + new function + (Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1updateTimingInfo): + new function + (update_timing_info_callback): new function + (Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1writable_1size): + return 0 if the stream has been closed + + 2008-09-25 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java: removed all references to the boolean variable corked since it was diff -r a3a8e9e19967 -r 4260a476a101 configure.ac --- a/configure.ac Wed Oct 08 10:38:29 2008 -0400 +++ b/configure.ac Wed Oct 08 14:27:39 2008 -0400 @@ -4,12 +4,12 @@ AC_PROG_LIBTOOL AC_PROG_LIBTOOL dnl Check for pulseaudio libraries. -PKG_CHECK_MODULES(LIBPULSE,[libpulse >= 0.9.11],[LIBPULSE_FOUND=yes] +PKG_CHECK_MODULES(LIBPULSE,libpulse,[LIBPULSE_FOUND=yes] ,[LIBPULSE_FOUND=no]) if test "x${LIBPULSE_FOUND}" = xno then - AC_MSG_ERROR([Could not find pulseaudio>=0.9.11 libraries - \ - Try installing pulseaudio-libs-devel>=0.9.11.]) + AC_MSG_ERROR([Could not find pulseaudio libraries - \ + Try installing pulseaudio-libs-devel.]) fi AC_SUBST(LIBPULSE_CFLAGS) AC_SUBST(LIBPULSE_LIBS) diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/EventLoop.java --- a/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Wed Oct 08 14:27:39 2008 -0400 @@ -37,6 +37,7 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Semaphore; @@ -105,7 +106,7 @@ public class EventLoop implements Runnab */ static { - System.loadLibrary("pulse-java"); + System.loadLibrary("pulse-java"); } private EventLoop() { @@ -197,6 +198,7 @@ public class EventLoop implements Runnab break; case 5: fireEvent(new ContextEvent(Type.FAILED)); + System.out.println("context failed"); break; case 6: fireEvent(new ContextEvent(Type.TERMINATED)); diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/Operation.java --- a/src/java/org/classpath/icedtea/pulseaudio/Operation.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Operation.java Wed Oct 08 14:27:39 2008 -0400 @@ -37,6 +37,7 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import java.io.IOException; /* * Encapsulates a pa_operation object diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 08 14:27:39 2008 -0400 @@ -76,6 +76,7 @@ public abstract class PulseAudioDataLine protected EventLoop eventLoop = null; protected Semaphore semaphore = new Semaphore(0); protected Stream stream; + boolean writeInterrupted = false; protected void open(AudioFormat format, int bufferSize) throws LineUnavailableException { @@ -149,6 +150,9 @@ public abstract class PulseAudioDataLine PulseAudioDataLine.this, LineEvent.Type.CLOSE, framesSinceOpen))); } + synchronized (this) { + this.notifyAll(); + } semaphore.release(); } @@ -174,15 +178,13 @@ public abstract class PulseAudioDataLine Stream.PlaybackStartedListener startedListener = new Stream.PlaybackStartedListener() { @Override public void update() { - - // only send a START event in the beginning and following - // an underflow - if (!dataWritten) { - fireLineEvent(new LineEvent(PulseAudioDataLine.this, - LineEvent.Type.START, framesSinceOpen)); - } + fireLineEvent(new LineEvent(PulseAudioDataLine.this, + LineEvent.Type.START, framesSinceOpen)); dataWritten = true; + synchronized (this) { + this.notifyAll(); + } } }; @@ -260,6 +262,7 @@ public abstract class PulseAudioDataLine } public void close() { + if (!isOpen) { throw new IllegalStateException( "Line must be open for close() to work"); @@ -280,10 +283,10 @@ public abstract class PulseAudioDataLine } super.close(); + isStarted = false; - - } - + } + public void reconnectforSynchronization(Stream masterStream) throws LineUnavailableException { sendEvents = false; @@ -319,10 +322,6 @@ public abstract class PulseAudioDataLine Operation op; synchronized (eventLoop.threadLock) { op = stream.unCork(); - if (dataWritten && (!isStarted)) { - fireLineEvent(new LineEvent(PulseAudioDataLine.this, - LineEvent.Type.START, framesSinceOpen)); - } } op.waitForCompletion(); @@ -331,16 +330,18 @@ public abstract class PulseAudioDataLine } + public synchronized void stop() { if (!isOpen) { throw new IllegalStateException( "Line must be open()ed before it can be start()ed"); } + writeInterrupted = true; if (!isStarted) { return; } - isStarted = true; + Operation op; synchronized (eventLoop.threadLock) { op = stream.cork(); @@ -442,4 +443,14 @@ public abstract class PulseAudioDataLine return streamName; } + public int getBytesInBuffer() { + Operation o; + synchronized (eventLoop.threadLock) { + o = stream.updateTimingInfo(); + } + o.waitForCompletion(); + o.releaseReference(); + return stream.bytesInBuffer(); + } + } diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 14:27:39 2008 -0400 @@ -401,6 +401,7 @@ public class PulseAudioMixer implements @Override public boolean isSynchronizationSupported(Line[] lines, boolean maintainSync) { + return false; } diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Wed Oct 08 14:27:39 2008 -0400 @@ -44,6 +44,8 @@ import javax.sound.sampled.LineUnavailab import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.SourceDataLine; +import org.classpath.icedtea.pulseaudio.Operation.State; + public class PulseAudioSourceDataLine extends PulseAudioDataLine implements SourceDataLine, PulseAudioPlaybackLine { @@ -51,9 +53,6 @@ public class PulseAudioSourceDataLine ex private PulseAudioVolumeControl volumeControl; private boolean muted; private float volume; - - boolean flushed = false; - boolean drained = false; public PulseAudioSourceDataLine(EventLoop eventLoop, AudioFormat[] formats, AudioFormat defaultFormat) { @@ -134,6 +133,10 @@ public class PulseAudioSourceDataLine ex public int write(byte[] data, int offset, int length) { // can't call write() without open()ing first, but can call write() // without start()ing + synchronized (this) { + writeInterrupted = false; + } + if (!isOpen) { throw new IllegalStateException("must call open() before write()"); } @@ -157,62 +160,57 @@ public class PulseAudioSourceDataLine ex int sizeWritten = 0; - flushed = false; - boolean interrupted = false; while (remainingLength != 0) { - synchronized (this) { - - if (!isStarted || !isOpen) { - return sizeWritten; - } - - if (flushed) { - flushed = false; - return sizeWritten; - } - - synchronized (eventLoop.threadLock) { - - do { - availableSize = stream.getWritableSize(); - - if (availableSize < 0) { - return sizeWritten; + synchronized (eventLoop.threadLock) { + + do { + if (writeInterrupted) { + return sizeWritten; + } + + if (availableSize == -1) { + return sizeWritten; + } + availableSize = stream.getWritableSize(); + + if (availableSize == 0) { + try { + eventLoop.threadLock.wait(100); + } catch (InterruptedException e) { + // ignore for now + interrupted = true; } - if (availableSize == 0) { - try { - eventLoop.threadLock.wait(); - } catch (InterruptedException e) { - // ignore for now - interrupted = true; - } - - } - - } while (availableSize == 0); - - if (availableSize > remainingLength) { - availableSize = remainingLength; - } - - // only write entire frames, so round down avialableSize to - // a - // multiple of frameSize - availableSize = (availableSize / frameSize) * frameSize; - + } + + } while (availableSize == 0); + + if (availableSize > remainingLength) { + availableSize = remainingLength; + } + + // only write entire frames, so round down avialableSize to + // a + // multiple of frameSize + availableSize = (availableSize / frameSize) * frameSize; + + synchronized (this) { + if (writeInterrupted) { + return sizeWritten; + } /* write a little bit of the buffer */ stream.write(data, position, availableSize); - - sizeWritten += availableSize; - position += availableSize; - remainingLength -= availableSize; - - framesSinceOpen += availableSize / frameSize; - } + } + + sizeWritten += availableSize; + position += availableSize; + remainingLength -= availableSize; + + framesSinceOpen += availableSize / frameSize; + } } @@ -260,6 +258,29 @@ public class PulseAudioSourceDataLine ex } + synchronized (this) { + writeInterrupted = true; + } + + do { + synchronized (this) { + if (!isOpen) { + return; + } + if (getBytesInBuffer() == 0) { + return; + } + if (isStarted || !isOpen) { + break; + } + try { + this.wait(100); + } catch (InterruptedException e) { + return; + } + } + } while (!isStarted); + Operation operation; synchronized (eventLoop.threadLock) { @@ -269,10 +290,6 @@ public class PulseAudioSourceDataLine ex operation.waitForCompletion(); operation.releaseReference(); - synchronized (this) { - drained = true; - } - } @Override @@ -281,6 +298,9 @@ public class PulseAudioSourceDataLine ex throw new IllegalStateException( "Line must be open before it can be flush()ed"); } + synchronized (this) { + writeInterrupted = true; + } Operation operation; synchronized (eventLoop.threadLock) { @@ -290,10 +310,6 @@ public class PulseAudioSourceDataLine ex operation.waitForCompletion(); operation.releaseReference(); - synchronized (this) { - flushed = true; - } - } @Override @@ -301,6 +317,8 @@ public class PulseAudioSourceDataLine ex if (!isOpen) { throw new IllegalStateException("not open so cant close"); } + + writeInterrupted = true; PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeSourceLine(this); diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Wed Oct 08 14:27:39 2008 -0400 @@ -37,6 +37,8 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import java.io.IOException; + import javax.sound.sampled.Port; public class PulseAudioSourcePort extends PulseAudioPort { diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Wed Oct 08 14:27:39 2008 -0400 @@ -37,6 +37,8 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import java.io.IOException; + import javax.sound.sampled.Port; public class PulseAudioTargetPort extends PulseAudioPort { diff -r a3a8e9e19967 -r 4260a476a101 src/java/org/classpath/icedtea/pulseaudio/Stream.java --- a/src/java/org/classpath/icedtea/pulseaudio/Stream.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Stream.java Wed Oct 08 14:27:39 2008 -0400 @@ -37,6 +37,7 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import java.io.IOException; import java.util.LinkedList; import java.util.List; @@ -83,6 +84,10 @@ public class Stream { } public interface MovedListener { + public void update(); + } + + public interface UpdateTimingInfoListener { public void update(); } @@ -163,6 +168,10 @@ public class Stream { private native int native_pa_stream_readable_size(); private native byte[] native_pa_stream_drain(); + + private native byte[] native_pa_stream_updateTimingInfo(); + + public native int bytesInBuffer(); /* * pa_operation pa_stream_update_timing_info (pa_stream *p, @@ -370,6 +379,7 @@ public class Stream { suspendedListeners.remove(listener); } } + public Stream.State getState() { int state = native_pa_stream_get_state(); @@ -534,6 +544,12 @@ public class Stream { return drainOperation; } From omajid at redhat.com Wed Oct 8 12:27:47 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 19:27:47 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset 6ac2c3df7588 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=6ac2c3df7588 description: 2008-10-08 Omair Majid * unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (testHasADefaultFormat): Also check that the line can be opened with the default format. diffstat: 1 file changed, 12 insertions(+), 4 deletions(-) unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java | 16 +++++++--- diffs (45 lines): diff -r 0a46fbaa018e -r 6ac2c3df7588 unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java Wed Oct 08 12:30:00 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java Wed Oct 08 13:57:49 2008 -0400 @@ -36,8 +36,6 @@ exception statement from your version. */ package org.classpath.icedtea.pulseaudio; - -import static org.junit.Assert.assertNotNull; import java.io.File; import java.io.IOException; @@ -138,9 +136,9 @@ public class PulseAudioSourceDataLineTes selectedMixerInfo = info; } } - assertNotNull(selectedMixerInfo); + Assert.assertNotNull(selectedMixerInfo); mixer = AudioSystem.getMixer(selectedMixerInfo); - assertNotNull(mixer); + Assert.assertNotNull(mixer); if (mixer.isOpen()) { mixer.close(); } @@ -1029,10 +1027,20 @@ public class PulseAudioSourceDataLineTes @Test public void testHasADefaultFormat() throws LineUnavailableException { + System.out.println("This test checks that a SourceDataLine has " + + " a default format, and it can be opened with" + + " that format"); + sourceDataLine = (SourceDataLine) mixer.getLine(new Line.Info( SourceDataLine.class)); + + /* check that there is a default format */ Assert.assertNotNull(sourceDataLine.getFormat()); System.out.println(sourceDataLine.getFormat()); + + /* check that the line can be opened with the default format */ + sourceDataLine.open(); + sourceDataLine.close(); } From omajid at redhat.com Wed Oct 8 12:27:47 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 19:27:47 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset 66bcf656c0fb in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=66bcf656c0fb description: 2008-10-08 Omair Majid Merged changes diffstat: 4 files changed, 72 insertions(+), 20 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 26 ++++++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 30 ++++++---- unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 20 +++++- unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java | 16 ++++- diffs (223 lines): diff -r 4260a476a101 -r 66bcf656c0fb src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 08 14:27:39 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 08 15:27:58 2008 -0400 @@ -95,11 +95,31 @@ public abstract class PulseAudioDataLine for (AudioFormat myFormat : supportedFormats) { if (format.matches(myFormat)) { + /* + * A few issues with format: + * + * To match: SAME encoding: safe because its a java enum. SAME + * number of channels: safe because myFormat has specific + * values. SAME bits per sample (aka sampleSize) and bytes per + * frame (aka frameSize): safe because myFormat has specific + * values. SAME sample rate: _not_ safe because myFormat uses + * AudioSystem.NOT_SPECIFIED. SAME frame rate: safe because we + * _ignore_ it completely ;) + * + * + */ + + float sampleRate = format.getSampleRate(); + if (sampleRate == (float) AudioSystem.NOT_SPECIFIED) { + /* pick a random sample rate */ + sampleRate = 44100.0f; + } + synchronized (eventLoop.threadLock) { stream = new Stream(eventLoop.getContextPointer(), streamName, Stream.Format.valueOf((String) myFormat .getProperty(PULSEAUDIO_FORMAT_KEY)), - (int) format.getSampleRate(), format.getChannels()); + (int) sampleRate, myFormat.getChannels()); } currentFormat = format; @@ -372,7 +392,9 @@ public abstract class PulseAudioDataLine * underrun/overflow. * * - * HOWEVER, the javadocs say the opposite thing! + * HOWEVER, the javadocs say the opposite thing! (need help from the jck = + * official spec) + * * */ diff -r 4260a476a101 -r 66bcf656c0fb src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 14:27:39 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 15:27:58 2008 -0400 @@ -103,6 +103,8 @@ public class PulseAudioMixer implements formats, StreamBufferAttributes.MIN_VALUE, StreamBufferAttributes.MAX_VALUE)); + refreshSourceAndTargetLines(); + } synchronized public static PulseAudioMixer getInstance() { @@ -119,12 +121,21 @@ public class PulseAudioMixer implements Map properties; /* - * frameSize = sample size (in bytes, not bits) x # of channels ^ From - * PulseAudio's sources + * frameSize = sample size (in bytes, not bits) x # of channels + * + * From PulseAudio's sources * http://git.0pointer.de/?p=pulseaudio.git;a=blob;f=src/pulse/sample.c;h=93da2465f4301e27af4976e82737c3a048124a68;hb=82ea8dde8abc51165a781c69bc3b38034d62d969#l63 */ - int[] channelSizes = new int[] { 1, 2, 5, 6, 8 }; + /* + * technically, PulseAudio supports up to 16 channels, but things get + * interesting with channel maps + * + * PA_CHANNEL_MAP_DEFAULT (=PA_CHANNEL_MAP_AIFF) supports 1,2,3,4,5 or 6 + * channels only + * + */ + int[] channelSizes = new int[] { 1, 2, 3, 4, 5, 6 }; for (int channelSize : channelSizes) { properties = new HashMap(); properties.put(PULSEAUDIO_FORMAT_KEY, "PA_SAMPLE_U8"); @@ -252,15 +263,14 @@ public class PulseAudioMixer implements } @Override - public Line getLine(javax.sound.sampled.Line.Info info) - throws LineUnavailableException { + public Line getLine(Line.Info info) throws LineUnavailableException { + + if (!isLineSupported(info)) { + throw new IllegalArgumentException("Line unsupported: " + info); + } if (!isOpen) { throw new LineUnavailableException("The mixer isnt open"); - } - - if (!isLineSupported(info)) { - throw new IllegalArgumentException("Line unsupported: " + info); } AudioFormat[] formats = null; @@ -324,7 +334,7 @@ public class PulseAudioMixer implements if (isLineSupported(info)) { return AudioSystem.NOT_SPECIFIED; } - + return 0; } diff -r 4260a476a101 -r 66bcf656c0fb unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 14:27:39 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 15:27:58 2008 -0400 @@ -39,6 +39,7 @@ package org.classpath.icedtea.pulseaudio import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioSystem; +import javax.sound.sampled.DataLine; import javax.sound.sampled.Line; import javax.sound.sampled.LineEvent; import javax.sound.sampled.LineListener; @@ -60,6 +61,8 @@ public class PulseAudioMixerTest { AudioFormat aSupportedFormat = new AudioFormat( AudioFormat.Encoding.PCM_UNSIGNED, 44100f, 8, 1, 1, 44100f, true); + AudioFormat aNotSupportedFormat = new AudioFormat( + AudioFormat.Encoding.ULAW, 44100, 32, 10, 10, 44100f, true); @Before public void setUp() throws Exception { @@ -289,7 +292,6 @@ public class PulseAudioMixerTest { try { Line sourceLine = selectedMixer.getLine(lineInfo); sourceLine.open(); - System.out.println("closing line"); sourceLine.close(); } catch (IllegalArgumentException e) { // ignore this @@ -308,15 +310,12 @@ public class PulseAudioMixerTest { TargetDataLine targetLine = (TargetDataLine) selectedMixer .getLine(lineInfo); Assert.assertNotNull(targetLine); - System.out.println("opening line"); targetLine.open(aSupportedFormat); - System.out.println("closing line"); targetLine.close(); } catch (ClassCastException cce) { Port targetLine = (Port) selectedMixer.getLine(lineInfo); Assert.assertNotNull(targetLine); targetLine.open(); - System.out.println("closing line"); targetLine.close(); } @@ -367,6 +366,19 @@ public class PulseAudioMixerTest { } @Test + public void testLineSupportedWorksWithoutOpeningMixer() { + + Assert.assertFalse(selectedMixer.isOpen()); + + Assert.assertFalse(selectedMixer.isLineSupported(new DataLine.Info( + SourceDataLine.class, aNotSupportedFormat))); + + Assert.assertTrue(selectedMixer.isLineSupported(new DataLine.Info( + SourceDataLine.class, aSupportedFormat))); + + } + + @Test public void testSynchronizationNotSupported() throws LineUnavailableException { selectedMixer.open(); diff -r 4260a476a101 -r 66bcf656c0fb unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java Wed Oct 08 14:27:39 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java Wed Oct 08 15:27:58 2008 -0400 @@ -36,8 +36,6 @@ exception statement from your version. */ package org.classpath.icedtea.pulseaudio; - -import static org.junit.Assert.assertNotNull; import java.io.File; import java.io.IOException; @@ -138,9 +136,9 @@ public class PulseAudioSourceDataLineTes selectedMixerInfo = info; } } - assertNotNull(selectedMixerInfo); + Assert.assertNotNull(selectedMixerInfo); mixer = AudioSystem.getMixer(selectedMixerInfo); - assertNotNull(mixer); + Assert.assertNotNull(mixer); if (mixer.isOpen()) { mixer.close(); } @@ -1029,10 +1027,20 @@ public class PulseAudioSourceDataLineTes @Test public void testHasADefaultFormat() throws LineUnavailableException { + System.out.println("This test checks that a SourceDataLine has " + + " a default format, and it can be opened with" + + " that format"); + sourceDataLine = (SourceDataLine) mixer.getLine(new Line.Info( SourceDataLine.class)); + + /* check that there is a default format */ Assert.assertNotNull(sourceDataLine.getFormat()); System.out.println(sourceDataLine.getFormat()); + + /* check that the line can be opened with the default format */ + sourceDataLine.open(); + sourceDataLine.close(); } From omajid at redhat.com Wed Oct 8 12:27:47 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 19:27:47 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset 0a46fbaa018e in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=0a46fbaa018e description: 2008-10-08 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (PulseAudioMixer): Call refreshSourceAndTargetLines to initialize sourceLines and targetLines. (getLine): Check that a line is supported before worrying about whether the mixer is open. * unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java New variable aNotSupportedFormat that represents a known format that does not work with PulseAudio*DataLine. (testLineSupportedWorksWithoutOpeningMixer): New test. Checks that isLineSupported works without depending on the mixer to be open. diffstat: 2 files changed, 24 insertions(+), 7 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 15 +++++---- unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 16 ++++++++++ diffs (82 lines): diff -r a3a8e9e19967 -r 0a46fbaa018e src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 10:38:29 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 12:30:00 2008 -0400 @@ -103,6 +103,8 @@ public class PulseAudioMixer implements formats, StreamBufferAttributes.MIN_VALUE, StreamBufferAttributes.MAX_VALUE)); + refreshSourceAndTargetLines(); + } synchronized public static PulseAudioMixer getInstance() { @@ -252,15 +254,14 @@ public class PulseAudioMixer implements } @Override - public Line getLine(javax.sound.sampled.Line.Info info) - throws LineUnavailableException { + public Line getLine(Line.Info info) throws LineUnavailableException { + + if (!isLineSupported(info)) { + throw new IllegalArgumentException("Line unsupported: " + info); + } if (!isOpen) { throw new LineUnavailableException("The mixer isnt open"); - } - - if (!isLineSupported(info)) { - throw new IllegalArgumentException("Line unsupported: " + info); } AudioFormat[] formats = null; @@ -324,7 +325,7 @@ public class PulseAudioMixer implements if (isLineSupported(info)) { return AudioSystem.NOT_SPECIFIED; } - + return 0; } diff -r a3a8e9e19967 -r 0a46fbaa018e unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 10:38:29 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 12:30:00 2008 -0400 @@ -39,6 +39,7 @@ package org.classpath.icedtea.pulseaudio import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioSystem; +import javax.sound.sampled.DataLine; import javax.sound.sampled.Line; import javax.sound.sampled.LineEvent; import javax.sound.sampled.LineListener; @@ -60,6 +61,8 @@ public class PulseAudioMixerTest { AudioFormat aSupportedFormat = new AudioFormat( AudioFormat.Encoding.PCM_UNSIGNED, 44100f, 8, 1, 1, 44100f, true); + AudioFormat aNotSupportedFormat = new AudioFormat( + AudioFormat.Encoding.ULAW, 44100, 32, 10, 10, 44100f, true); @Before public void setUp() throws Exception { @@ -367,6 +370,19 @@ public class PulseAudioMixerTest { } @Test + public void testLineSupportedWorksWithoutOpeningMixer() { + + Assert.assertFalse(selectedMixer.isOpen()); + + Assert.assertFalse(selectedMixer.isLineSupported(new DataLine.Info( + SourceDataLine.class, aNotSupportedFormat))); + + Assert.assertTrue(selectedMixer.isLineSupported(new DataLine.Info( + SourceDataLine.class, aSupportedFormat))); + + } + + @Test public void testSynchronizationNotSupported() throws LineUnavailableException { selectedMixer.open(); From omajid at redhat.com Wed Oct 8 12:27:47 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 19:27:47 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset 4e6c0e204d29 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=4e6c0e204d29 description: 2008-10-08 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (createStream): Pick a random sample rate if none given. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getSupportedFormats): New channel numbers. These numbers actually have a source. * unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java (testSourceLinesOpenAndClose): Removed debug output. (testTargetLinesOpenAndClose): Likewise. diffstat: 3 files changed, 37 insertions(+), 10 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 26 +++++++++- src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 17 +++++- unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 4 - diffs (111 lines): diff -r 6ac2c3df7588 -r 4e6c0e204d29 src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 08 13:57:49 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 08 15:26:51 2008 -0400 @@ -94,11 +94,31 @@ public abstract class PulseAudioDataLine for (AudioFormat myFormat : supportedFormats) { if (format.matches(myFormat)) { + /* + * A few issues with format: + * + * To match: SAME encoding: safe because its a java enum. SAME + * number of channels: safe because myFormat has specific + * values. SAME bits per sample (aka sampleSize) and bytes per + * frame (aka frameSize): safe because myFormat has specific + * values. SAME sample rate: _not_ safe because myFormat uses + * AudioSystem.NOT_SPECIFIED. SAME frame rate: safe because we + * _ignore_ it completely ;) + * + * + */ + + float sampleRate = format.getSampleRate(); + if (sampleRate == (float) AudioSystem.NOT_SPECIFIED) { + /* pick a random sample rate */ + sampleRate = 44100.0f; + } + synchronized (eventLoop.threadLock) { stream = new Stream(eventLoop.getContextPointer(), streamName, Stream.Format.valueOf((String) myFormat .getProperty(PULSEAUDIO_FORMAT_KEY)), - (int) format.getSampleRate(), format.getChannels()); + (int) sampleRate, myFormat.getChannels()); } currentFormat = format; @@ -371,7 +391,9 @@ public abstract class PulseAudioDataLine * underrun/overflow. * * - * HOWEVER, the javadocs say the opposite thing! + * HOWEVER, the javadocs say the opposite thing! (need help from the jck = + * official spec) + * * */ diff -r 6ac2c3df7588 -r 4e6c0e204d29 src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 13:57:49 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 15:26:51 2008 -0400 @@ -104,7 +104,7 @@ public class PulseAudioMixer implements StreamBufferAttributes.MAX_VALUE)); refreshSourceAndTargetLines(); - + } synchronized public static PulseAudioMixer getInstance() { @@ -121,12 +121,21 @@ public class PulseAudioMixer implements Map properties; /* - * frameSize = sample size (in bytes, not bits) x # of channels ^ From - * PulseAudio's sources + * frameSize = sample size (in bytes, not bits) x # of channels + * + * From PulseAudio's sources * http://git.0pointer.de/?p=pulseaudio.git;a=blob;f=src/pulse/sample.c;h=93da2465f4301e27af4976e82737c3a048124a68;hb=82ea8dde8abc51165a781c69bc3b38034d62d969#l63 */ - int[] channelSizes = new int[] { 1, 2, 5, 6, 8 }; + /* + * technically, PulseAudio supports up to 16 channels, but things get + * interesting with channel maps + * + * PA_CHANNEL_MAP_DEFAULT (=PA_CHANNEL_MAP_AIFF) supports 1,2,3,4,5 or 6 + * channels only + * + */ + int[] channelSizes = new int[] { 1, 2, 3, 4, 5, 6 }; for (int channelSize : channelSizes) { properties = new HashMap(); properties.put(PULSEAUDIO_FORMAT_KEY, "PA_SAMPLE_U8"); diff -r 6ac2c3df7588 -r 4e6c0e204d29 unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 13:57:49 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Wed Oct 08 15:26:51 2008 -0400 @@ -292,7 +292,6 @@ public class PulseAudioMixerTest { try { Line sourceLine = selectedMixer.getLine(lineInfo); sourceLine.open(); - System.out.println("closing line"); sourceLine.close(); } catch (IllegalArgumentException e) { // ignore this @@ -311,15 +310,12 @@ public class PulseAudioMixerTest { TargetDataLine targetLine = (TargetDataLine) selectedMixer .getLine(lineInfo); Assert.assertNotNull(targetLine); - System.out.println("opening line"); targetLine.open(aSupportedFormat); - System.out.println("closing line"); targetLine.close(); } catch (ClassCastException cce) { Port targetLine = (Port) selectedMixer.getLine(lineInfo); Assert.assertNotNull(targetLine); targetLine.open(); - System.out.println("closing line"); targetLine.close(); } From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 12:53:21 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Oct 2008 19:53:21 +0000 Subject: [Bug 207] New: Installation failure Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=207 Summary: Installation failure Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: p.bradley at dsl.pipex.com # # An unexpected error has been detected by Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00002b3036d5e001, pid=13961, tid=1089530192 # # Java VM: IcedTea 64-Bit Server VM (1.7.0-b24 mixed mode linux-amd64) # Problematic frame: # C [ld-linux-x86-64.so.2+0x12001] # # An error report file with more information is saved as: # /home/peter/downloads/eXist/hs_err_pid13961.log # # If you would like to submit a bug report, please visit: # http://icedtea.classpath.org/bugzilla # If anyone's interested, I can supply the error log. It finishes: VM Arguments: java_command: eXist-setup-1.2.4-rev8072.jar Launcher Type: SUN_STANDARD Environment Variables: JAVA_HOME=/usr/lib64/jvm/java JRE_HOME=/usr/lib64/jvm/java/jre PATH=/opt/kde3/bin:/home/peter/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib/qt3/bin LD_LIBRARY_PATH=/usr/lib64/jvm/java-1.7.0-icedtea-1.5_b24/jre/lib/amd64/server:/usr/lib64/jvm/java-1.7.0-icedtea-1.5_b24/jre/lib/amd64:/usr/lib64/jvm/java-1.7.0-icedtea-1.5_b24/jre/../lib/amd64 SHELL=/bin/bash DISPLAY=:0.0 HOSTTYPE=x86_64 OSTYPE=linux MACHTYPE=x86_64-suse-linux Signal Handlers: SIGSEGV: [libjvm.so+0x5ac1b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGBUS: [libjvm.so+0x5ac1b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGFPE: [libjvm.so+0x4964b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGPIPE: [libjvm.so+0x4964b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGXFSZ: [libjvm.so+0x4964b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGILL: [libjvm.so+0x4964b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGUSR2: [libjvm.so+0x495c80], sa_mask[0]=0x00000000, sa_flags=0x10000004 SIGHUP: [libjvm.so+0x497d80], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGINT: [libjvm.so+0x497d80], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGTERM: [libjvm.so+0x497d80], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGQUIT: [libjvm.so+0x497d80], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 --------------- S Y S T E M --------------- OS:openSUSE 10.3 (X86-64) VERSION = 10.3 uname:Linux 2.6.22.18-0.2-default #1 SMP 2008-06-09 13:53:20 +0200 x86_64 libc:glibc 2.6.1 NPTL 2.6.1 rlimit: STACK 8192k, CORE 0k, NPROC 16375, NOFILE 8192, AS 2491440k load average:1.16 1.15 1.08 CPU:total 2 (2 cores per cpu, 1 threads per core) family 15 model 43 stepping 1, cmov, cx8, fxsr, mmx, sse, sse2, sse3, mmxext, 3dnow, 3dnowext Memory: 4k page, physical 2062024k(69428k free), swap 1052216k(1049800k free) vm_info: IcedTea 64-Bit Server VM (1.7.0-b24) for linux-amd64 JRE (1.7.0-b24), built on Feb 15 2008 14:30:17 by "abuild" with gcc 4.3.0 20080131 (experimental) [trunk revision 131976] time: Wed Oct 8 20:43:48 2008 elapsed time: 7 seconds -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Wed Oct 8 13:05:56 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 08 Oct 2008 20:05:56 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-08 Omair Majid changeset 5108fc37a890 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=5108fc37a890 description: 2008-10-08 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Removed unused import to get rid of compiler warning. * src/java/org/classpath/icedtea/pulseaudio/Operation.java Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (ClipThread.run): Do a sanity check before abusing the value of LOOP_CONTINUOUSLY. (loop): Check the value of the argument. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Removed unused import to get rid of compiler warning. (write): Removed a FIXME, as it is now implemented. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Removed unused import to get rid of compiler warning. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Likewise. * src/java/org/classpath/icedtea/pulseaudio/Stream.java Likewise. diffstat: 7 files changed, 17 insertions(+), 17 deletions(-) src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 1 src/java/org/classpath/icedtea/pulseaudio/Operation.java | 1 src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 17 ++++++++-- src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 10 +---- src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 2 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 2 - src/java/org/classpath/icedtea/pulseaudio/Stream.java | 1 diffs (132 lines): diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/EventLoop.java --- a/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Wed Oct 08 16:06:00 2008 -0400 @@ -37,7 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Semaphore; diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/Operation.java --- a/src/java/org/classpath/icedtea/pulseaudio/Operation.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Operation.java Wed Oct 08 16:06:00 2008 -0400 @@ -37,7 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; /* * Encapsulates a pa_operation object diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Wed Oct 08 16:06:00 2008 -0400 @@ -77,6 +77,17 @@ public class PulseAudioClip extends Puls private class ClipThread extends Thread { @Override public void run() { + + /* + * The while loop below only works with LOOP_CONTINUOUSLY because we + * abuse the fact that loopsLeft's initial value is -1 + * (=LOOP_CONTINUOUSLY) and it keeps on going lower without hitting + * 0. So do a sanity check + */ + if (Clip.LOOP_CONTINUOUSLY != -1) { + throw new UnsupportedOperationException( + "LOOP_CONTINUOUSLY has changed; things are going to break"); + } while (true) { writeFrames(currentFrame, endFrame + 1); @@ -345,8 +356,10 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("Line not open"); } - System.out.println("Loop " + count + " called"); - + if ( count < 0 && count != LOOP_CONTINUOUSLY) { + throw new IllegalArgumentException("invalid value for count:" + count); + } + if (clipThread.isAlive() && count != 0) { // Do nothing; behavior not specified by the Java API return; diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Wed Oct 08 16:06:00 2008 -0400 @@ -44,8 +44,6 @@ import javax.sound.sampled.LineUnavailab import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.SourceDataLine; -import org.classpath.icedtea.pulseaudio.Operation.State; - public class PulseAudioSourceDataLine extends PulseAudioDataLine implements SourceDataLine, PulseAudioPlaybackLine { @@ -136,7 +134,7 @@ public class PulseAudioSourceDataLine ex synchronized (this) { writeInterrupted = false; } - + if (!isOpen) { throw new IllegalStateException("must call open() before write()"); } @@ -216,10 +214,6 @@ public class PulseAudioSourceDataLine ex // all the data should have been played by now assert (sizeWritten == length); - /* - * FIXME when the stream is flushed() etc, instead of returning length - * this should unblock and return the the size of data written so far - */ if (interrupted) { Thread.currentThread().interrupt(); @@ -317,7 +311,7 @@ public class PulseAudioSourceDataLine ex if (!isOpen) { throw new IllegalStateException("not open so cant close"); } - + writeInterrupted = true; PulseAudioMixer parent = PulseAudioMixer.getInstance(); diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Wed Oct 08 16:06:00 2008 -0400 @@ -37,8 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; - import javax.sound.sampled.Port; public class PulseAudioSourcePort extends PulseAudioPort { diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Wed Oct 08 16:06:00 2008 -0400 @@ -37,8 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; - import javax.sound.sampled.Port; public class PulseAudioTargetPort extends PulseAudioPort { diff -r 66bcf656c0fb -r 5108fc37a890 src/java/org/classpath/icedtea/pulseaudio/Stream.java --- a/src/java/org/classpath/icedtea/pulseaudio/Stream.java Wed Oct 08 15:27:58 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/Stream.java Wed Oct 08 16:06:00 2008 -0400 @@ -37,7 +37,6 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; -import java.io.IOException; import java.util.LinkedList; import java.util.List; From dbhole at redhat.com Wed Oct 8 14:00:28 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 08 Oct 2008 21:00:28 +0000 Subject: changeset in /hg/icedtea6: - Implemented JS->Java security. Message-ID: changeset 86fbcf148d1f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=86fbcf148d1f description: - Implemented JS->Java security. - Removed ambiguity from class finding mechanism for cases where JS needs a signature involving an applet specific class. - Rewrote code that parsed messages from C++ side -- now it can handle any number of optional components. diffstat: 7 files changed, 730 insertions(+), 323 deletions(-) ChangeLog | 13 IcedTeaPlugin.cc | 508 +++++++---- plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 10 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 412 ++++++-- plugin/icedtea/sun/applet/PluginAppletViewer.java | 33 plugin/icedtea/sun/applet/PluginObjectStore.java | 11 plugin/icedtea/sun/applet/PluginStreamHandler.java | 66 - diffs (truncated from 1911 to 500 lines): diff -r ab8aa9425fc4 -r 86fbcf148d1f ChangeLog --- a/ChangeLog Tue Oct 07 11:16:16 2008 -0400 +++ b/ChangeLog Wed Oct 08 17:00:19 2008 -0400 @@ -1,3 +1,16 @@ 2008-10-07 Gary Benson + * IcedTeaPlugin.cc: Implemented JS->Java security. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. Also, + remove ambiguity from class finding mechanism for cases where JS needs a + signature involving an applet specific class. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Implemented JS->Java + security. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Rewrote code that + parsed messages from C++ side -- now it can handle any number of optional + components. + 2008-10-07 Gary Benson Andrew Haley diff -r ab8aa9425fc4 -r 86fbcf148d1f IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Tue Oct 07 11:16:16 2008 -0400 +++ b/IcedTeaPlugin.cc Wed Oct 08 17:00:19 2008 -0400 @@ -309,29 +309,36 @@ char const* TYPES[10] = { "Object", #include // FIXME: create index from security context. -#define MESSAGE_CREATE(reference) \ - const char* addr; \ - char context[16]; \ - GetCurrentPageAddress(&addr); \ - GetCurrentContextAddr(context); \ +#define MESSAGE_CREATE() \ nsCString message ("context "); \ message.AppendInt (0); \ + +#define MESSAGE_ADD_STACK_REFERENCE(reference) \ message += " reference "; \ message.AppendInt (reference); \ - if (factory->codebase_map.find(nsCString(addr)) != factory->codebase_map.end()) \ - { \ - message += " src "; \ - message += factory->codebase_map[nsCString(addr)];\ - } \ - message += " "; \ - message += __func__; \ if (factory->result_map[reference] == NULL) { \ factory->result_map[reference] = new ResultContainer(); \ printf("ResultMap created -- %p %d\n", factory->result_map[reference], factory->result_map[reference]->returnIdentifier); \ } \ else \ - factory->result_map[reference]->Clear(); - + factory->result_map[reference]->Clear(); + +#define MESSAGE_ADD_SRC(src) \ + message += " src "; \ + message += src; + +#define MESSAGE_ADD_PRIVILEGES() \ + nsCString privileges(""); \ + GetEnabledPrivileges(&privileges); \ + if (privileges.Length() > 0) \ + { \ + message += " privileges "; \ + message += privileges; \ + } + +#define MESSAGE_ADD_FUNC() \ + message += " "; \ + message += __func__; #define MESSAGE_ADD_STRING(name) \ message += " "; \ @@ -396,7 +403,7 @@ char const* TYPES[10] = { "Object", #define PROCESS_PENDING_EVENTS_REF(reference) \ if (factory->shutting_down == PR_TRUE && \ - factory->result_map[reference]->errorOccured == PR_TRUE) \ + factory->result_map[reference]->errorOccurred == PR_TRUE) \ { \ printf("Error occured. Exiting function\n"); \ return NS_ERROR_FAILURE; \ @@ -424,13 +431,13 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ while (factory->result_map[reference]->returnIdentifier == -1 &&\ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ if (factory->result_map[reference]->returnIdentifier == 0 || \ - factory->result_map[reference]->errorOccured == PR_TRUE) \ + factory->result_map[reference]->errorOccurred == PR_TRUE) \ { \ *name = NULL; \ } else { \ @@ -447,12 +454,12 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ while (factory->result_map[reference]->returnIdentifier == -1 &&\ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ { \ *id = NULL; \ } else \ @@ -468,7 +475,7 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ @@ -485,12 +492,12 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ { \ @@ -507,11 +514,11 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ {\ @@ -529,11 +536,11 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ { \ @@ -554,11 +561,11 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ while (factory->result_map[reference]->returnIdentifier == -1 && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ *result = factory->result_map[reference]->returnIdentifier; @@ -717,8 +724,8 @@ class ResultContainer PRUint32 returnIdentifier; nsCString returnValue; nsString returnValueUCS; - PRBool errorOccured; - + nsCString errorMessage; + PRBool errorOccurred; }; ResultContainer::ResultContainer () @@ -728,7 +735,8 @@ ResultContainer::ResultContainer () returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); - errorOccured = PR_FALSE; + errorMessage.Truncate(); + errorOccurred = PR_FALSE; } ResultContainer::~ResultContainer () @@ -738,6 +746,7 @@ ResultContainer::~ResultContainer () returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); + errorMessage.Truncate(); } void @@ -748,7 +757,8 @@ ResultContainer::Clear() returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); - errorOccured = PR_FALSE; + errorMessage.Truncate(); + errorOccurred = PR_FALSE; } #include @@ -1182,6 +1192,7 @@ private: void DecrementContextCounter(); nsresult GetCurrentContextAddr(char *addr); nsresult GetCurrentPageAddress(const char **addr); + nsresult GetEnabledPrivileges(nsCString *privileges); int contextCounter; }; @@ -2780,7 +2791,16 @@ IcedTeaPluginFactory::HandleMessage (nsC else if (command == "Error") { printf("Error occured. Setting error flag for container @ %d to true\n", reference); - result_map[reference]->errorOccured = PR_TRUE; + result_map[reference]->errorOccurred = PR_TRUE; + result_map[reference]->errorMessage = (nsCString) rest; + + rest += "ERROR: "; + IcedTeaPluginInstance* instance = NULL; + instances.Get (identifier, &instance); + if (instance != 0) + { + instance->peer->ShowStatus (nsCString (rest).get ()); + } } } else if (prefix == "context") @@ -3916,91 +3936,72 @@ IcedTeaJNIEnv::DecrementContextCounter ( PR_ExitMonitor(contextCounterPRMonitor); } -#include - nsresult -IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) -{ - return NS_OK; - PLUGIN_TRACE_JNIENV (); - - // Get JSContext from stack. - nsCOMPtr mJSContextStack(do_GetService("@mozilla.org/js/xpc/ContextStack;1")); - if (mJSContextStack) { - JSContext *cx; - if (NS_FAILED(mJSContextStack->Peek(&cx))) - return NS_ERROR_FAILURE; - - printf("Context1: %p\n", cx); - - // address cannot be more than 8 bytes (8 bytes = 64 bits) - sprintf(addr, "%p", cx); - - printf("Context2: %s\n", addr); - } - - return NS_OK; -} - -nsresult -IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) -{ - return NS_OK; - PLUGIN_TRACE_JNIENV (); - - nsIPrincipal *prin; - nsCOMPtr sec_man(do_GetService("@mozilla.org/scriptsecuritymanager;1")); - - if (sec_man) { - - PRBool isEnabled = PR_FALSE; - sec_man->IsCapabilityEnabled("UniversalBrowserRead", &isEnabled); - - if (isEnabled == PR_FALSE) { - printf("UniversalBrowserRead is NOT enabled\n"); - } else { - printf("UniversalBrowserRead IS enabled\n"); - } - - sec_man->IsCapabilityEnabled("UniversalBrowserWrite", &isEnabled); - - if (isEnabled == PR_FALSE) { - printf("UniversalBrowserWrite is NOT enabled\n"); - } else { - printf("UniversalBrowserWrite IS enabled\n"); - } - } - - if (sec_man) - { - sec_man->GetSubjectPrincipal(&prin); - } else { +IcedTeaJNIEnv::GetEnabledPrivileges(nsCString *privileges) +{ + nsresult rv; + nsCOMPtr sec_man = + do_GetService(NS_SCRIPTSECURITYMANAGER_CONTRACTID, &rv); + + if (NS_FAILED(rv) || !sec_man) { return NS_ERROR_FAILURE; } - if (prin) - { - nsIURI *uri; - prin->GetURI(&uri); - - if (uri) - { - nsCAutoString str; - uri->GetSpec(str); - NS_CStringGetData(str, addr); - } else { - return NS_ERROR_FAILURE; - } - } else { - return NS_ERROR_FAILURE; - } - - - nsCOMPtr js_id(do_GetService("@mozilla.org/js/xpc/ID;1")); - printf("JS ID is: %s\n", js_id->GetID()->ToString()); - - return NS_OK; - + PRBool isEnabled = PR_FALSE; + + // check privileges one by one + + privileges->Truncate(); + char available_privileges[1024]; + + // see: http://docs.sun.com/source/816-6170-10/index.htm + + // Should these other privileges be supported? According to + // http://java.sun.com/j2se/1.3/docs/guide/plugin/security.html it is + // either UniversalBrowserRead/UniversalJavaPermissions or the highway... + +/* + // broken down to make it clean... + sprintf(available_privileges, "%s %s %s %s %s %s %s %s %s %s %s %s", + "LimitedInstall FullInstall SilentInstall", + "UniversalAccept UniversalAwtEventQueueAccess UniversalConnect", + "UniversalConnectWithRedirect UniversalDialogModality", + "UniversalExecAccess UniversalExitAccess UniversalFdRead", + "UniversalFileDelete UniversalFileRead UniversalFileWrite", + "UniversalLinkAccess UniversalListen UniversalMulticast", + "UniversalJavaPermissions UniversalPackageAccess", + "UniversalPackageDefinition UniversalPrintJobAccess", + "UniversalPropertyRead UniversalPropertyWrite", + "UniversalSendMail UniversalSetFactory UniversalSystemClipboardAccess", + "UniversalThreadAccess UniversalThreadGroupAccess", + "UniversalTopLevelWindow"); +*/ + + sprintf(available_privileges, "%s", + "UniversalBrowserRead UniversalJavaPermissions"); + + + char *token = strtok(available_privileges, " "); + while (token != NULL) + { + isEnabled = PR_FALSE; + sec_man->IsCapabilityEnabled(token, &isEnabled); + + if (isEnabled == PR_TRUE) + { + printf("GetEnabledPrivileges : %s is enabled\n", token); + *privileges += token; + *privileges += ","; + } else { + printf("GetEnabledPrivileges : %s is _NOT_ enabled\n", token); + } + + token = strtok (NULL, " "); + } + + privileges->Trim(","); + + return NS_OK; } NS_IMETHODIMP @@ -4011,14 +4012,41 @@ IcedTeaJNIEnv::NewObject (jclass clazz, nsISecurityContext* ctx) { PLUGIN_TRACE_JNIENV (); + + char origin[1024]; + sprintf(origin, ""); + + if (ctx) + ctx->GetOrigin(origin, 1024); + int reference = IncrementContextCounter (); - MESSAGE_CREATE (reference); + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_FUNC(); MESSAGE_ADD_REFERENCE (clazz); MESSAGE_ADD_ID (methodID); MESSAGE_ADD_ARGS (methodID, args); MESSAGE_SEND (); - printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_REFERENCE (reference, jobject, result); + + if (factory->result_map[reference]->errorOccurred == PR_TRUE && + factory->result_map[reference]->errorMessage.Find("LiveConnectPermissionNeeded") == 0) + { + // Permission error. Try again. This time, send permissions over the wire + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_PRIVILEGES(); + MESSAGE_ADD_FUNC(); + MESSAGE_ADD_REFERENCE (clazz); + MESSAGE_ADD_ID (methodID); + MESSAGE_ADD_ARGS (methodID, args); + MESSAGE_SEND (); + MESSAGE_RECEIVE_REFERENCE (reference, jobject, result); + } + + DecrementContextCounter (); return NS_OK; @@ -4033,15 +4061,43 @@ IcedTeaJNIEnv::CallMethod (jni_type type nsISecurityContext* ctx) { PLUGIN_TRACE_JNIENV (); + + char origin[1024]; + sprintf(origin, ""); + + if (ctx) + ctx->GetOrigin(origin, 1024); + int reference = IncrementContextCounter (); - MESSAGE_CREATE (reference); + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_FUNC(); MESSAGE_ADD_REFERENCE (obj); MESSAGE_ADD_ID (methodID); MESSAGE_ADD_ARGS (methodID, args); - std::cout << "CALLMETHOD -- OBJ: " << obj << " METHOD: " << methodID << " ARGS: " << args << std::endl; MESSAGE_SEND (); - printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_VALUE (reference, type, result); + + if (factory->result_map[reference]->errorOccurred == PR_TRUE && + factory->result_map[reference]->errorMessage.Find("LiveConnectPermissionNeeded") == 0) + { + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_PRIVILEGES(); + MESSAGE_ADD_FUNC(); + MESSAGE_ADD_REFERENCE (obj); + MESSAGE_ADD_ID (methodID); + MESSAGE_ADD_ARGS (methodID, args); + MESSAGE_SEND (); + MESSAGE_RECEIVE_VALUE (reference, type, result); + + // if everything was OK, clear exception from previous access exception + if (factory->result_map[reference]->errorOccurred == PR_FALSE) + ExceptionClear(); + } + DecrementContextCounter (); return NS_OK; @@ -4307,13 +4363,37 @@ IcedTeaJNIEnv::GetField (jni_type type, nsISecurityContext* ctx) { PLUGIN_TRACE_JNIENV (); + + char origin[1024]; + sprintf(origin, ""); + + if (ctx) + ctx->GetOrigin(origin, 1024); From bugzilla-daemon at icedtea.classpath.org Wed Oct 8 23:50:44 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 09 Oct 2008 06:50:44 +0000 Subject: [Bug 208] New: icedteaplugin error on https://www.netbank.nordea.dk/netbank/ Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=208 Summary: icedteaplugin error on https://www.netbank.nordea.dk/netbank/ Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/234169 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com https://www.netbank.nordea.dk/netbank/index.jsp loads, nothing appears on the login pane. the applet on the second pane does work. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Oct 9 00:06:47 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 09 Oct 2008 07:06:47 +0000 Subject: [Bug 209] New: display problems with applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=209 Summary: display problems with applet Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/274356 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com http://www.goproblems.com/prob.php3?nutrial=1&plevel=15&PHPSESSID=fe9eea85de8d89bd7cadde323ab7ecfe doesn't draw the drop down box on the left over the pie chart below. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From mark at klomp.org Thu Oct 9 01:43:25 2008 From: mark at klomp.org (Mark Wielaard) Date: Thu, 09 Oct 2008 10:43:25 +0200 Subject: Public open specs In-Reply-To: <1222940811.3265.12.camel@dijkstra.wildebeest.org> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> Message-ID: <1223541805.3958.3.camel@dijkstra.wildebeest.org> Hi Dalibor, On Thu, 2008-10-02 at 11:46 +0200, Mark Wielaard wrote: > On Thu, 2008-09-25 at 15:32 +0200, Dalibor Topic wrote: > > Mark Wielaard wrote: > > > Any progress on getting this specification open and public? > > > > > Unfortunately, there is no visible progress yet. > > Any invisible progress then now? Got anything yet? Can Sun can publish the core Class File Specifications under terms that are acceptable to the community, so that getting access to the document doesn't take away any rights of publishing an independent or openjdk based implementation under the GPL without the restrictions on scope that the current terms 2 (a - c) inflict upon us hackers? Thanks, Mark From bugzilla-daemon at icedtea.classpath.org Thu Oct 9 03:47:58 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 09 Oct 2008 10:47:58 +0000 Subject: [Bug 192] com.sun.image.codec.jpeg doesn't work with ImageJ Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=192 ------- Comment #14 from gnu_andrew at member.fsf.org 2008-10-09 10:47 ------- Has a bug been filed with ImageJ? They should be using javax.imageio. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Oct 9 04:07:22 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 09 Oct 2008 11:07:22 +0000 Subject: [Bug 192] com.sun.image.codec.jpeg doesn't work with ImageJ Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=192 ------- Comment #15 from mark at klomp.org 2008-10-09 11:07 ------- (In reply to comment #14) > Has a bug been filed with ImageJ? They should be using javax.imageio. That should be possible now: https://list.nih.gov/cgi-bin/wa?A2=ind0809&L=imagej&H=1&P=21500 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Thu Oct 9 04:35:50 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Thu, 09 Oct 2008 11:35:50 +0000 Subject: changeset in /hg/icedtea6: 2008-10-09 Matthias Klose changeset 6790b974078e in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=6790b974078e description: 2008-10-09 Matthias Klose * patches/icedtea-6open-6616825.patch: New. * patches/icedtea-6open-6651382.patch: New. * patches/icedtea-6open-6756202.patch: New. * Makefile.am: Apply patches. diffstat: 5 files changed, 440 insertions(+) ChangeLog | 7 Makefile.am | 3 patches/icedtea-6open-6616825.patch | 294 +++++++++++++++++++++++++++++++++++ patches/icedtea-6open-6651382.patch | 116 +++++++++++++ patches/icedtea-6open-6756202.patch | 20 ++ diffs (469 lines): diff -r 86fbcf148d1f -r 6790b974078e ChangeLog --- a/ChangeLog Wed Oct 08 17:00:19 2008 -0400 +++ b/ChangeLog Thu Oct 09 13:35:37 2008 +0200 @@ -1,3 +1,10 @@ 2008-10-08 Deepak Bhole + + * patches/icedtea-6open-6616825.patch: New. + * patches/icedtea-6open-6651382.patch: New. + * patches/icedtea-6open-6756202.patch: New. + * Makefile.am: Apply patches. + 2008-10-08 Deepak Bhole * IcedTeaPlugin.cc: Implemented JS->Java security. * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. diff -r 86fbcf148d1f -r 6790b974078e Makefile.am --- a/Makefile.am Wed Oct 08 17:00:19 2008 -0400 +++ b/Makefile.am Thu Oct 09 13:35:37 2008 +0200 @@ -504,6 +504,9 @@ ICEDTEA_PATCHES = \ patches/icedtea-arch.patch \ patches/icedtea-lc_ctype.patch \ patches/icedtea-messageutils.patch \ + patches/icedtea-6open-6616825.patch \ + patches/icedtea-6open-6651382.patch \ + patches/icedtea-6open-6756202.patch \ $(VISUALVM_PATCH) if WITH_RHINO diff -r 86fbcf148d1f -r 6790b974078e patches/icedtea-6open-6616825.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6open-6616825.patch Thu Oct 09 13:35:37 2008 +0200 @@ -0,0 +1,294 @@ +--- openjdk/jdk/src/share/classes/javax/management/ObjectName.java Wed Oct 8 06:07:09 2008 ++++ openjdk/jdk/src/share/classes/javax/management/ObjectName.java Wed Oct 8 06:07:09 2008 +@@ -37,9 +37,6 @@ + import java.util.HashMap; + import java.util.Hashtable; + import java.util.Map; +-import javax.management.MBeanServer; +-import javax.management.MalformedObjectNameException; +-import javax.management.QueryExp; + + /** + *

Represents the object name of an MBean, or a pattern that can +@@ -1159,9 +1156,19 @@ + // + //in.defaultReadObject(); + final ObjectInputStream.GetField fields = in.readFields(); ++ String propListString = ++ (String)fields.get("propertyListString", ""); ++ ++ // 6616825: take care of property patterns ++ final boolean propPattern = ++ fields.get("propertyPattern" , false); ++ if (propPattern) { ++ propListString = ++ (propListString.length()==0?"*":(propListString+",*")); ++ } ++ + cn = (String)fields.get("domain", "default")+ +- ":"+ +- (String)fields.get("propertyListString", ""); ++ ":"+ propListString; + } else { + // Read an object serialized in the new serial form + // +@@ -1795,6 +1802,7 @@ + * @return True if object is an ObjectName whose + * canonical form is equal to that of this ObjectName. + */ ++ @Override + public boolean equals(Object object) { + + // same object case +@@ -1818,6 +1826,7 @@ + * Returns a hash code for this object name. + * + */ ++ @Override + public int hashCode() { + return _canonicalName.hashCode(); + } +--- openjdk/jdk/test/javax/management/ObjectName/SerialCompatTest.java Wed Oct 8 06:07:12 2008 ++++ openjdk/jdk/test/javax/management/ObjectName/SerialCompatTest.java Wed Oct 8 06:07:12 2008 +@@ -23,9 +23,9 @@ + + /* + * @test +- * @bug 6211220 ++ * @bug 6211220 6616825 + * @summary Test that jmx.serial.form=1.0 works for ObjectName +- * @author Eamonn McManus ++ * @author Eamonn McManus, Daniel Fuchs + * @run clean SerialCompatTest + * @run build SerialCompatTest + * @run main/othervm SerialCompatTest +@@ -36,20 +36,8 @@ + import javax.management.ObjectName; + + public class SerialCompatTest { +- public static void main(String[] args) throws Exception { +- System.setProperty("jmx.serial.form", "1.0"); ++ public static void check6211220() throws Exception { + +- /* Check that we really are in jmx.serial.form=1.0 mode. +- The property is frozen the first time the ObjectName class +- is referenced so checking that it is set to the correct +- value now is not enough. */ +- ObjectStreamClass osc = ObjectStreamClass.lookup(ObjectName.class); +- if (osc.getFields().length != 6) { +- throw new Exception("Not using old serial form: fields: " + +- Arrays.asList(osc.getFields())); +- // new serial form has no fields, uses writeObject +- } +- + ObjectName on = new ObjectName("a:b=c"); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(bos); +@@ -62,53 +50,192 @@ + + // if the bug is present, these will get NullPointerException + for (int i = 0; i <= 11; i++) { ++ String msg = "6211220 case("+i+")"; + try { + switch (i) { + case 0: +- check(on1.getDomain().equals("a")); break; ++ check(msg, on1.getDomain().equals("a")); break; + case 1: +- check(on1.getCanonicalName().equals("a:b=c")); break; ++ check(msg, on1.getCanonicalName().equals("a:b=c")); break; + case 2: +- check(on1.getKeyPropertyListString().equals("b=c")); break; ++ check(msg, on1.getKeyPropertyListString().equals("b=c")); ++ break; + case 3: +- check(on1.getCanonicalKeyPropertyListString().equals("b=c")); ++ check(msg, on1.getCanonicalKeyPropertyListString() ++ .equals("b=c")); + break; + case 4: +- check(on1.getKeyProperty("b").equals("c")); break; ++ check(msg, on1.getKeyProperty("b").equals("c")); break; + case 5: +- check(on1.getKeyPropertyList() ++ check(msg, on1.getKeyPropertyList() + .equals(Collections.singletonMap("b", "c"))); break; + case 6: +- check(!on1.isDomainPattern()); break; ++ check(msg, !on1.isDomainPattern()); break; + case 7: +- check(!on1.isPattern()); break; ++ check(msg, !on1.isPattern()); break; + case 8: +- check(!on1.isPropertyPattern()); break; ++ check(msg, !on1.isPropertyPattern()); break; + case 9: +- check(on1.equals(on)); break; ++ check(msg, on1.equals(on)); break; + case 10: +- check(on.equals(on1)); break; ++ check(msg, on.equals(on1)); break; + case 11: +- check(on1.apply(on)); break; ++ check(msg, on1.apply(on)); break; + default: ++ throw new Exception(msg+": Test incorrect"); ++ } ++ } catch (Exception e) { ++ System.out.println(msg+": Test failed with exception:"); ++ e.printStackTrace(System.out); ++ failed = true; ++ } ++ } ++ ++ if (failed) ++ throw new Exception("Some tests for 6211220 failed"); ++ else ++ System.out.println("All tests for 6211220 passed"); ++ } ++ ++ static void checkName(String testname, ObjectName on) ++ throws Exception { ++ ByteArrayOutputStream bos = new ByteArrayOutputStream(); ++ ObjectOutputStream oos = new ObjectOutputStream(bos); ++ oos.writeObject(on); ++ oos.close(); ++ byte[] bytes = bos.toByteArray(); ++ ByteArrayInputStream bis = new ByteArrayInputStream(bytes); ++ ObjectInputStream ois = new ObjectInputStream(bis); ++ ObjectName on1 = (ObjectName) ois.readObject(); ++ // if the bug is present, these will get NullPointerException ++ for (int i = 0; i <= 11; i++) { ++ String msg = testname + " case("+i+")"; ++ try { ++ switch (i) { ++ case 0: ++ check(msg,on1.getDomain().equals(on.getDomain())); ++ break; ++ case 1: ++ check(msg,on1.getCanonicalName(). ++ equals(on.getCanonicalName())); ++ break; ++ case 2: ++ check(msg,on1.getKeyPropertyListString(). ++ equals(on.getKeyPropertyListString())); break; ++ case 3: ++ check(msg,on1.getCanonicalKeyPropertyListString(). ++ equals(on.getCanonicalKeyPropertyListString())); ++ break; ++ case 4: ++ for (Object ko : on1.getKeyPropertyList().keySet()) { ++ final String key = (String) ko; ++ check(msg,on1.getKeyProperty(key). ++ equals(on.getKeyProperty(key))); ++ } ++ for (Object ko : on.getKeyPropertyList().keySet()) { ++ final String key = (String) ko; ++ check(msg,on1.getKeyProperty(key). ++ equals(on.getKeyProperty(key))); ++ } ++ case 5: ++ check(msg,on1.getKeyPropertyList() ++ .equals(on.getKeyPropertyList())); break; ++ case 6: ++ check(msg,on1.isDomainPattern()==on.isDomainPattern()); ++ break; ++ case 7: ++ check(msg,on1.isPattern()==on.isPattern()); break; ++ case 8: ++ check(msg, ++ on1.isPropertyPattern()==on.isPropertyPattern()); break; ++ case 9: ++ check(msg,on1.equals(on)); break; ++ case 10: ++ check(msg,on.equals(on1)); break; ++ case 11: ++ if (!on.isPattern()) ++ check(msg,on1.apply(on)); break; ++ default: + throw new Exception("Test incorrect: case: " + i); + } + } catch (Exception e) { +- System.out.println("Test failed with exception:"); ++ System.out.println("Test ("+i+") failed with exception:"); + e.printStackTrace(System.out); + failed = true; + } + } + ++ } ++ ++ private static String[] names6616825 = { ++ "a:b=c","a:b=c,*","*:*",":*",":b=c",":b=c,*", ++ "a:*,b=c",":*",":*,b=c","*x?:k=\"x\\*z\"","*x?:k=\"x\\*z\",*", ++ "*x?:*,k=\"x\\*z\"","*x?:k=\"x\\*z\",*,b=c" ++ }; ++ ++ static void check6616825() throws Exception { ++ System.out.println("Testing 616825"); ++ for (String n : names6616825) { ++ final ObjectName on; ++ try { ++ on = new ObjectName(n); ++ } catch (Exception x) { ++ failed = true; ++ System.out.println("Unexpected failure for 6616825 ["+n ++ +"]: "+x); ++ x.printStackTrace(System.out); ++ continue; ++ } ++ try { ++ checkName("616825 "+n,on); ++ } catch (Exception x) { ++ failed = true; ++ System.out.println("6616825 failed for ["+n+"]: "+x); ++ x.printStackTrace(System.out); ++ } ++ } ++ + if (failed) ++ throw new Exception("Some tests for 6616825 failed"); ++ else ++ System.out.println("All tests for 6616825 passed"); ++ } ++ ++ public static void main(String[] args) throws Exception { ++ System.setProperty("jmx.serial.form", "1.0"); ++ ++ /* Check that we really are in jmx.serial.form=1.0 mode. ++ The property is frozen the first time the ObjectName class ++ is referenced so checking that it is set to the correct ++ value now is not enough. */ ++ ObjectStreamClass osc = ObjectStreamClass.lookup(ObjectName.class); ++ if (osc.getFields().length != 6) { ++ throw new Exception("Not using old serial form: fields: " + ++ Arrays.asList(osc.getFields())); ++ // new serial form has no fields, uses writeObject ++ } ++ ++ try { ++ check6211220(); ++ } catch (Exception x) { ++ System.err.println(x.getMessage()); ++ } ++ try { ++ check6616825(); ++ } catch (Exception x) { ++ System.err.println(x.getMessage()); ++ } ++ ++ if (failed) + throw new Exception("Some tests failed"); + else + System.out.println("All tests passed"); ++ + } + +- private static void check(boolean condition) { ++ private static void check(String msg, boolean condition) { + if (!condition) { +- new Throwable("Test failed").printStackTrace(System.out); ++ new Throwable("Test failed "+msg).printStackTrace(System.out); + failed = true; + } + } diff -r 86fbcf148d1f -r 6790b974078e patches/icedtea-6open-6651382.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6open-6651382.patch Thu Oct 09 13:35:37 2008 +0200 @@ -0,0 +1,116 @@ +--- openjdk/jdk/src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java Tue Oct 7 08:43:32 2008 ++++ openjdk/jdk/src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java Tue Oct 7 08:43:32 2008 +@@ -26,7 +26,6 @@ + + // java imports + // +-import java.io.Serializable; + import java.util.Map; + + // jmx imports +@@ -36,9 +35,7 @@ + + // jdmk imports + // +-import com.sun.jmx.snmp.agent.SnmpMib; + +-import java.lang.management.ManagementFactory; + import java.lang.management.MemoryUsage; + import java.lang.management.MemoryType; + import java.lang.management.MemoryPoolMXBean; +@@ -73,8 +70,10 @@ + "jvmMemPoolEntry.getCollectionUsage"; + final static MemoryUsage ZEROS = new MemoryUsage(0,0,0,0); + +- +- ++ final String entryMemoryTag; ++ final String entryPeakMemoryTag; ++ final String entryCollectMemoryTag; ++ + MemoryUsage getMemoryUsage() { + try { + final Map m = JvmContextFactory.getUserData(); +@@ -81,10 +80,10 @@ + + if (m != null) { + final MemoryUsage cached = (MemoryUsage) +- m.get(memoryTag); ++ m.get(entryMemoryTag); + if (cached != null) { +- log.debug("getMemoryUsage", +- "jvmMemPoolEntry.getUsage found in cache."); ++ log.debug("getMemoryUsage",entryMemoryTag+ ++ " found in cache."); + return cached; + } + +@@ -91,7 +90,7 @@ + MemoryUsage u = pool.getUsage(); + if (u == null) u = ZEROS; + +- m.put(memoryTag,u); ++ m.put(entryMemoryTag,u); + return u; + } + // Should never come here. +@@ -113,11 +112,11 @@ + + if (m != null) { + final MemoryUsage cached = (MemoryUsage) +- m.get(peakMemoryTag); ++ m.get(entryPeakMemoryTag); + if (cached != null) { + if (log.isDebugOn()) + log.debug("getPeakMemoryUsage", +- peakMemoryTag + " found in cache."); ++ entryPeakMemoryTag + " found in cache."); + return cached; + } + +@@ -124,7 +123,7 @@ + MemoryUsage u = pool.getPeakUsage(); + if (u == null) u = ZEROS; + +- m.put(peakMemoryTag,u); ++ m.put(entryPeakMemoryTag,u); + return u; + } + // Should never come here. +@@ -146,11 +145,11 @@ + + if (m != null) { + final MemoryUsage cached = (MemoryUsage) +- m.get(collectMemoryTag); ++ m.get(entryCollectMemoryTag); + if (cached != null) { + if (log.isDebugOn()) + log.debug("getCollectMemoryUsage", +- collectMemoryTag + " found in cache."); ++ entryCollectMemoryTag + " found in cache."); + return cached; + } + +@@ -157,7 +156,7 @@ + MemoryUsage u = pool.getCollectionUsage(); + if (u == null) u = ZEROS; + +- m.put(collectMemoryTag,u); ++ m.put(entryCollectMemoryTag,u); + return u; + } + // Should never come here. +@@ -179,9 +178,12 @@ + /** + * Constructor for the "JvmMemPoolEntry" group. + */ +- public JvmMemPoolEntryImpl(MemoryPoolMXBean mp, int index) { ++ public JvmMemPoolEntryImpl(MemoryPoolMXBean mp, final int index) { + this.pool=mp; + this.jvmMemPoolIndex = index; ++ this.entryMemoryTag = memoryTag + "." + index; ++ this.entryPeakMemoryTag = peakMemoryTag + "." + index; ++ this.entryCollectMemoryTag = collectMemoryTag + "." + index; + } + + /** diff -r 86fbcf148d1f -r 6790b974078e patches/icedtea-6open-6756202.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6open-6756202.patch Thu Oct 09 13:35:37 2008 +0200 @@ -0,0 +1,20 @@ +--- openjdk/jdk/make/netbeans/jmx/build.properties Wed Oct 8 09:13:27 2008 ++++ openjdk/jdk/make/netbeans/jmx/build.properties Wed Oct 8 09:13:27 2008 +@@ -42,14 +42,14 @@ + java/lang/management/ \ + javax/management/ + +-project.spec.version = JMX API 2.0 ++project.spec.version = JMX API 1.4 + + jar.jmx.name = jmx.jar + jar.jmx.sealed = true +-jar.jmx.spec.title = JSR 003, 160, 255 - JMX API ++jar.jmx.spec.title = JSR 003, 160 - JMX API + jar.jmx.spec.version = ${project.spec.version} + jar.jmx.spec.vendor = Sun Microsystems, Inc. +-jar.jmx.impl.title = JSR 003, 160, 255 - OpenJDK 7 JMX API ++jar.jmx.impl.title = JSR 003, 160 - OpenJDK 6 JMX API + jar.jmx.impl.vendor = Project OpenJDK + + javadoc.options=-J-Xmx256m From omajid at redhat.com Thu Oct 9 07:43:17 2008 From: omajid at redhat.com (Omair Majid) Date: Thu, 09 Oct 2008 10:43:17 -0400 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 Message-ID: <48EE1885.9050005@redhat.com> Hi, Ioana and I have been working on creating a PulseAudio based Mixer and we believe that it has become stable enough to include it as an optional build in icedtea6. To do that, the pulseaudio source code needs to be put in the pulseaudio folder in icedtea and the attached patch needs to be applied. The configure option --enable-pulse-java is used to enable building the PulseAudio based mixer. To compile icedtea with the pulseaudio-based mixer : (assuming the icedtea-pulseaudio.patch file is in the current directory) hg clone http://icedtea.classpath.org/hg/icedtea6 cd icedtea6 # this next step wont be necessary once the pulse-java source code # is commited to icedtea6 hg clone http://icedtea.classpath.org/hg/pulseaudio patch -p1 < ../icedtea-pulseaudio.patch ./autogen.sh ./configure --enable-pulse-java make Please let me know if there are any concerns, comments or objections. Thanks, Omair -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-pulseaudio.patch Type: text/x-patch Size: 11859 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081009/c37cfff0/icedtea-pulseaudio.patch From gbenson at redhat.com Thu Oct 9 08:25:27 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 09 Oct 2008 15:25:27 +0000 Subject: changeset in /hg/icedtea6: 2008-10-09 Gary Benson changeset fa94fa7ac782 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=fa94fa7ac782 description: 2008-10-09 Gary Benson Andrew Haley * patches/icedtea-hotspot-citypeflow.patch: Reinstated. * Makefile.am (ZERO_PATCHES): Apply the above for HotSpot 7 builds. * ports/hotspot/build/linux/makefiles/shark.make: Remove workaround for the above. diffstat: 4 files changed, 22 insertions(+), 8 deletions(-) ChangeLog | 9 +++++++++ Makefile.am | 3 ++- patches/icedtea-hotspot-citypeflow.patch | 11 +++++++++++ ports/hotspot/build/linux/makefiles/shark.make | 7 ------- diffs (58 lines): diff -r 6790b974078e -r fa94fa7ac782 ChangeLog --- a/ChangeLog Thu Oct 09 13:35:37 2008 +0200 +++ b/ChangeLog Thu Oct 09 11:25:22 2008 -0400 @@ -1,3 +1,12 @@ 2008-10-09 Matthias Klose + Andrew Haley + + * patches/icedtea-hotspot-citypeflow.patch: Reinstated. + * Makefile.am (ZERO_PATCHES): Apply the above for HotSpot 7 builds. + + * ports/hotspot/build/linux/makefiles/shark.make: + Remove workaround for the above. + 2008-10-09 Matthias Klose * patches/icedtea-6open-6616825.patch: New. diff -r 6790b974078e -r fa94fa7ac782 Makefile.am --- a/Makefile.am Thu Oct 09 13:35:37 2008 +0200 +++ b/Makefile.am Thu Oct 09 11:25:22 2008 -0400 @@ -421,7 +421,8 @@ ZERO_PATCHES = \ patches/icedtea-signed-types.patch \ patches/icedtea-test-atomic-operations.patch \ patches/icedtea-zero.patch \ - patches/icedtea-ia64-bugfix.patch + patches/icedtea-ia64-bugfix.patch \ + patches/icedtea-hotspot-citypeflow.patch # Patches needed when not using the newer OpenJDK 7 HotSpot for zero. NON_ZERO_PATCHES = \ diff -r 6790b974078e -r fa94fa7ac782 patches/icedtea-hotspot-citypeflow.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-hotspot-citypeflow.patch Thu Oct 09 11:25:22 2008 -0400 @@ -0,0 +1,11 @@ +--- openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp~ 2008-07-10 22:04:30.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp 2008-07-25 14:32:03.544802121 +0200 +@@ -130,7 +130,7 @@ + + // Used as a combined index for locals and temps + enum Cell { +- Cell_0 ++ Cell_0, Cell_max = UINT_MAX + }; + + // A StateVector summarizes the type information at some diff -r 6790b974078e -r fa94fa7ac782 ports/hotspot/build/linux/makefiles/shark.make --- a/ports/hotspot/build/linux/makefiles/shark.make Thu Oct 09 13:35:37 2008 +0200 +++ b/ports/hotspot/build/linux/makefiles/shark.make Thu Oct 09 11:25:22 2008 -0400 @@ -30,10 +30,3 @@ VM_SUBDIR = server VM_SUBDIR = server CFLAGS += -DSHARK - -# Something in this file fails with GCC at higher optimization levels. -# The part of ciTypeFlow::StateVector::meet_exception() that fills in -# local variables stops part way through leaving the rest set to T_TOP -# (ie uninitialized). The VM then aborts with a ShouldNotReachHere() -# in SharkPHIState::initialize(). Observed with 4.3.2. -OPT_CFLAGS/ciTypeFlow.o = -O1 From bugzilla-daemon at icedtea.classpath.org Thu Oct 9 10:22:58 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 09 Oct 2008 17:22:58 +0000 Subject: [Bug 207] Installation failure (eXist) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=207 p.bradley at dsl.pipex.com changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|Installation failure |Installation failure (eXist) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Thu Oct 9 12:35:22 2008 From: omajid at redhat.com (Omair Majid) Date: Thu, 09 Oct 2008 19:35:22 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-09 Omair Majid changeset ea894778a6d0 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=ea894778a6d0 description: 2008-10-09 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getSupportedFormats): Moved stuff around. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java (PulseAudioPort): Open the port on construction. (open): Doesnt throw any exceptions, so no throws clause. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java (open): Let the mixer know that the line is open. (close): Let the mixer know the the line is closed. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java (open): Let the mixer know that the line is open. (close): Let the mixer konw that hte line is closed. diffstat: 4 files changed, 66 insertions(+), 18 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 33 +++++----- src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 15 +++- src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 19 +++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 17 +++++ diffs (172 lines): diff -r 5108fc37a890 -r ea894778a6d0 src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Wed Oct 08 16:06:00 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Thu Oct 09 15:35:27 2008 -0400 @@ -136,22 +136,6 @@ public class PulseAudioMixer implements * */ int[] channelSizes = new int[] { 1, 2, 3, 4, 5, 6 }; - for (int channelSize : channelSizes) { - properties = new HashMap(); - properties.put(PULSEAUDIO_FORMAT_KEY, "PA_SAMPLE_U8"); - - int sampleSize = 8; // in bits - AudioFormat PA_SAMPLE_U8 = new AudioFormat(Encoding.PCM_UNSIGNED, // encoding - AudioSystem.NOT_SPECIFIED, // sample rate - sampleSize, // sample size - channelSize, // channels - sampleSize / 8 * channelSize, // frame size in bytes - AudioSystem.NOT_SPECIFIED, // frame rate - false, // big endian? - properties); - - supportedFormats.add(PA_SAMPLE_U8); - } for (int channelSize : channelSizes) { properties = new HashMap(); @@ -257,6 +241,23 @@ public class PulseAudioMixer implements properties); supportedFormats.add(PA_SAMPLE_S32LE); + } + + for (int channelSize : channelSizes) { + properties = new HashMap(); + properties.put(PULSEAUDIO_FORMAT_KEY, "PA_SAMPLE_U8"); + + int sampleSize = 8; // in bits + AudioFormat PA_SAMPLE_U8 = new AudioFormat(Encoding.PCM_UNSIGNED, // encoding + AudioSystem.NOT_SPECIFIED, // sample rate + sampleSize, // sample size + channelSize, // channels + sampleSize / 8 * channelSize, // frame size in bytes + AudioSystem.NOT_SPECIFIED, // frame rate + false, // big endian? + properties); + + supportedFormats.add(PA_SAMPLE_U8); } return supportedFormats.toArray(new AudioFormat[0]); diff -r 5108fc37a890 -r ea894778a6d0 src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Wed Oct 08 16:06:00 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Thu Oct 09 15:35:27 2008 -0400 @@ -39,7 +39,6 @@ package org.classpath.icedtea.pulseaudio import javax.sound.sampled.AudioSystem; import javax.sound.sampled.LineEvent; -import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.Port; public abstract class PulseAudioPort extends PulseAudioLine implements Port, @@ -79,6 +78,16 @@ public abstract class PulseAudioPort ext controls.add(muteControl); isOpen = true; + /* + * unlike other lines, Ports must either be open or close + * + * close = no sound. open = sound + * + * so we set it to be open by default + */ + + open(); + // System.out.println("Opened Target Port " + name); } @@ -95,6 +104,8 @@ public abstract class PulseAudioPort ext } public float getVolume() { + + // FIXME need to query system for volume return this.volume; } @@ -130,7 +141,7 @@ public abstract class PulseAudioPort ext public abstract javax.sound.sampled.Line.Info getLineInfo(); @Override - public void open() throws LineUnavailableException { + public void open() { native_setVolume(volume); isOpen = true; fireLineEvent(new LineEvent(this, LineEvent.Type.OPEN, diff -r 5108fc37a890 -r ea894778a6d0 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Wed Oct 08 16:06:00 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Thu Oct 09 15:35:27 2008 -0400 @@ -41,6 +41,8 @@ import javax.sound.sampled.Port; public class PulseAudioSourcePort extends PulseAudioPort { + /* aka mic */ + static { System.loadLibrary("pulse-java"); } @@ -49,6 +51,21 @@ public class PulseAudioSourcePort extend super(name, eventLoop); } + public void open() { + super.open(); + + PulseAudioMixer parent = PulseAudioMixer.getInstance(); + parent.addSourceLine(this); + } + + public void close() { + + PulseAudioMixer parent = PulseAudioMixer.getInstance(); + parent.removeSourceLine(this); + + super.close(); + } + public native byte[] native_setVolume(float newValue); public synchronized native byte[] native_updateVolumeInfo(); @@ -57,5 +74,7 @@ public class PulseAudioSourcePort extend public javax.sound.sampled.Line.Info getLineInfo() { return new Port.Info(Port.class, getName(), false); } + + } diff -r 5108fc37a890 -r ea894778a6d0 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Wed Oct 08 16:06:00 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Thu Oct 09 15:35:27 2008 -0400 @@ -41,6 +41,8 @@ import javax.sound.sampled.Port; public class PulseAudioTargetPort extends PulseAudioPort { + /* aka speaker */ + static { System.loadLibrary("pulse-java"); } @@ -49,6 +51,21 @@ public class PulseAudioTargetPort extend super(name, eventLoop); } + public void open() { + super.open(); + + PulseAudioMixer parent = PulseAudioMixer.getInstance(); + parent.addTargetLine(this); + } + + public void close() { + + PulseAudioMixer parent = PulseAudioMixer.getInstance(); + parent.removeTargetLine(this); + + super.close(); + } + public native byte[] native_setVolume(float newValue); public synchronized native byte[] native_updateVolumeInfo(); From gnu_andrew at member.fsf.org Thu Oct 9 13:47:23 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 9 Oct 2008 21:47:23 +0100 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EE1885.9050005@redhat.com> References: <48EE1885.9050005@redhat.com> Message-ID: <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> 2008/10/9 Omair Majid : > Hi, > > Ioana and I have been working on creating a PulseAudio based Mixer and we > believe that it has become stable enough to include it as an optional build > in icedtea6. To do that, the pulseaudio source code needs to be put in the > pulseaudio folder in icedtea and the attached patch needs to be applied. > > The configure option --enable-pulse-java is used to enable building the > PulseAudio based mixer. > > To compile icedtea with the pulseaudio-based mixer : > (assuming the icedtea-pulseaudio.patch file is in the current directory) > > hg clone http://icedtea.classpath.org/hg/icedtea6 > cd icedtea6 > # this next step wont be necessary once the pulse-java source code > # is commited to icedtea6 > hg clone http://icedtea.classpath.org/hg/pulseaudio > patch -p1 < ../icedtea-pulseaudio.patch > ./autogen.sh > ./configure --enable-pulse-java > make > > Please let me know if there are any concerns, comments or objections. > > Thanks, > > Omair > Is the intention for this patch to represent how PulseAudio will be integrated? If so, I assume it won't be part of IcedTea but just an optional dependency? Comments: * PULSE_JAVA_DIR should be configurable by a --with-pulse-java-dir option. * I assume CC is called explicitly rather than using the usual automake rules (pulseaudio_SOURCES and the like) is because IcedTea itself is a bit non-standard. * The continued use of the test + if ! test -d $(ICEDTEA_BOOT_DIR) ; is worrying. I was already concerned about this from the current ecj invocations. Can we not just depend on the creation of the boot directory for targets that need it? Users tend to find this confusing as it is unclear at runtime which javac/jar/javah is being used and the duplication can lead to inaccuracies. Thanks for the contribution! -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From mark at klomp.org Fri Oct 10 01:20:45 2008 From: mark at klomp.org (Mark Wielaard) Date: Fri, 10 Oct 2008 10:20:45 +0200 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> References: <48EE1885.9050005@redhat.com> <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> Message-ID: <1223626845.4349.5.camel@dijkstra.wildebeest.org> Hi, On Thu, 2008-10-09 at 21:47 +0100, Andrew John Hughes wrote: > 2008/10/9 Omair Majid : > > Ioana and I have been working on creating a PulseAudio based Mixer and we > > believe that it has become stable enough to include it as an optional build > > in icedtea6. To do that, the pulseaudio source code needs to be put in the > > pulseaudio folder in icedtea and the attached patch needs to be applied. > > > > The configure option --enable-pulse-java is used to enable building the > > PulseAudio based mixer. > > > > To compile icedtea with the pulseaudio-based mixer : > > (assuming the icedtea-pulseaudio.patch file is in the current directory) > > > > hg clone http://icedtea.classpath.org/hg/icedtea6 > > cd icedtea6 > > # this next step wont be necessary once the pulse-java source code > > # is commited to icedtea6 > > hg clone http://icedtea.classpath.org/hg/pulseaudio > > patch -p1 < ../icedtea-pulseaudio.patch > > ./autogen.sh > > ./configure --enable-pulse-java > > make > > > > Please let me know if there are any concerns, comments or objections. > > Is the intention for this patch to represent how PulseAudio will be integrated? > If so, I assume it won't be part of IcedTea but just an optional dependency? No, my impression was that we wanted the pulseaudio directory directly into the icedtea repo. That would certainly be my preference. The only thing we need to think about is whether we also want to carry over the revision history or that we keep around the pulseaudio repo for historical reasons. I don't immediately know how easy it is to carry over the changesets from one repo to a completely separate one. Omair, Ioana, what do you want? > Comments: > > * PULSE_JAVA_DIR should be configurable by a --with-pulse-java-dir option. But not if we just add the directory to the repo. > * I assume CC is called explicitly rather than using the usual automake rules > (pulseaudio_SOURCES and the like) is because IcedTea itself is a bit > non-standard. > * The continued use of the test + if ! test -d $(ICEDTEA_BOOT_DIR) ; > is worrying. > I was already concerned about this from the current ecj invocations. > Can we not just > depend on the creation of the boot directory for targets that need it? > Users tend to find > this confusing as it is unclear at runtime which javac/jar/javah is > being used and the duplication > can lead to inaccuracies. What would the "correct" way be to express this in the Makefile.am? > Thanks for the contribution! Yes, I like to see this go in. I already tested it a bit and it seems to work nicely. Cheers, Mark From bugzilla-daemon at icedtea.classpath.org Fri Oct 10 01:23:38 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Oct 2008 08:23:38 +0000 Subject: [Bug 207] Installation failure (eXist) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=207 ------- Comment #1 from mark at klomp.org 2008-10-10 08:23 ------- Yes, attaching the error log to the bug might help. But note that icedtea based on openjdk7-b24 is now 6 months old. A lot of fixes were made since then. Would it be possible to try with a more recent version? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Fri Oct 10 03:46:49 2008 From: doko at ubuntu.com (Matthias Klose) Date: Fri, 10 Oct 2008 12:46:49 +0200 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <1223626845.4349.5.camel@dijkstra.wildebeest.org> References: <48EE1885.9050005@redhat.com> <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> <1223626845.4349.5.camel@dijkstra.wildebeest.org> Message-ID: <48EF3299.3040202@ubuntu.com> Mark Wielaard schrieb: >>> Please let me know if there are any concerns, comments or objections. >> Is the intention for this patch to represent how PulseAudio will be integrated? >> If so, I assume it won't be part of IcedTea but just an optional dependency? > > No, my impression was that we wanted the pulseaudio directory directly > into the icedtea repo. That would certainly be my preference. please don't follow the style bundling and building everything in one source. the jar should be picked up like the rhino jar, or are there problems with this approach? why not make separate pulseaudio release? Matthias From doko at ubuntu.com Fri Oct 10 03:53:13 2008 From: doko at ubuntu.com (Matthias Klose) Date: Fri, 10 Oct 2008 12:53:13 +0200 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EE1885.9050005@redhat.com> References: <48EE1885.9050005@redhat.com> Message-ID: <48EF3419.40800@ubuntu.com> Omair Majid schrieb: > Please let me know if there are any concerns, comments or objections. - pulseaudio 0.9.11 is checked in the configure script; is this necessary, or is 0.9.10 sufficient? asking because both Debian and Ubuntu only have 0.9.10. Or are single patches needed in 0.9.10? - -fpic: not sure if this is necessary for the bindings, but some platforms require -fPIC (s390, mips, powerpc?, arm?) Matthias From mark at klomp.org Fri Oct 10 03:55:56 2008 From: mark at klomp.org (Mark Wielaard) Date: Fri, 10 Oct 2008 12:55:56 +0200 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EF3299.3040202@ubuntu.com> References: <48EE1885.9050005@redhat.com> <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> <1223626845.4349.5.camel@dijkstra.wildebeest.org> <48EF3299.3040202@ubuntu.com> Message-ID: <1223636157.4349.12.camel@dijkstra.wildebeest.org> Hi Matthias, On Fri, 2008-10-10 at 12:46 +0200, Matthias Klose wrote: > Mark Wielaard schrieb: > >>> Please let me know if there are any concerns, comments or objections. > >> Is the intention for this patch to represent how PulseAudio will be integrated? > >> If so, I assume it won't be part of IcedTea but just an optional dependency? > > > > No, my impression was that we wanted the pulseaudio directory directly > > into the icedtea repo. That would certainly be my preference. > > please don't follow the style bundling and building everything in one source. the jar should be > picked up like the rhino jar, or are there problems with this approach? > > why not make separate pulseaudio release? Basically because it is intended to become the core sound sampled provider. Also optional/separate parts become less tested than integrated parts. Rhino is different because it is completely maintained upstream. Splitting our core sources into separate repos isn't really helping integration. If however Omair and Ioana want to maintain it separately and do releases separately from the rest of IcedTea then of course they may do so and then we can treat it like we treat rhino for example as a completely separate thing. Cheers, Mark From iivan at redhat.com Fri Oct 10 06:29:04 2008 From: iivan at redhat.com (Ioana Ivan) Date: Fri, 10 Oct 2008 09:29:04 -0400 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <1223626845.4349.5.camel@dijkstra.wildebeest.org> References: <48EE1885.9050005@redhat.com> <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> <1223626845.4349.5.camel@dijkstra.wildebeest.org> Message-ID: <48EF58A0.1020200@redhat.com> Mark Wielaard wrote: > Hi, > > On Thu, 2008-10-09 at 21:47 +0100, Andrew John Hughes wrote: > >> 2008/10/9 Omair Majid : >> >>> Ioana and I have been working on creating a PulseAudio based Mixer and we >>> believe that it has become stable enough to include it as an optional build >>> in icedtea6. To do that, the pulseaudio source code needs to be put in the >>> pulseaudio folder in icedtea and the attached patch needs to be applied. >>> >>> The configure option --enable-pulse-java is used to enable building the >>> PulseAudio based mixer. >>> >>> To compile icedtea with the pulseaudio-based mixer : >>> (assuming the icedtea-pulseaudio.patch file is in the current directory) >>> >>> hg clone http://icedtea.classpath.org/hg/icedtea6 >>> cd icedtea6 >>> # this next step wont be necessary once the pulse-java source code >>> # is commited to icedtea6 >>> hg clone http://icedtea.classpath.org/hg/pulseaudio >>> patch -p1 < ../icedtea-pulseaudio.patch >>> ./autogen.sh >>> ./configure --enable-pulse-java >>> make >>> >>> Please let me know if there are any concerns, comments or objections. >>> >> Is the intention for this patch to represent how PulseAudio will be integrated? >> If so, I assume it won't be part of IcedTea but just an optional dependency? >> > > No, my impression was that we wanted the pulseaudio directory directly > into the icedtea repo. That would certainly be my preference. > > The only thing we need to think about is whether we also want to carry > over the revision history or that we keep around the pulseaudio repo for > historical reasons. I don't immediately know how easy it is to carry > over the changesets from one repo to a completely separate one. > Omair, Ioana, what do you want? > I think it would be better to carry over the revision history to the icedtea repository, but it doesn't really matter to me. If that's difficult to do, keeping the pulseaudio repo is fine too. Thanks for helping us integrate the pulseaudio spi in icedtea :) > >> Comments: >> >> * PULSE_JAVA_DIR should be configurable by a --with-pulse-java-dir option. >> > > But not if we just add the directory to the repo. > > >> * I assume CC is called explicitly rather than using the usual automake rules >> (pulseaudio_SOURCES and the like) is because IcedTea itself is a bit >> non-standard. >> * The continued use of the test + if ! test -d $(ICEDTEA_BOOT_DIR) ; >> is worrying. >> I was already concerned about this from the current ecj invocations. >> Can we not just >> depend on the creation of the boot directory for targets that need it? >> Users tend to find >> this confusing as it is unclear at runtime which javac/jar/javah is >> being used and the duplication >> can lead to inaccuracies. >> > > What would the "correct" way be to express this in the Makefile.am? > > >> Thanks for the contribution! >> > > Yes, I like to see this go in. I already tested it a bit and it seems to > work nicely. > > Cheers, > > Mark > > From omajid at redhat.com Fri Oct 10 06:37:45 2008 From: omajid at redhat.com (Omair Majid) Date: Fri, 10 Oct 2008 09:37:45 -0400 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EF3419.40800@ubuntu.com> References: <48EE1885.9050005@redhat.com> <48EF3419.40800@ubuntu.com> Message-ID: <48EF5AA9.5000709@redhat.com> Matthias Klose wrote: > - pulseaudio 0.9.11 is checked in the configure script; is this necessary, > or is 0.9.10 sufficient? asking because both Debian and Ubuntu only have > 0.9.10. Or are single patches needed in 0.9.10? PulseAudio >= 0.9.11 provides a callback which is used in implementing LineEvent.START (and possibly other things). So PulseAudio >= 0.9.11 is required for pulse-java to work correctly. Omair From iivan at redhat.com Fri Oct 10 06:36:03 2008 From: iivan at redhat.com (Ioana Ivan) Date: Fri, 10 Oct 2008 09:36:03 -0400 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EF3419.40800@ubuntu.com> References: <48EE1885.9050005@redhat.com> <48EF3419.40800@ubuntu.com> Message-ID: <48EF5A43.5000000@redhat.com> Matthias Klose wrote: > Omair Majid schrieb: > >> Please let me know if there are any concerns, comments or objections. >> > > - pulseaudio 0.9.11 is checked in the configure script; is this necessary, > or is 0.9.10 sufficient? asking because both Debian and Ubuntu only have > 0.9.10. Or are single patches needed in 0.9.10? > 0.9.11 is needed for START/STOP events to be sent to the line listeners. There is actually a bug in pulseaudio that causes the start callback to not be called sometimes that's been fixed in 9.13, so it's better to have that version, but we have added some checks in java so 9.11 and 9.12 should work as well. We can write a patch so that it compiles and runs with 9.10, but the events won't work. Mark, I remember you were saying you had a patch for that. Is it working? > - -fpic: not sure if this is necessary for the bindings, but some platforms > require -fPIC (s390, mips, powerpc?, arm?) > > Matthias > From aph at redhat.com Fri Oct 10 07:00:00 2008 From: aph at redhat.com (Andrew Haley) Date: Fri, 10 Oct 2008 15:00:00 +0100 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EF3419.40800@ubuntu.com> References: <48EE1885.9050005@redhat.com> <48EF3419.40800@ubuntu.com> Message-ID: <18671.24544.415608.224435@zebedee.pink> Matthias Klose writes: > Omair Majid schrieb: > > Please let me know if there are any concerns, comments or objections. > > - pulseaudio 0.9.11 is checked in the configure script; is this necessary, > or is 0.9.10 sufficient? asking because both Debian and Ubuntu only have > 0.9.10. Or are single patches needed in 0.9.10? > > - -fpic: not sure if this is necessary for the bindings, but some platforms > require -fPIC (s390, mips, powerpc?, arm?) -fpic must always be used when building a shared lib. No exceptions. It might seem to work on a 32-bit x86, but it doesn't really. -fPIC doesn't seem to have much (any?) effect on x86, and helps on other arches. You might as well use it. Andrew. From mark at klomp.org Fri Oct 10 07:31:27 2008 From: mark at klomp.org (Mark Wielaard) Date: Fri, 10 Oct 2008 16:31:27 +0200 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EF5A43.5000000@redhat.com> References: <48EE1885.9050005@redhat.com> <48EF3419.40800@ubuntu.com> <48EF5A43.5000000@redhat.com> Message-ID: <1223649087.4349.25.camel@dijkstra.wildebeest.org> Hi Ioana, On Fri, 2008-10-10 at 09:36 -0400, Ioana Ivan wrote: > 0.9.11 is needed for START/STOP events to be sent to the line listeners. > There is actually a bug in pulseaudio that causes the start callback to > not be called sometimes that's been fixed in 9.13, so it's better to > have that version, but we have added some checks in java so 9.11 and > 9.12 should work as well. We can write a patch so that it compiles and > runs with 9.10, but the events won't work. Mark, I remember you were > saying you had a patch for that. Is it working? It is more like a quick and dirty hack. It makes it possible to compile against 0.9.10, but by completely eliminating the stream_started_callback(), which means LineListeners don't work. Cheers, Mark diff -r 5108fc37a890 src/native/org_classpath_icedtea_pulseaudio_Stream.c --- a/src/native/org_classpath_icedtea_pulseaudio_Stream.c Wed Oct 08 16:06:00 2008 -0400 +++ b/src/native/org_classpath_icedtea_pulseaudio_Stream.c Fri Oct 10 16:28:20 2008 +0200 @@ -170,6 +170,7 @@ // requires pulseaudio 0.9.11 :( +/* static void stream_started_callback(pa_stream *stream, void *userdata) { // printf("stream_started_callback called\n"); java_context* context = userdata; @@ -187,6 +188,7 @@ } } +*/ static void stream_latency_update_callback(pa_stream *stream, void *userdata) { // printf("stream_latency_update_callback called\n"); @@ -308,7 +310,7 @@ pa_stream_set_read_callback (stream, stream_read_callback, j_context); pa_stream_set_overflow_callback (stream, stream_overflow_callback, j_context); pa_stream_set_underflow_callback (stream, stream_underflow_callback, j_context); - pa_stream_set_started_callback (stream, stream_started_callback, j_context); + // pa_stream_set_started_callback (stream, stream_started_callback, j_context); pa_stream_set_latency_update_callback (stream, stream_latency_update_callback, j_context); pa_stream_set_moved_callback (stream, stream_moved_callback, j_context); pa_stream_set_suspended_callback (stream, stream_suspended_callback, j_context); From omajid at redhat.com Fri Oct 10 08:10:37 2008 From: omajid at redhat.com (Omair Majid) Date: Fri, 10 Oct 2008 15:10:37 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-09 Omair Majid changeset d4676ea1be88 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=d4676ea1be88 description: 2008-10-09 Omair Majid Added FIXMEs for places where permissions should be checked diffstat: 9 files changed, 46 insertions(+), 2 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 4 +++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 4 +++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java | 2 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 12 ++++++++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 8 ++++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 4 +++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 3 ++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 4 +++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 7 +++++ diffs (219 lines): diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Thu Oct 09 17:28:36 2008 -0400 @@ -233,6 +233,8 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("line already closed"); } + // FIXME security + clipThread.interrupt(); try { @@ -390,6 +392,8 @@ public class PulseAudioClip extends Puls public void open(AudioFormat format, byte[] data, int offset, int bufferSize) throws LineUnavailableException { + // FIXME security + super.open(format); this.data = new byte[bufferSize]; System.arraycopy(data, offset, this.data, 0, bufferSize); diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Thu Oct 09 17:28:36 2008 -0400 @@ -84,6 +84,8 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } + + // FIXME security createStream(format); addStreamListeners(); @@ -288,6 +290,8 @@ public abstract class PulseAudioDataLine "Line must be open for close() to work"); } + // FIXME security + synchronized (eventLoop.threadLock) { stream.disconnect(); } diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java Thu Oct 09 17:28:36 2008 -0400 @@ -111,8 +111,6 @@ abstract class PulseAudioLine implements return isOpen; } - - public void removeLineListener(LineListener listener) { lineListeners.remove(listener); } diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Thu Oct 09 17:28:36 2008 -0400 @@ -266,6 +266,8 @@ public class PulseAudioMixer implements @Override public Line getLine(Line.Info info) throws LineUnavailableException { + // FIXME security! + if (!isLineSupported(info)) { throw new IllegalArgumentException("Line unsupported: " + info); } @@ -363,6 +365,9 @@ public class PulseAudioMixer implements @Override public Line[] getSourceLines() { + + // FIXME security + return (Line[]) sourceLines.toArray(new Line[0]); } @@ -387,6 +392,9 @@ public class PulseAudioMixer implements @Override public Line[] getTargetLines() { + + // FIXME security + return (Line[]) targetLines.toArray(new TargetDataLine[0]); } @@ -473,6 +481,8 @@ public class PulseAudioMixer implements throw new IllegalStateException("Mixer is not open; cant close"); } + // FIXME security + eventLoopThread.interrupt(); try { @@ -567,6 +577,8 @@ public class PulseAudioMixer implements throw new IllegalStateException("Mixer is already open"); } + // FIXME security + InetAddress addr = InetAddress.getAllByName(host)[0]; if (port != null) { diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Thu Oct 09 17:28:36 2008 -0400 @@ -86,6 +86,8 @@ public abstract class PulseAudioPort ext * so we set it to be open by default */ + + // TODO what to do if a security exception is thrown? open(); // System.out.println("Opened Target Port " + name); @@ -131,6 +133,9 @@ public abstract class PulseAudioPort ext @Override public void close() { + + // FIXME security + native_setVolume((float) 0); isOpen = false; fireLineEvent(new LineEvent(this, LineEvent.Type.CLOSE, @@ -142,6 +147,9 @@ public abstract class PulseAudioPort ext @Override public void open() { + + // FIXME security + native_setVolume(volume); isOpen = true; fireLineEvent(new LineEvent(this, LineEvent.Type.OPEN, diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Thu Oct 09 17:28:36 2008 -0400 @@ -67,6 +67,8 @@ public class PulseAudioSourceDataLine ex synchronized public void open(AudioFormat format, int bufferSize) throws LineUnavailableException { + // FIXME security + super.open(format, bufferSize); volumeControl = new PulseAudioVolumeControl(this, eventLoop); @@ -312,6 +314,8 @@ public class PulseAudioSourceDataLine ex throw new IllegalStateException("not open so cant close"); } + // FIXME security + writeInterrupted = true; PulseAudioMixer parent = PulseAudioMixer.getInstance(); diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Thu Oct 09 17:28:36 2008 -0400 @@ -52,6 +52,9 @@ public class PulseAudioSourcePort extend } public void open() { + + + super.open(); PulseAudioMixer parent = PulseAudioMixer.getInstance(); diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Thu Oct 09 17:28:36 2008 -0400 @@ -75,6 +75,8 @@ public class PulseAudioTargetDataLine ex "Line cant be closed if it isnt open"); } + // FIXME security + PulseAudioMixer parentMixer = PulseAudioMixer.getInstance(); parentMixer.removeTargetLine(this); @@ -88,6 +90,8 @@ public class PulseAudioTargetDataLine ex throw new IllegalStateException("already open"); } + // FIXME security + super.open(format, bufferSize); /* initialize all the member variables */ diff -r ea894778a6d0 -r d4676ea1be88 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Thu Oct 09 15:35:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Thu Oct 09 17:28:36 2008 -0400 @@ -48,10 +48,15 @@ public class PulseAudioTargetPort extend } public PulseAudioTargetPort(String name, EventLoop eventLoop) { + super(name, eventLoop); + } public void open() { + + // FIXME security + super.open(); PulseAudioMixer parent = PulseAudioMixer.getInstance(); @@ -59,6 +64,8 @@ public class PulseAudioTargetPort extend } public void close() { + + // FIXME PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeTargetLine(this); From omajid at redhat.com Fri Oct 10 08:10:37 2008 From: omajid at redhat.com (Omair Majid) Date: Fri, 10 Oct 2008 15:10:37 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-10 Omair Majid changeset 63fe20298326 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=63fe20298326 description: 2008-10-10 Omair Majid * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (close): Check for audio permissions. (open): Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (open): Removed FIXME for security. (close): Likewise. * src/java/org/classpath/icedtea/pulseaudio/Mixer.java (getLine): Check for permissions before returning a line. (getSourceLines): Check for permissions. (getTargetLines): Likewise. (close): Likewise. (openRemote): Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java (PulseAudioPort): Dont open the port by default. (open): Removed FIXME. (close): Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAUdioSourceDataLine.j.ava (open): Check for permissions. (close): Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java (open): Likewise. (close): Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (open): Likewise. (close): Likewise. * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java (open): Likewise. (close): Likewise. * unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java (testControls): Open and close the ports. * unittests/org/classpath/icedtea/pulseaudio/PulseAUdioTargetPortTest.java (testControls): Likewise. diffstat: 10 files changed, 132 insertions(+), 59 deletions(-) src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 23 ++- src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 7 - src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 65 ++++++++-- src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 14 -- src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 12 + src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 13 +- src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 16 +- src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 33 +++-- unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java | 4 unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java | 4 diffs (truncated from 510 to 500 lines): diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 11:10:27 2008 -0400 @@ -41,6 +41,7 @@ import java.io.IOException; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; +import javax.sound.sampled.AudioPermission; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.LineUnavailableException; @@ -229,12 +230,15 @@ public class PulseAudioClip extends Puls @Override public void close() { + + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + if (!isOpen) { throw new IllegalStateException("line already closed"); } - // FIXME security - clipThread.interrupt(); try { @@ -358,10 +362,11 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("Line not open"); } - if ( count < 0 && count != LOOP_CONTINUOUSLY) { - throw new IllegalArgumentException("invalid value for count:" + count); - } - + if (count < 0 && count != LOOP_CONTINUOUSLY) { + throw new IllegalArgumentException("invalid value for count:" + + count); + } + if (clipThread.isAlive() && count != 0) { // Do nothing; behavior not specified by the Java API return; @@ -392,8 +397,10 @@ public class PulseAudioClip extends Puls public void open(AudioFormat format, byte[] data, int offset, int bufferSize) throws LineUnavailableException { - // FIXME security - + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + super.open(format); this.data = new byte[bufferSize]; System.arraycopy(data, offset, this.data, 0, bufferSize); diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 11:10:27 2008 -0400 @@ -84,8 +84,6 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } - - // FIXME security createStream(format); addStreamListeners(); @@ -290,8 +288,6 @@ public abstract class PulseAudioDataLine "Line must be open for close() to work"); } - // FIXME security - synchronized (eventLoop.threadLock) { stream.disconnect(); } @@ -310,7 +306,7 @@ public abstract class PulseAudioDataLine isStarted = false; } - + public void reconnectforSynchronization(Stream masterStream) throws LineUnavailableException { sendEvents = false; @@ -353,7 +349,6 @@ public abstract class PulseAudioDataLine isStarted = true; } - public synchronized void stop() { if (!isOpen) { diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Fri Oct 10 11:10:27 2008 -0400 @@ -49,6 +49,7 @@ import java.util.concurrent.Semaphore; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; +import javax.sound.sampled.AudioPermission; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.Control; @@ -266,8 +267,6 @@ public class PulseAudioMixer implements @Override public Line getLine(Line.Info info) throws LineUnavailableException { - // FIXME security! - if (!isLineSupported(info)) { throw new IllegalArgumentException("Line unsupported: " + info); } @@ -302,16 +301,28 @@ public class PulseAudioMixer implements } if ((info.getLineClass() == SourceDataLine.class)) { + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + return new PulseAudioSourceDataLine(eventLoop, formats, defaultFormat); } if ((info.getLineClass() == TargetDataLine.class)) { + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + return new PulseAudioTargetDataLine(eventLoop, formats, defaultFormat); } if ((info.getLineClass() == Clip.class)) { + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + return new PulseAudioClip(eventLoop, formats, defaultFormat); } @@ -365,9 +376,11 @@ public class PulseAudioMixer implements @Override public Line[] getSourceLines() { - - // FIXME security - + + /* check for permmission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + return (Line[]) sourceLines.toArray(new Line[0]); } @@ -392,9 +405,11 @@ public class PulseAudioMixer implements @Override public Line[] getTargetLines() { - - // FIXME security - + + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + return (Line[]) targetLines.toArray(new TargetDataLine[0]); } @@ -477,12 +492,25 @@ public class PulseAudioMixer implements @Override synchronized public void close() { + /* + * only allow the mixer to be controlled if either playback or recording + * is allowed + */ + + try { + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + } catch (SecurityException e) { + /* check for permission to record audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + } + if (!this.isOpen) { throw new IllegalStateException("Mixer is not open; cant close"); } - // FIXME security - eventLoopThread.interrupt(); try { @@ -573,12 +601,25 @@ public class PulseAudioMixer implements synchronized public void openRemote(String appName, String host, Integer port) throws UnknownHostException, LineUnavailableException { + /* + * only allow the mixer to be controlled if either playback or recording + * is allowed + */ + + try { + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + } catch (SecurityException e) { + /* check for permission to record audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + } + if (isOpen) { throw new IllegalStateException("Mixer is already open"); } - // FIXME security - InetAddress addr = InetAddress.getAllByName(host)[0]; if (port != null) { diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Oct 10 11:10:27 2008 -0400 @@ -83,12 +83,8 @@ public abstract class PulseAudioPort ext * * close = no sound. open = sound * - * so we set it to be open by default */ - - - // TODO what to do if a security exception is thrown? - open(); + // FIXME open(); // System.out.println("Opened Target Port " + name); } @@ -133,9 +129,7 @@ public abstract class PulseAudioPort ext @Override public void close() { - - // FIXME security - + native_setVolume((float) 0); isOpen = false; fireLineEvent(new LineEvent(this, LineEvent.Type.CLOSE, @@ -147,9 +141,7 @@ public abstract class PulseAudioPort ext @Override public void open() { - - // FIXME security - + native_setVolume(volume); isOpen = true; fireLineEvent(new LineEvent(this, LineEvent.Type.OPEN, diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 10 11:10:27 2008 -0400 @@ -40,6 +40,7 @@ import java.util.ArrayList; import java.util.ArrayList; import javax.sound.sampled.AudioFormat; +import javax.sound.sampled.AudioPermission; import javax.sound.sampled.LineListener; import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.SourceDataLine; @@ -67,7 +68,9 @@ public class PulseAudioSourceDataLine ex synchronized public void open(AudioFormat format, int bufferSize) throws LineUnavailableException { - // FIXME security + /* check for permmission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); super.open(format, bufferSize); @@ -310,11 +313,14 @@ public class PulseAudioSourceDataLine ex @Override synchronized public void close() { + + /* check for permmission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + if (!isOpen) { throw new IllegalStateException("not open so cant close"); } - - // FIXME security writeInterrupted = true; diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Fri Oct 10 11:10:27 2008 -0400 @@ -37,6 +37,7 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import javax.sound.sampled.AudioPermission; import javax.sound.sampled.Port; public class PulseAudioSourcePort extends PulseAudioPort { @@ -53,7 +54,9 @@ public class PulseAudioSourcePort extend public void open() { - + /* check for permission to record audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); super.open(); @@ -62,6 +65,14 @@ public class PulseAudioSourcePort extend } public void close() { + + /* check for permission to record audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + + if (!isOpen) { + throw new IllegalStateException("Port is not open; so cant close"); + } PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeSourceLine(this); diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Fri Oct 10 11:10:27 2008 -0400 @@ -38,6 +38,7 @@ package org.classpath.icedtea.pulseaudio package org.classpath.icedtea.pulseaudio; import javax.sound.sampled.AudioFormat; +import javax.sound.sampled.AudioPermission; import javax.sound.sampled.LineEvent; import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.TargetDataLine; @@ -70,13 +71,15 @@ public class PulseAudioTargetDataLine ex @Override synchronized public void close() { + /* check for permission to record audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + if (!isOpen) { throw new IllegalStateException( "Line cant be closed if it isnt open"); } - // FIXME security - PulseAudioMixer parentMixer = PulseAudioMixer.getInstance(); parentMixer.removeTargetLine(this); @@ -86,12 +89,13 @@ public class PulseAudioTargetDataLine ex @Override synchronized public void open(AudioFormat format, int bufferSize) throws LineUnavailableException { + /* check for permission to record audio */ + AudioPermission perm = new AudioPermission("record", null); + perm.checkGuard(null); + if (isOpen) { throw new IllegalStateException("already open"); } - - // FIXME security - super.open(format, bufferSize); /* initialize all the member variables */ @@ -223,7 +227,7 @@ public class PulseAudioTargetDataLine ex /* read a fragment, and drop it from the server */ currentFragment = stream.peek(); - + stream.drop(); if (currentFragment == null) { System.out diff -r d4676ea1be88 -r 63fe20298326 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Thu Oct 09 17:28:36 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 10 11:10:27 2008 -0400 @@ -37,42 +37,51 @@ exception statement from your version. package org.classpath.icedtea.pulseaudio; +import javax.sound.sampled.AudioPermission; import javax.sound.sampled.Port; public class PulseAudioTargetPort extends PulseAudioPort { /* aka speaker */ - + static { System.loadLibrary("pulse-java"); } public PulseAudioTargetPort(String name, EventLoop eventLoop) { - + super(name, eventLoop); - + } public void open() { - - // FIXME security - + + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); + super.open(); - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.addTargetLine(this); } - + public void close() { + + /* check for permission to play audio */ + AudioPermission perm = new AudioPermission("play", null); + perm.checkGuard(null); - // FIXME + if (!isOpen) { + throw new IllegalStateException("not open, so cant close Port"); + } PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeTargetLine(this); - - super.close(); + + super.close(); } - + public native byte[] native_setVolume(float newValue); public synchronized native byte[] native_updateVolumeInfo(); diff -r d4676ea1be88 -r 63fe20298326 unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java Thu Oct 09 17:28:36 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java Fri Oct 10 11:10:27 2008 -0400 @@ -97,6 +97,9 @@ public class PulseAudioSourcePortTest { if (info.getLineClass() == Port.class) { System.out.println(info.toString()); Port port = (Port) mixer.getLine(info); + if (!port.isOpen()) { + port.open(); + } FloatControl volumeControl = (FloatControl) port .getControl(FloatControl.Type.VOLUME); volumeControl.setValue(60000); @@ -104,6 +107,7 @@ public class PulseAudioSourcePortTest { .getControl(BooleanControl.Type.MUTE); muteControl.setValue(true); muteControl.setValue(false); + port.close(); } } } diff -r d4676ea1be88 -r 63fe20298326 unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java --- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java Thu Oct 09 17:28:36 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java Fri Oct 10 11:10:27 2008 -0400 @@ -97,6 +97,9 @@ public class PulseAudioTargetPortTest { if (info.getLineClass() == Port.class) { System.out.println(info.toString()); Port port = (Port) mixer.getLine(info); + if (!port.isOpen()) { + port.open(); + } FloatControl volumeControl = (FloatControl) port From bugzilla-daemon at icedtea.classpath.org Fri Oct 10 09:16:42 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Oct 2008 16:16:42 +0000 Subject: [Bug 210] New: Eclipse IDE for C/C++ crashes while running code Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=210 Summary: Eclipse IDE for C/C++ crashes while running code Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: t.m.nixstuff at gmail.com Eclipse IDE sometimes crashes while trying to run executable. I'll upload the log file. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 10 09:17:41 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Oct 2008 16:17:41 +0000 Subject: [Bug 210] Eclipse IDE for C/C++ crashes while running code Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=210 ------- Comment #1 from t.m.nixstuff at gmail.com 2008-10-10 16:17 ------- Created an attachment (id=108) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=108&action=view) Log dumped after eclipse crash -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From iivan at redhat.com Fri Oct 10 09:40:12 2008 From: iivan at redhat.com (Ioana Ivan) Date: Fri, 10 Oct 2008 16:40:12 +0000 Subject: changeset in /hg/pulseaudio: 2008-10-10 Ioana Ivan changeset 095b46980d97 in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=095b46980d97 description: 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (getLineInfo): removed method, moved to each subclass * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (getLineInfo): new method * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (getLineInfo): new method * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java getLineInfo): new method diffstat: 6 files changed, 33 insertions(+), 6 deletions(-) .classpath | 1 ChangeLog | 11 ++++++++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 7 ++++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 6 ----- src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 7 ++++++ src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 7 ++++++ diffs (114 lines): diff -r 63fe20298326 -r 095b46980d97 .classpath --- a/.classpath Fri Oct 10 11:10:27 2008 -0400 +++ b/.classpath Fri Oct 10 12:32:00 2008 -0400 @@ -3,6 +3,7 @@ + diff -r 63fe20298326 -r 095b46980d97 ChangeLog --- a/ChangeLog Fri Oct 10 11:10:27 2008 -0400 +++ b/ChangeLog Fri Oct 10 12:32:00 2008 -0400 @@ -1,3 +1,14 @@ 2008-10-08 Ioana Ivan +2008-10-10 Ioana Ivan + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (getLineInfo): removed method, moved to each subclass + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (getLineInfo): new method + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (getLineInfo): new method + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + getLineInfo): new method + + 2008-10-08 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (addStreamListener): startedListener always fires a START event diff -r 63fe20298326 -r 095b46980d97 src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 11:10:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 12:32:00 2008 -0400 @@ -44,6 +44,7 @@ import javax.sound.sampled.AudioPermissi import javax.sound.sampled.AudioPermission; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; +import javax.sound.sampled.DataLine; import javax.sound.sampled.LineUnavailableException; import org.classpath.icedtea.pulseaudio.Stream.WriteListener; @@ -557,5 +558,11 @@ public class PulseAudioClip extends Puls super.stop(); } + + public javax.sound.sampled.Line.Info getLineInfo() { + return new DataLine.Info(Clip.class, supportedFormats, + StreamBufferAttributes.MIN_VALUE, + StreamBufferAttributes.MAX_VALUE); + } } diff -r 63fe20298326 -r 095b46980d97 src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 11:10:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 12:32:00 2008 -0400 @@ -426,12 +426,6 @@ public abstract class PulseAudioDataLine return bufferSize; } - public javax.sound.sampled.Line.Info getLineInfo() { - return new DataLine.Info(this.getClass(), supportedFormats, - StreamBufferAttributes.MIN_VALUE, - StreamBufferAttributes.MAX_VALUE); - } - @Override public AudioFormat getFormat() { if (!isOpen) { diff -r 63fe20298326 -r 095b46980d97 src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 10 11:10:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 10 12:32:00 2008 -0400 @@ -40,6 +40,7 @@ import java.util.ArrayList; import java.util.ArrayList; import javax.sound.sampled.AudioFormat; +import javax.sound.sampled.DataLine; import javax.sound.sampled.AudioPermission; import javax.sound.sampled.LineListener; import javax.sound.sampled.LineUnavailableException; @@ -329,5 +330,11 @@ public class PulseAudioSourceDataLine ex super.close(); } + + public javax.sound.sampled.Line.Info getLineInfo() { + return new DataLine.Info(SourceDataLine.class, supportedFormats, + StreamBufferAttributes.MIN_VALUE, + StreamBufferAttributes.MAX_VALUE); + } } diff -r 63fe20298326 -r 095b46980d97 src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Fri Oct 10 11:10:27 2008 -0400 +++ b/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Fri Oct 10 12:32:00 2008 -0400 @@ -38,6 +38,7 @@ package org.classpath.icedtea.pulseaudio package org.classpath.icedtea.pulseaudio; import javax.sound.sampled.AudioFormat; +import javax.sound.sampled.DataLine; import javax.sound.sampled.AudioPermission; import javax.sound.sampled.LineEvent; import javax.sound.sampled.LineUnavailableException; @@ -362,5 +363,11 @@ public class PulseAudioTargetDataLine ex fireLineEvent(new LineEvent(this, LineEvent.Type.STOP, framesSinceOpen)); } + + public javax.sound.sampled.Line.Info getLineInfo() { + return new DataLine.Info(TargetDataLine.class, supportedFormats, + StreamBufferAttributes.MIN_VALUE, + StreamBufferAttributes.MAX_VALUE); + } } From bugzilla-daemon at icedtea.classpath.org Fri Oct 10 09:54:46 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Oct 2008 16:54:46 +0000 Subject: [Bug 207] Installation failure (eXist) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=207 ------- Comment #2 from p.bradley at dsl.pipex.com 2008-10-10 16:54 ------- Created an attachment (id=109) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=109&action=view) Error log Log now attached. Stupidly I didn't see you could attach a file when I did the original report (D'oh!). As for the icedtea version, I'll check the openSUSE repositories for a more recent version and install it if there is one. Whether there is or not, I'll post here to say what progress I have or haven't made. Cheers -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 10 10:21:24 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Oct 2008 17:21:24 +0000 Subject: [Bug 207] Installation failure (eXist) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=207 mark at klomp.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |DUPLICATE ------- Comment #3 from mark at klomp.org 2008-10-10 17:21 ------- Thanks for the error log. This is indeed an old bug since fixed. *** This bug has been marked as a duplicate of bug 114 *** -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 10 10:21:26 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Oct 2008 17:21:26 +0000 Subject: [Bug 114] sun.awt.image.JPEGImageDecoder.initIDs crash Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=114 mark at klomp.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |p.bradley at dsl.pipex.com ------- Comment #8 from mark at klomp.org 2008-10-10 17:21 ------- *** Bug 207 has been marked as a duplicate of this bug. *** -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Fri Oct 10 13:03:08 2008 From: omajid at redhat.com (Omair Majid) Date: Fri, 10 Oct 2008 20:03:08 +0000 Subject: changeset in /hg/icedtea6: 2008-10-10 Ioana Ivan Message-ID: changeset 8b85ec866923 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=8b85ec866923 description: 2008-10-10 Ioana Ivan Omair Majid * INSTALL: Updated to reflect requirements for pulse-java. * Makefile.am (distclean-local): Clean up pulse-java. (EXTRA_DIST): Add pulseaudio folder. (stamps/icedtea.stamp): Added dependency on stamps/pulse-java.stamp. Also copy generated .jar and .so files to the jre images. (stamps/icedtea-debug.stamp): Likewise. (stamps/pulse-java.stamp): New target. (stamps/pulse-java-jar.stamp): Likewise. (stamps/pulse-java-class.stamp): Likewise. (stamps/pulse-java-headers.stamp): Likewise. (clean-pulse-java): Likewise. * README: Added note for PulseAudio based mixer. * acinclude.m4 (FIND_PULSEAUDIO): Find the pulseaudio binary. * configure.ac: Check for pulseaudio server and header files being installed. * patches/icedtea-pulse-soundproperties.patch: Dont use pulse-java as the default Mixer. * pulseaudio/: Copied over sources from pulseaudio repository. diffstat: 52 files changed, 11603 insertions(+), 4 deletions(-) ChangeLog | 24 INSTALL | 4 Makefile.am | 134 README | 8 acinclude.m4 | 9 configure.ac | 25 patches/icedtea-pulse-soundproperties.patch | 16 pulseaudio/AUTHORS | 5 pulseaudio/COPYING | 340 ++ pulseaudio/README | 28 pulseaudio/src/java/META-INF/services/javax.sound.sampled.spi.MixerProvider | 3 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextEvent.java | 56 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextListener.java | 44 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 280 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java | 147 + pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 568 ++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 471 +++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java | 118 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 881 ++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerInfo.java | 62 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerProvider.java | 63 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMuteControl.java | 78 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPlaybackLine.java | 54 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 155 + pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 340 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 94 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 373 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 94 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java | 90 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java | 777 +++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamBufferAttributes.java | 84 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamSampleSpecification.java | 70 pulseaudio/src/native/jni-common.c | 236 + pulseaudio/src/native/jni-common.h | 90 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_EventLoop.c | 362 ++ pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Operation.c | 83 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c | 102 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c | 67 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c | 107 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Stream.c | 1010 +++++++ pulseaudio/testsounds/README | 4 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/OtherSoundProvidersAvailableTest.java | 114 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java | 623 ++++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioEventLoopOverhead.java | 100 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerProviderTest.java | 118 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerRawTest.java | 120 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 434 +++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineRawTest.java | 305 ++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java | 1345 ++++++++++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java | 122 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java | 648 ++++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java | 122 diffs (truncated from 11924 to 500 lines): diff -r fa94fa7ac782 -r 8b85ec866923 ChangeLog --- a/ChangeLog Thu Oct 09 11:25:22 2008 -0400 +++ b/ChangeLog Fri Oct 10 16:03:12 2008 -0400 @@ -1,3 +1,27 @@ 2008-10-09 Gary Benson + Omair Majid + + * INSTALL: Updated to reflect requirements for pulse-java. + * Makefile.am + (distclean-local): Clean up pulse-java. + (EXTRA_DIST): Add pulseaudio folder. + (stamps/icedtea.stamp): Added dependency on stamps/pulse-java.stamp. Also + copy generated .jar and .so files to the jre images. + (stamps/icedtea-debug.stamp): Likewise. + (stamps/pulse-java.stamp): New target. + (stamps/pulse-java-jar.stamp): Likewise. + (stamps/pulse-java-class.stamp): Likewise. + (stamps/pulse-java-headers.stamp): Likewise. + (clean-pulse-java): Likewise. + * README: Added note for PulseAudio based mixer. + * acinclude.m4 + (FIND_PULSEAUDIO): Find the pulseaudio binary. + * configure.ac: Check for pulseaudio server and header files being + installed. + * patches/icedtea-pulse-soundproperties.patch: Dont use pulse-java as the + default Mixer. + * pulseaudio/: Copied over sources from pulseaudio repository. + 2008-10-09 Gary Benson Andrew Haley diff -r fa94fa7ac782 -r 8b85ec866923 INSTALL --- a/INSTALL Thu Oct 09 11:25:22 2008 -0400 +++ b/INSTALL Fri Oct 10 16:03:12 2008 -0400 @@ -31,6 +31,10 @@ zlib-devel zlib-devel rhino netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm + +For builing the PulseAudio based mixer, you will need +pulseaudio-libs-devel >= 0.9.11 +pulseaudio >= 0.9.11 For building the zero-assembler port (see below), you will need libffi. diff -r fa94fa7ac782 -r 8b85ec866923 Makefile.am --- a/Makefile.am Thu Oct 09 11:25:22 2008 -0400 +++ b/Makefile.am Fri Oct 10 16:03:12 2008 -0400 @@ -28,6 +28,19 @@ endif endif endif +if ENABLE_PULSE_JAVA +# include the makefile in pulseaudio subdir +PULSE_JAVA_DIR = pulseaudio +PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native +PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java +PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_DIR)/bin +else +PULSE_JAVA_DIR = +PULSE_JAVA_NATIVE_SRCDIR = +PULSE_JAVA_JAVA_SRCDIR = +PULSE_JAVA_CLASS_DIR = +endif + if WITH_VISUALVM VISUALVM_PATCH = patches/icedtea-visualvm.patch else @@ -39,7 +52,7 @@ endif all-local: icedtea-against-icedtea -distclean-local: clean-copy clean-jtreg clean-jtreg-reports +distclean-local: clean-copy clean-jtreg clean-jtreg-reports clean-pulse-java rm -rf stamps rm -f rt-source-files.txt \ hotspot-tools-source-files.txt \ @@ -83,7 +96,7 @@ EXTRA_DIST = rt generated $(ICEDTEA_PATC overlays extra jconsole.desktop policytool.desktop \ test/jtreg patches/icedtea-plugin.patch \ patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING patches/icedtea-visualvm.patch + HACKING patches/icedtea-visualvm.patch pulseaudio # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. @@ -520,6 +533,11 @@ ICEDTEA_PATCHES += \ patches/icedtea-cacao.patch endif +if ENABLE_PULSE_JAVA +ICEDTEA_PATCHES += \ + patches/icedtea-pulse-soundproperties.patch +endif + ICEDTEA_PATCHES += \ $(DISTRIBUTION_PATCHES) @@ -923,7 +941,8 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ - extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp + extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp \ + stamps/pulse-java.stamp $(MAKE) \ $(ICEDTEA_ENV) \ -C openjdk/control/make/ \ @@ -940,6 +959,16 @@ if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) endif +endif +if ENABLE_PULSE_JAVA + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext endif if WITH_VISUALVM mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ @@ -975,7 +1004,8 @@ stamps/icedtea-debug.stamp: stamps/boots stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ - extra-lib/about.jar stamps/cacao.stamp + extra-lib/about.jar stamps/cacao.stamp \ + stamps/pulse-java.stamp $(MAKE) \ $(ICEDTEA_ENV) \ -C openjdk/control/make \ @@ -992,6 +1022,16 @@ if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) endif +endif +if ENABLE_PULSE_JAVA + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ext + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ext endif if WITH_VISUALVM mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ @@ -1374,6 +1414,92 @@ clean-gcjwebplugin: rm -f gcjwebplugin.so endif endif + + +# PulseAudio based mixer +# (pulse-java) + +stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp +if ENABLE_PULSE_JAVA + $(CC) $(CFLAGS) -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o + mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) +endif + mkdir -p stamps + touch stamps/pulse-java.stamp + +stamps/pulse-java-jar.stamp: stamps/pulse-java-class.stamp +if ENABLE_PULSE_JAVA + mkdir -p $(PULSE_JAVA_CLASS_DIR); + if ! test -d $(ICEDTEA_BOOT_DIR) ; \ + then \ + $(JAR) cf pulse-java.jar -C $(PULSE_JAVA_CLASS_DIR) .; \ + else \ + $(ICEDTEA_BOOT_DIR)/bin/jar cf pulse-java.jar -C $(PULSE_JAVA_CLASS_DIR) .; \ + fi +endif + mkdir -p stamps + touch stamps/pulse-java-jar.stamp + +stamps/pulse-java-class.stamp: +if ENABLE_PULSE_JAVA + mkdir -p $(PULSE_JAVA_CLASS_DIR) + if ! test -d $(ICEDTEA_BOOT_DIR) ; \ + then \ + (cd $(PULSE_JAVA_JAVA_SRCDIR); \ + $(JAVAC) -d ../../../$(PULSE_JAVA_CLASS_DIR) \ + -bootclasspath \ + '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ + else \ + (cd $(PULSE_JAVA_JAVA_SRCDIR); \ + $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ + -bootclasspath \ + '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ + fi + cp -r $(PULSE_JAVA_JAVA_SRCDIR)/META-INF $(PULSE_JAVA_CLASS_DIR) +endif + mkdir -p stamps + touch stamps/pulse-java-class.stamp + + +stamps/pulse-java-headers.stamp: stamps/pulse-java-class.stamp +if ENABLE_PULSE_JAVA + if ! test -d $(ICEDTEA_BOOT_DIR) ; \ + then \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \ + else \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \ + fi +endif + mkdir -p stamps + touch stamps/pulse-java-headers.stamp + + +clean-pulse-java: + rm -rf $(PULSE_JAVA_CLASS_DIR)/* + rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + rm -f stamps/pulse-java*.stamp + rm -f pulse-java.jar + rm -f libpulse-java.so + +# end of pulse-java # jtreg diff -r fa94fa7ac782 -r 8b85ec866923 README --- a/README Thu Oct 09 11:25:22 2008 -0400 +++ b/README Fri Oct 10 16:03:12 2008 -0400 @@ -159,3 +159,11 @@ and --with-netbeans-profiler-src-zip whi and --with-netbeans-profiler-src-zip which can be used to prevent re-downloading of the source zips. --with-netbeans-home can be used to specify where the Netbeans tools are installed (default /usr/share/netbeans). + + + +PulseAudio Mixer +================ + +Passing --enable-pulse-java to configure will build the PulseAudio Mixer for +java. This allows java programs to use PulseAudio as the sound backend. diff -r fa94fa7ac782 -r 8b85ec866923 acinclude.m4 --- a/acinclude.m4 Thu Oct 09 11:25:22 2008 -0400 +++ b/acinclude.m4 Fri Oct 10 16:03:12 2008 -0400 @@ -665,6 +665,15 @@ AC_DEFUN([FIND_RHINO_JAR], AC_SUBST(RHINO_JAR) ]) +AC_DEFUN([FIND_PULSEAUDIO], +[ + AC_PATH_PROG(PULSEAUDIO_BIN, "pulseaudio") + if test -z "${PULSEAUDIO_BIN}"; then + AC_MSG_ERROR("pulseaudio was not found.") + fi + AC_SUBST(PULSEAUDIO_BIN) +]) + AC_DEFUN([ENABLE_OPTIMIZATIONS], [ AC_MSG_CHECKING(whether to disable optimizations) diff -r fa94fa7ac782 -r 8b85ec866923 configure.ac --- a/configure.ac Thu Oct 09 11:25:22 2008 -0400 +++ b/configure.ac Fri Oct 10 16:03:12 2008 -0400 @@ -125,6 +125,12 @@ AC_ARG_ENABLE([liveconnect], [Enable experimental LiveConnect plugin])], [enable_liveconnect="yes"], [enable_liveconnect="no"]) AM_CONDITIONAL(ENABLE_LIVECONNECT, test "x${enable_liveconnect}" = "xyes") + +AC_ARG_ENABLE([pulse-java], + [AS_HELP_STRING([--enable-pulse-java], + [Enable pulse-java - an audio mixer spi that uses PulseAudio])], + [enable_pulse_java="yes"], [enable_pulse_java="no"]) +AM_CONDITIONAL(ENABLE_PULSE_JAVA, test "x${enable_pulse_java}" = "xyes") AC_ARG_ENABLE([docs], [AS_HELP_STRING([--disable-docs], @@ -247,6 +253,11 @@ ENABLE_ZERO_BUILD ENABLE_ZERO_BUILD SET_CORE_OR_SHARK_BUILD +if test "x${enable_pulse_java}" = "xyes" +then + FIND_PULSEAUDIO +fi + dnl pkgconfig cannot be used to finid these headers and libraries. AC_CHECK_HEADERS([cups/cups.h cups/ppd.h],[] ,[AC_MSG_ERROR("CUPS headers were not found - @@ -354,6 +365,20 @@ AC_SUBST(ALSA_CFLAGS) AC_SUBST(ALSA_CFLAGS) AC_SUBST(ALSA_LIBS) +if test "x${enable_pulse_java}" = "xyes" +then + dnl Check for pulseaudio libraries. + PKG_CHECK_MODULES(LIBPULSE,[libpulse >= 0.9.11],[LIBPULSE_FOUND=yes] + ,[LIBPULSE_FOUND=no]) + if test "x${LIBPULSE_FOUND}" = xno + then + AC_MSG_ERROR([Could not find pulseaudio>=0.9.11 libraries - \ + Try installing pulseaudio-libs-devel>=0.9.11.]) + fi + AC_SUBST(LIBPULSE_CFLAGS) + AC_SUBST(LIBPULSE_LIBS) +fi + dnl Check for plugin support headers and libraries. dnl FIXME: use unstable if test "x${enable_liveconnect}" = "xyes" diff -r fa94fa7ac782 -r 8b85ec866923 patches/icedtea-pulse-soundproperties.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-pulse-soundproperties.patch Fri Oct 10 16:03:12 2008 -0400 @@ -0,0 +1,16 @@ +--- openjdk/jdk/src/share/lib/sound.properties 2008-08-28 04:15:18.000000000 -0400 ++++ openjdk/jdk/src/share/lib/sound.properties 2008-10-03 16:59:21.000000000 -0400 +@@ -37,3 +37,13 @@ + # Specify the default Receiver by provider and name: + # javax.sound.midi.Receiver=com.sun.media.sound.MidiProvider#SunMIDI1 + # ++ ++# javax.sound.sampled.Clip=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++# javax.sound.sampled.Port=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++# javax.sound.sampled.SourceDataLine=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++# javax.sound.sampled.TargetDataLine=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++ ++javax.sound.sampled.Clip=com.sun.media.sound.DirectAudioDeviceProvider ++javax.sound.sampled.Port=com.sun.media.sound.PortMixerProvider ++javax.sound.sampled.SourceDataLine=com.sun.media.sound.DirectAudioDeviceProvider ++javax.sound.sampled.TargetDataLine=com.sun.media.sound.DirectAudioDeviceProvider diff -r fa94fa7ac782 -r 8b85ec866923 pulseaudio/AUTHORS --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pulseaudio/AUTHORS Fri Oct 10 16:03:12 2008 -0400 @@ -0,0 +1,5 @@ +Authors + +Ioana Iivan (iivan at redhat.com) + +Omair Majid (omajid at redhat.com) \ No newline at end of file diff -r fa94fa7ac782 -r 8b85ec866923 pulseaudio/COPYING --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pulseaudio/COPYING Fri Oct 10 16:03:12 2008 -0400 @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable From iivan at redhat.com Fri Oct 10 14:21:34 2008 From: iivan at redhat.com (Ioana Ivan) Date: Fri, 10 Oct 2008 21:21:34 +0000 Subject: changeset in /hg/icedtea6: 2008-10-10 Ioana Ivan Message-ID: changeset e7b6e8e732e4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e7b6e8e732e4 description: 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getLine): LineUnavailablException is no longer thrown if the mixer is not open (getTargetLines) : returns a Line[] array instead of a TargetDataLine[] array * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine (open(AudioFormat format, int bufferSize)): throws LineUnavailableException if the mixer is not open * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip (open()): throws LineUnavailableException if the mixer is not open * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort (PulseAudioPort): calls open() diffstat: 6 files changed, 32 insertions(+), 10 deletions(-) ChangeLog | 17 ++++++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 5 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 5 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 6 --- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 8 ++-- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 1 diffs (120 lines): diff -r 8b85ec866923 -r e7b6e8e732e4 ChangeLog --- a/ChangeLog Fri Oct 10 16:03:12 2008 -0400 +++ b/ChangeLog Fri Oct 10 17:12:18 2008 -0400 @@ -1,3 +1,20 @@ 2008-10-10 Ioana Ivan +2008-10-10 Ioana Ivan + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java + (getLine): LineUnavailablException is no longer thrown if the mixer is + not open + (getTargetLines) : returns a Line[] array instead of a + TargetDataLine[] array + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine + (open(AudioFormat format, int bufferSize)): throws + LineUnavailableException if the mixer is not open + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip + (open()): throws LineUnavailableException if the mixer is not open + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort + (PulseAudioPort): calls open() + 2008-10-10 Ioana Ivan Omair Majid diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 17:12:18 2008 -0400 @@ -398,6 +398,11 @@ public class PulseAudioClip extends Puls public void open(AudioFormat format, byte[] data, int offset, int bufferSize) throws LineUnavailableException { + if(!PulseAudioMixer.getInstance().isOpen()) { + throw new LineUnavailableException("The mixer needs to be opened before opening a line"); + } + + /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 17:12:18 2008 -0400 @@ -84,6 +84,10 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } + if(!PulseAudioMixer.getInstance().isOpen()) { + throw new LineUnavailableException("The mixer needs to be opened before opening a line"); + } + createStream(format); addStreamListeners(); @@ -277,7 +281,6 @@ public abstract class PulseAudioDataLine public void open() throws LineUnavailableException { assert (defaultFormat != null); - open(defaultFormat, DEFAULT_BUFFER_SIZE); } diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Fri Oct 10 17:12:18 2008 -0400 @@ -271,10 +271,6 @@ public class PulseAudioMixer implements throw new IllegalArgumentException("Line unsupported: " + info); } - if (!isOpen) { - throw new LineUnavailableException("The mixer isnt open"); - } - AudioFormat[] formats = null; AudioFormat defaultFormat = null; @@ -410,7 +406,7 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - return (Line[]) targetLines.toArray(new TargetDataLine[0]); + return (Line[]) targetLines.toArray(new Line[0]); } @Override diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Oct 10 17:12:18 2008 -0400 @@ -76,8 +76,8 @@ public abstract class PulseAudioPort ext controls.add(volumeControl); muteControl = new PulseAudioMuteControl(this, volumeControl); controls.add(muteControl); - isOpen = true; - + //isOpen = true; + open(); /* * unlike other lines, Ports must either be open or close * @@ -141,7 +141,9 @@ public abstract class PulseAudioPort ext @Override public void open() { - + if(isOpen) { + return; + } native_setVolume(volume); isOpen = true; fireLineEvent(new LineEvent(this, LineEvent.Type.OPEN, diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 10 17:12:18 2008 -0400 @@ -51,7 +51,6 @@ public class PulseAudioTargetPort extend public PulseAudioTargetPort(String name, EventLoop eventLoop) { super(name, eventLoop); - } public void open() { From bugzilla-daemon at icedtea.classpath.org Sat Oct 11 03:38:31 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 11 Oct 2008 10:38:31 +0000 Subject: [Bug 211] New: lines and points are not shown in the icedtea applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=211 Summary: lines and points are not shown in the icedtea applet Product: IcedTea Version: unspecified Platform: PC URL: http://descartes.cnice.mec.es/materiales_didacticos/Repr esentacion_numeros_en_recta/representa.htm OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: jredrejo at edu.juntaextremadura.net When using the icedtea plugin in firefox (using Debian lenny, but tested it on Ubuntu too), lines and points in geometric applets are not shown. I'm uploading too screenshots, one using sun java plugin (it works with versions 5 & 6 ) and another one using icedtea, for you to see the differences. Checking the applet messages at the terminal where I launched firefox, there were not warnings or error messages. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 11 03:39:14 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 11 Oct 2008 10:39:14 +0000 Subject: [Bug 211] lines and points are not shown in the icedtea applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=211 ------- Comment #1 from jredrejo at edu.juntaextremadura.net 2008-10-11 10:39 ------- Created an attachment (id=110) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=110&action=view) Points and lines are not shown using the icedtea plugin -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 11 03:39:44 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 11 Oct 2008 10:39:44 +0000 Subject: [Bug 211] lines and points are not shown in the icedtea applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=211 ------- Comment #2 from jredrejo at edu.juntaextremadura.net 2008-10-11 10:39 ------- Created an attachment (id=111) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=111&action=view) Points and lines are shown using sun java plugin -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Sat Oct 11 07:26:52 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 11 Oct 2008 14:26:52 +0000 Subject: changeset in /hg/icedtea6: 2008-10-11 Matthias Klose changeset a0124c4addcd in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a0124c4addcd description: 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring without pulseaudio. diffstat: 2 files changed, 7 insertions(+) ChangeLog | 5 +++++ Makefile.am | 2 ++ diffs (29 lines): diff -r e7b6e8e732e4 -r a0124c4addcd ChangeLog --- a/ChangeLog Fri Oct 10 17:12:18 2008 -0400 +++ b/ChangeLog Sat Oct 11 16:26:33 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-10 Ioana Ivan +2008-10-11 Matthias Klose + + * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring + without pulseaudio. + 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getLine): LineUnavailablException is no longer thrown if the mixer is diff -r e7b6e8e732e4 -r a0124c4addcd Makefile.am --- a/Makefile.am Fri Oct 10 17:12:18 2008 -0400 +++ b/Makefile.am Sat Oct 11 16:26:33 2008 +0200 @@ -1493,11 +1493,13 @@ endif clean-pulse-java: +if ENABLE_PULSE_JAVA rm -rf $(PULSE_JAVA_CLASS_DIR)/* rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so +endif # end of pulse-java From doko at ubuntu.com Sat Oct 11 08:28:30 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 11 Oct 2008 15:28:30 +0000 Subject: changeset in /hg/icedtea6: 2008-10-11 Matthias Klose changeset 72f37a7f8077 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=72f37a7f8077 description: 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Remove jni-common.o. diffstat: 2 files changed, 2 insertions(+), 1 deletion(-) ChangeLog | 2 +- Makefile.am | 1 + diffs (23 lines): diff -r a0124c4addcd -r 72f37a7f8077 ChangeLog --- a/ChangeLog Sat Oct 11 16:26:33 2008 +0200 +++ b/ChangeLog Sat Oct 11 17:28:17 2008 +0200 @@ -1,7 +1,7 @@ 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring - without pulseaudio. + without pulseaudio, remove jni-common.o. 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java diff -r a0124c4addcd -r 72f37a7f8077 Makefile.am --- a/Makefile.am Sat Oct 11 16:26:33 2008 +0200 +++ b/Makefile.am Sat Oct 11 17:28:17 2008 +0200 @@ -1499,6 +1499,7 @@ if ENABLE_PULSE_JAVA rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so + rm -f jni-common.o endif # end of pulse-java From doko at ubuntu.com Sat Oct 11 08:54:41 2008 From: doko at ubuntu.com (Matthias Klose) Date: Sat, 11 Oct 2008 17:54:41 +0200 Subject: WARNING: Don't run "make clean" in an icedtea6 checkout (rev 1080 or 1081) Message-ID: <48F0CC41.4040706@ubuntu.com> Please don't run "make clean" in an icedtea6 checkout (rev 1080 or 1081), if the build is configured without --enable-pulse-java, it will run "rm -rf /". Fixed in rev 1082. Matthias From doko at ubuntu.com Sat Oct 11 09:34:55 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 11 Oct 2008 16:34:55 +0000 Subject: changeset in /hg/icedtea6: 2008-10-11 Matthias Klose changeset 64f23360289f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=64f23360289f description: 2008-10-11 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Remove -fpic flag, add -fPIC to build jni-common.c. (gcjwebplugin.so): Use -fPIC. diffstat: 2 files changed, 10 insertions(+), 7 deletions(-) ChangeLog | 3 +++ Makefile.am | 14 +++++++------- diffs (44 lines): diff -r 72f37a7f8077 -r 64f23360289f ChangeLog --- a/ChangeLog Sat Oct 11 17:28:17 2008 +0200 +++ b/ChangeLog Sat Oct 11 18:34:47 2008 +0200 @@ -2,6 +2,9 @@ 2008-10-11 Matthias Klose * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java diff -r 72f37a7f8077 -r 64f23360289f Makefile.am --- a/Makefile.am Sat Oct 11 17:28:17 2008 +0200 +++ b/Makefile.am Sat Oct 11 18:34:47 2008 +0200 @@ -1408,7 +1408,7 @@ gcjwebplugin.so: gcjwebplugin.cc $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ $(GTK_CFLAGS) $(GTK_LIBS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ - -fpic -shared -o $@ $< + -fPIC -shared -o $@ $< clean-gcjwebplugin: rm -f gcjwebplugin.so @@ -1421,12 +1421,12 @@ endif stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA - $(CC) $(CFLAGS) -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) endif From doko at ubuntu.com Sun Oct 12 06:46:09 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 12 Oct 2008 13:46:09 +0000 Subject: changeset in /hg/icedtea6: 2008-10-12 Matthias Klose changeset df8d2a8c69c8 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=df8d2a8c69c8 description: 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include to build jni-common.c. diffstat: 2 files changed, 6 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ Makefile.am | 2 +- diffs (24 lines): diff -r 64f23360289f -r df8d2a8c69c8 ChangeLog --- a/ChangeLog Sat Oct 11 18:34:47 2008 +0200 +++ b/ChangeLog Sun Oct 12 15:45:59 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-11 Matthias Klose + + * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include + to build jni-common.c. + 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring diff -r 64f23360289f -r df8d2a8c69c8 Makefile.am --- a/Makefile.am Sat Oct 11 18:34:47 2008 +0200 +++ b/Makefile.am Sun Oct 12 15:45:59 2008 +0200 @@ -1421,7 +1421,7 @@ endif stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA - $(CC) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c From twisti at complang.tuwien.ac.at Sun Oct 12 06:58:34 2008 From: twisti at complang.tuwien.ac.at (Christian Thalinger) Date: Sun, 12 Oct 2008 15:58:34 +0200 Subject: escape bootclasspath single quotes Message-ID: <1223819914.8743.7.camel@workstation.chello.at> Hi! The following patch seems to fix my problems with undefined SNMP stuff, like: incorrect classpath: /export/home/twisti/projects/openjdk/icedtea6/build-hotspot/../rt/com/sun/jmx/snmp/SnmpDataTypeEnums.java ---------- 1. ERROR in /export/home/twisti/projects/openjdk/icedtea6/build-hotspot/../rt/com/sun/jmx/snmp/SnmpOid.java (at line 40) public class SnmpOid extends SnmpValue { ^^^^^^^ The hierarchy of the type SnmpOid is inconsistent ---------- I think it's related to this "incorrect classpath" thing. Are there any reasons to not commit this patch? - Christian --- icedtea6.64f23360289f/Makefile.am 2008-10-12 15:54:24.158071013 +0200 +++ /export/home/twisti/projects/openjdk/icedtea6/Makefile.am 2008-10-12 15:50:15.095452724 +0200 @@ -1235,14 +1235,14 @@ stamps/hotspot-tools-class-files.stamp: -source 1.5 \ -sourcepath \ 'hotspot-tools:$(OPENJDK_SOURCEPATH_DIRS):$(ABS_SOURCE_DIRS)' \ - -bootclasspath '' @$< ; \ + -bootclasspath \'\' @$< ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/javac $(MEMORY_LIMIT) -g \ -d lib/hotspot-tools \ -source 1.5 \ -sourcepath \ 'hotspot-tools:$(OPENJDK_SOURCEPATH_DIRS):$(ABS_SOURCE_DIRS)' \ - -bootclasspath '' @$< ; \ + -bootclasspath \'\' @$< ; \ fi mkdir -p stamps touch stamps/hotspot-tools-class-files.stamp @@ -1287,13 +1287,13 @@ stamps/rt-class-files.stamp: rt-source-f -source 1.5 \ -sourcepath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ - -bootclasspath '' @$< ; \ + -bootclasspath \'\' @$< ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/javac $(MEMORY_LIMIT) -g -d lib/rt \ -source 1.5 \ -sourcepath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ - -bootclasspath '' @$< ; \ + -bootclasspath \'\' @$< ; \ fi cp -r $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources \ lib/rt/net/sourceforge/jnlp/ @@ -1334,12 +1334,12 @@ stamps/extra-class-files.stamp: extra-so $(JAVAC) $(MEMORY_LIMIT) -g -d extra-lib \ -source 1.5 \ -sourcepath extra -cp bootstrap/jdk1.7.0/jre/lib/rt-closed.jar \ - -bootclasspath '' @extra-source-files.txt ; \ + -bootclasspath \'\' @extra-source-files.txt ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/javac $(MEMORY_LIMIT) -g -d extra-lib \ -source 1.5 \ -sourcepath extra -cp bootstrap/jdk1.7.0/jre/lib/rt-closed.jar \ - -bootclasspath '' @extra-source-files.txt ; \ + -bootclasspath \'\' @extra-source-files.txt ; \ fi cp -r $(abs_top_srcdir)/extra/net/sourceforge/jnlp/about/resources \ extra-lib/net/sourceforge/jnlp/about From doko at ubuntu.com Sun Oct 12 07:32:07 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 12 Oct 2008 14:32:07 +0000 Subject: changeset in /hg/icedtea6: 2008-10-12 Matthias Klose changeset 9032c6fda5c2 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=9032c6fda5c2 description: 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include to build the source files. diffstat: 2 files changed, 6 insertions(+), 6 deletions(-) ChangeLog | 2 +- Makefile.am | 10 +++++----- diffs (32 lines): diff -r df8d2a8c69c8 -r 9032c6fda5c2 ChangeLog --- a/ChangeLog Sun Oct 12 15:45:59 2008 +0200 +++ b/ChangeLog Sun Oct 12 16:31:50 2008 +0200 @@ -1,7 +1,7 @@ 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include - to build jni-common.c. + to build the source files. 2008-10-11 Matthias Klose diff -r df8d2a8c69c8 -r 9032c6fda5c2 Makefile.am --- a/Makefile.am Sun Oct 12 15:45:59 2008 +0200 +++ b/Makefile.am Sun Oct 12 16:31:50 2008 +0200 @@ -1422,11 +1422,11 @@ stamps/pulse-java.stamp: stamps/pulse-ja stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) endif From gnu_andrew at member.fsf.org Sun Oct 12 19:51:14 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 13 Oct 2008 03:51:14 +0100 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <1223626845.4349.5.camel@dijkstra.wildebeest.org> References: <48EE1885.9050005@redhat.com> <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> <1223626845.4349.5.camel@dijkstra.wildebeest.org> Message-ID: <17c6771e0810121951s3f1ac819o8265df88e65c55ab@mail.gmail.com> 2008/10/10 Mark Wielaard : > Hi, > > On Thu, 2008-10-09 at 21:47 +0100, Andrew John Hughes wrote: >> 2008/10/9 Omair Majid : >> > Ioana and I have been working on creating a PulseAudio based Mixer and we >> > believe that it has become stable enough to include it as an optional build >> > in icedtea6. To do that, the pulseaudio source code needs to be put in the >> > pulseaudio folder in icedtea and the attached patch needs to be applied. >> > >> > The configure option --enable-pulse-java is used to enable building the >> > PulseAudio based mixer. >> > >> > To compile icedtea with the pulseaudio-based mixer : >> > (assuming the icedtea-pulseaudio.patch file is in the current directory) >> > >> > hg clone http://icedtea.classpath.org/hg/icedtea6 >> > cd icedtea6 >> > # this next step wont be necessary once the pulse-java source code >> > # is commited to icedtea6 >> > hg clone http://icedtea.classpath.org/hg/pulseaudio >> > patch -p1 < ../icedtea-pulseaudio.patch >> > ./autogen.sh >> > ./configure --enable-pulse-java >> > make >> > >> > Please let me know if there are any concerns, comments or objections. >> >> Is the intention for this patch to represent how PulseAudio will be integrated? >> If so, I assume it won't be part of IcedTea but just an optional dependency? > > No, my impression was that we wanted the pulseaudio directory directly > into the icedtea repo. That would certainly be my preference. > Well, I don't really mind either way. If you want to have separate releases, it needs to be outside the IcedTea repository though. I expect we'll always be able to turn it off. > The only thing we need to think about is whether we also want to carry > over the revision history or that we keep around the pulseaudio repo for > historical reasons. I don't immediately know how easy it is to carry > over the changesets from one repo to a completely separate one. > Omair, Ioana, what do you want? > hg pull would do the job presumably. >> Comments: >> >> * PULSE_JAVA_DIR should be configurable by a --with-pulse-java-dir option. > > But not if we just add the directory to the repo. Indeed. > >> * I assume CC is called explicitly rather than using the usual automake rules >> (pulseaudio_SOURCES and the like) is because IcedTea itself is a bit >> non-standard. >> * The continued use of the test + if ! test -d $(ICEDTEA_BOOT_DIR) ; >> is worrying. >> I was already concerned about this from the current ecj invocations. >> Can we not just >> depend on the creation of the boot directory for targets that need it? >> Users tend to find >> this confusing as it is unclear at runtime which javac/jar/javah is >> being used and the duplication >> can lead to inaccuracies. > > What would the "correct" way be to express this in the Makefile.am? > Depend on $(BOOTSTRAP_DIRECTORY_STAMP) as visualvm does. >> Thanks for the contribution! > > Yes, I like to see this go in. I already tested it a bit and it seems to > work nicely. > > Cheers, > > Mark > > -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 02:08:20 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 09:08:20 +0000 Subject: [Bug 212] New: [plugin] applet at jigzone.com not working Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=212 Summary: [plugin] applet at jigzone.com not working Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/282570 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com Still fails (http://www.jigzone.com/puzzles/daily-jigsaw). applet loads forever, then redericts to an error page. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 02:44:58 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 09:44:58 +0000 Subject: [Bug 213] New: OpenJDK-6-jre freezes on simple midi app, sun JRE does not Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=213 Summary: OpenJDK-6-jre freezes on simple midi app, sun JRE does not Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/275672 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com Independent auf pulseaudio When running a simple app that gets a Sequencer object and exits, OpenJDK will create the object and not exit while sun-java6-jre (version 6-07-4ubuntu2) creates the object and properly exits. The proper behavior is the one Sun's java exhibits. Sample program (also attached): import javax.sound.midi.*; public class MusicTest1 { public void play() { try { Sequencer sequencer = MidiSystem.getSequencer(); System.out.println("Successfully got a sequencer"); } catch(MidiUnavailableException ex) { System.out.println("Bummer"); } } public static void main(String[] args) { MusicTest1 mt = new MusicTest1(); mt.play(); System.out.println("After play"); } } -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 02:52:10 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 09:52:10 +0000 Subject: [Bug 214] New: Unparseable date with OpenJDK6, works with SunJava6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=214 Summary: Unparseable date with OpenJDK6, works with SunJava6 Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/275654 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com import java.util.*; DateFormat dp = new SimpleDateFormat("yyyyMMddHHmmss z"); Date start = dp.parse("20081001175000 CET"); returns "Unparseable date" on OpenJDK 6 on Ubuntu 8.04.1 server, but works with Sun Java 6 on Gentoo. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 02:52:41 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 09:52:41 +0000 Subject: [Bug 214] Unparseable date with OpenJDK6, works with SunJava6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=214 ------- Comment #1 from doko at ubuntu.com 2008-10-13 09:52 ------- Created an attachment (id=112) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=112&action=view) test case -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 02:53:40 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 09:53:40 +0000 Subject: [Bug 213] OpenJDK-6-jre freezes on simple midi app, sun JRE does not Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=213 ------- Comment #1 from doko at ubuntu.com 2008-10-13 09:53 ------- Created an attachment (id=113) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=113&action=view) test case -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 03:55:21 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 10:55:21 +0000 Subject: [Bug 215] New: Java Applet Window cannot be closed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=215 Summary: Java Applet Window cannot be closed Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/37330 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com Any implementation of Java (be it Sun's or the OpenJDK) suffers from this bug. Some Java Applet Windows cannot be closed when clicking on the close button (X) on the Window Manager title bar. This bug only affects Linux distributions. On MS Windows, the Applets work normally and they can be closed at will as any other window. Sites where this bug happens: http://www.chat-avenue.com/ http://www.elchat.com ...and pretty much any Applets that do not have an explicit close function within themselves. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 04:12:20 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 11:12:20 +0000 Subject: [Bug 216] New: OpenJDK java web start fails to open jnlp files version 1.5 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=216 Summary: OpenJDK java web start fails to open jnlp files version 1.5 Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/224800 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com When OpenJDK java web start is used, it can not open some jnlp files. For example, you can try the following ones : http://www.spark-angels.com/telecharger-1/ http://sweethome3d.sourceforge.net/SweetHome3D.jnlp If you open them through firefox, it downloads the necessary jars, but does not open the application. If you download the jnlp files and launch them whith javaws, you get the following error : netx: Spec version not supported (supports 1.0) These application work if you launch them with Sun Java 6 Web start. Netx seems to be the library used by openjdk to handle jnlp files. I checked the source code and it only supports 1.0 version of jnlp (see file Parser.java in package netx.jnlp). The examples above use version 1.5 of jnlp. What is annoying is that the upgrade from gutsy to hardy makes openjdk the default java alternative, even if Sun java 6 was installed. Thus, the jnlp files that were working under gusty do not work anymore under hardy. The workaround I currently use is to choose another location when firefox prompts me which application to use for jnlp files : I specify /usr/lib/jvm/java-6-sun/bin/javaws instead of "OpenJDK Java Web Start". So the jnlp files are opened with Sun Java instead of openjdk : I still need to keep Sun java. The solution would be, I guess, to make netx support 1.5 jnlp files. But this project doesn't seem to be updated for years... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 04:51:33 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 11:51:33 +0000 Subject: [Bug 213] OpenJDK-6-jre freezes on simple midi app, sun JRE does not Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=213 ------- Comment #2 from kalli at bigfoot.com 2008-10-13 11:51 ------- The fault is in Gervill synthesizer. It created two non-daemon threads which prevented the VM to exit when the synthesizer was open. And MidiSystem.getSequencer() causes the synthesizer to be open, regardless if you don't call open() on the sequencer object. This has been fixed in Gervill CVS. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 09:24:09 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 16:24:09 +0000 Subject: [Bug 217] New: LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 Summary: LiveConnect applet to JS communication does not work Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/282762 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com JS to Applet communication work but applet to JS communication does not work. You can verify this with the apple liveconnect test at http://developer.apple.com/internet/safari/samples/ColorBlockApplet.html You'll see the color change when you click on the buttons but when you double click the applet there is no alert message. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 12:59:21 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 19:59:21 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID ------- Comment #1 from dbhole at redhat.com 2008-10-13 19:59 ------- This is a bug in the applet page. Liveconnect specifications state that MAYSCRIPT must be specified for Java->JS to work[1]. The ColorBlockApplet does not set this. 1. http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/java_js.html#enabling -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 13:07:49 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 20:07:49 +0000 Subject: [Bug 215] Java Applet Window cannot be closed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=215 ------- Comment #1 from matthew.flaschen at gatech.edu 2008-10-13 20:07 ------- If Sun Java has the problem too, it should be reported to bugs.sun.com not here. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 13:37:24 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 20:37:24 +0000 Subject: [Bug 218] New: eclipse ganimede crash with open jdk 1.6 on fedora 9 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=218 Summary: eclipse ganimede crash with open jdk 1.6 on fedora 9 Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: blocker Priority: P5 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: nessuno.itaca at gmail.com # # An unexpected error has been detected by Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00f6736e, pid=3315, tid=5790608 # # Java VM: OpenJDK Client VM (1.6.0-b09 mixed mode linux-x86) # Problematic frame: # V [libjvm.so+0x16a36e] # # If you would like to submit a bug report, please visit: # http://icedtea.classpath.org/bugzilla # --------------- T H R E A D --------------- Current thread (0x09575800): VMThread [stack: 0x00505000,0x00586000] [id=3325] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x00000004 Registers: EAX=0x00000004, EBX=0x0118ccd8, ECX=0xa92ec12c, EDX=0xa92ec12c ESP=0x00584ca0, EBP=0x00584cb8, ESI=0x9a402a90, EDI=0x9a402aa4 EIP=0x00f6736e, CR2=0x00000004, EFLAGS=0x00010202 Top of Stack: (sp=0x00584ca0) 0x00584ca0: 09575ee0 a92ec12c a92ec130 0118ccd8 0x00584cb0: 011a4884 00000001 00584cd8 0104597a 0x00584cc0: a92ebf90 9a402a68 00584cf8 0104594a 0x00584cd0: 0118ccd8 a7caa2d0 00584cf8 010462ec 0x00584ce0: 0075bff4 00003e80 00003e80 0118ccd8 0x00584cf0: 011a48ac 09523c40 00584d18 0104643c 0x00584d00: 011ad17c 015b7249 015b7188 00000000 0x00584d10: 0075d4f8 0118ccd8 00584d48 010d7a64 Instructions: (pc=0x00f6736e) 0x00f6735e: ff 00 00 8d 3c 86 39 f7 76 23 8b 06 85 c0 74 16 0x00f6736e: 8b 00 83 e0 03 83 f8 03 74 0c 83 ec 0c 56 e8 5f Stack: [0x00505000,0x00586000], sp=0x00584ca0, free space=511k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) V [libjvm.so+0x16a36e] V [libjvm.so+0x24897a] V [libjvm.so+0x2492ec] V [libjvm.so+0x24943c] V [libjvm.so+0x2daa64] V [libjvm.so+0x306ee4] V [libjvm.so+0x2ab022] V [libjvm.so+0x155ac6] V [libjvm.so+0x158414] V [libjvm.so+0x1588db] V [libjvm.so+0x15f090] V [libjvm.so+0x2f594e] V [libjvm.so+0x1576bd] V [libjvm.so+0x157c94] V [libjvm.so+0x328064] V [libjvm.so+0x32dfc1] V [libjvm.so+0x32cb6a] V [libjvm.so+0x32d151] V [libjvm.so+0x32d515] V [libjvm.so+0x271b49] C [libpthread.so.0+0x632f] VM_Operation (0x038238cc): GenCollectFull, mode: safepoint, requested by thread 0x9703c000 --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x9703c000 JavaThread "Compiler Processing Task" daemon [_thread_blocked, id=3345, stack(0x037d4000,0x03825000)] 0x097df400 JavaThread "Thread-2" [_thread_blocked, id=3340, stack(0x03783000,0x037d4000)] 0x097a9800 JavaThread "Worker-2" [_thread_blocked, id=3339, stack(0x03732000,0x03783000)] 0x0a0c8800 JavaThread "Java indexing" daemon [_thread_blocked, id=3338, stack(0x036e1000,0x03732000)] 0x0a085c00 JavaThread "Thread-1" [_thread_blocked, id=3337, stack(0x05325000,0x05376000)] 0x09d3d400 JavaThread "Worker-1" [_thread_blocked, id=3336, stack(0x05193000,0x051e4000)] 0x09d9b000 JavaThread "Worker-0" [_thread_blocked, id=3335, stack(0x03690000,0x036e1000)] 0x097ec000 JavaThread "Start Level Event Dispatcher" daemon [_thread_blocked, id=3334, stack(0x0483f000,0x04890000)] 0x09828800 JavaThread "Framework Event Dispatcher" daemon [_thread_blocked, id=3333, stack(0x00d79000,0x00dca000)] 0x0981b800 JavaThread "State Data Manager" daemon [_thread_blocked, id=3332, stack(0x00b48000,0x00b99000)] 0x09591c00 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3330, stack(0x00aa9000,0x00afa000)] 0x0958f000 JavaThread "CompilerThread0" daemon [_thread_blocked, id=3329, stack(0x00cf8000,0x00d79000)] 0x0958dc00 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=3328, stack(0x00a58000,0x00aa9000)] 0x09579c00 JavaThread "Finalizer" daemon [_thread_blocked, id=3327, stack(0x00a07000,0x00a58000)] 0x09578c00 JavaThread "Reference Handler" daemon [_thread_blocked, id=3326, stack(0x00301000,0x00352000)] 0x0951fc00 JavaThread "main" [_thread_blocked, id=3315, stack(0xbf910000,0xbf960000)] ... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 16:50:05 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Oct 2008 23:50:05 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 mubashir at kazia.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|INVALID | ------- Comment #2 from mubashir at kazia.com 2008-10-13 23:50 ------- (In reply to comment #1) > This is a bug in the applet page. Liveconnect specifications state that > MAYSCRIPT must be specified for Java->JS to work[1]. The ColorBlockApplet does > not set this. > > 1. > http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/java_js.html#enabling > I tested after adding MAYSCRIPT tag it still does not work. It cannot find netscape.javascript.JSObject class. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 13 20:39:46 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 03:39:46 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #3 from dbhole at redhat.com 2008-10-14 03:39 ------- Did you try it it with the new plugin (IcedTeaPlugin.so, built with --enable-liveconnect), or the old one? The old one (gcjwebplugin) is expected to throw that exception... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 07:47:36 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 14:47:36 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #5 from dbhole at redhat.com 2008-10-14 14:47 ------- Assuming you are using the tip, the classes should be in rt.jar -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 07:46:42 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 14:46:42 +0000 Subject: [Bug 21] DataBuffers not compatible Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=21 ------- Comment #7 from dbhole at redhat.com 2008-10-14 14:46 ------- Assuming you are using the tip, the classes should be in rt.jar -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 07:47:16 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 14:47:16 +0000 Subject: [Bug 21] DataBuffers not compatible Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=21 ------- Comment #8 from dbhole at redhat.com 2008-10-14 14:47 ------- Pops, wrong bug. Ignore the message above please. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 06:47:50 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 13:47:50 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #4 from mubashir at kazia.com 2008-10-14 13:47 ------- Yes I can confirm that IcedTeaPlugin.so is used from Firefox3 in about:plugins. I also looked at the output when firefox is launched from command prompt. Can you tell me in which jar file netscape classes are supposed to be packaged? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From Dalibor.Topic at Sun.COM Tue Oct 14 08:40:40 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Tue, 14 Oct 2008 17:40:40 +0200 Subject: Public open specs In-Reply-To: <1223541805.3958.3.camel@dijkstra.wildebeest.org> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> Message-ID: <48F4BD78.1060704@sun.com> Mark Wielaard wrote: > Got anything yet? Identified the process bottleneck, trying to figure out a fix. > Can Sun can publish the core Class File Specifications > under terms that are acceptable to the community, so that getting access > to the document doesn't take away any rights of publishing an > independent or openjdk based implementation under the GPL without the > restrictions on scope that the current terms 2 (a - c) inflict upon us > hackers? > Something like http://java.sun.com/docs/books/jvms/second_edition/ClassFileFormat-Java5.pdf ? cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From mark at klomp.org Tue Oct 14 08:46:13 2008 From: mark at klomp.org (Mark Wielaard) Date: Tue, 14 Oct 2008 17:46:13 +0200 Subject: Public open specs In-Reply-To: <48F4BD78.1060704@sun.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> <48F4BD78.1060704@sun.com> Message-ID: <1223999173.3470.11.camel@hermans.wildebeest.org> Hi Dalibor, On Tue, 2008-10-14 at 17:40 +0200, Dalibor Topic wrote: > Mark Wielaard wrote: > > Got anything yet? > Identified the process bottleneck, trying to figure out a fix. > > Can Sun can publish the core Class File Specifications > > under terms that are acceptable to the community, so that getting access > > to the document doesn't take away any rights of publishing an > > independent or openjdk based implementation under the GPL without the > > restrictions on scope that the current terms 2 (a - c) inflict upon us > > hackers? > > > Something like > http://java.sun.com/docs/books/jvms/second_edition/ClassFileFormat-Java5.pdf > ? Yes indeed, something like that also for the Java6 version would be ideal. Is that available? Thanks, Mark From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 09:33:28 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 16:33:28 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #6 from mubashir at kazia.com 2008-10-14 16:33 ------- I'm using ubuntu intrepid compiled package version 6b12-pre2-0ubuntu2 and the only Netscape class that is in rt.jar is sun.security.x509.NetscapeCertTypeExtention. There are no netscape JS classes. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 09:47:56 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 16:47:56 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #7 from dbhole at redhat.com 2008-10-14 16:47 ------- Hmm, AFAIK Ubuntu does not compile with liveconnect support. And if it did, it should have had the classes in rt.jar. Can you post the output of about:plugins? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Tue Oct 14 10:30:02 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 17:30:02 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Omair Majid changeset a28576af0d10 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a28576af0d10 description: 2008-10-14 Omair Majid * .hgignore: Added generated files to ignore list. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java (EventLoop): Initialize eventLoop object on construction. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (PulseAudioClip): Removed the parameter eventLoop. (getMicrosecondLength): Return time in microseconds. (getMicrosecondPosition): Likewise. (open): Dont throw an exception if Mixer is not open. Let super handle it. (setFramePosition): Check frame position for being positive. (setLoopPoints): Check that the starting frame is valid. (setMicrosecondPosition): Deal with negative value and values over the maximum. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (open): Open the mixer if it isnt open. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getLine): Dont pass eventLoop as a paramter. (close): Close all open lines on exit. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java (PulseAudioPort): Modified to not take an EventLoop paramter. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (PulseAudioSourceDataLine): Likewise. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java (PulseAudioSourcePort): Likewise. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (PulseAudioTargetDataLine): Likewise. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java (PulseAudioTargetPort): Likewise. * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java (testMixerKnowsAboutOpenLines): Work even if mixer has some lines initially open. diffstat: 12 files changed, 135 insertions(+), 74 deletions(-) .hgignore | 4 ChangeLog | 36 ++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 33 +++--- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 11 +- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 55 ++++++---- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 12 +- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 5 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 28 ++--- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 5 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 8 - pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java | 10 - diffs (495 lines): diff -r 9032c6fda5c2 -r a28576af0d10 .hgignore --- a/.hgignore Sun Oct 12 16:31:50 2008 +0200 +++ b/.hgignore Tue Oct 14 13:26:35 2008 -0400 @@ -441,3 +441,7 @@ rt/java/io/ rt/java/io/ rt/sun/awt generated/sun/awt/X11/generator/sizer.32.orig +pulseaudio/bin +pulseaudio/.*\.o +pulseaudio/src/native/org_.*.h +pulseaudio/.*jar diff -r 9032c6fda5c2 -r a28576af0d10 ChangeLog --- a/ChangeLog Sun Oct 12 16:31:50 2008 +0200 +++ b/ChangeLog Tue Oct 14 13:26:35 2008 -0400 @@ -1,3 +1,39 @@ 2008-10-12 Matthias Klose + + * .hgignore: Added generated files to ignore list. + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java + (EventLoop): Initialize eventLoop object on construction. + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (PulseAudioClip): Removed the parameter eventLoop. + (getMicrosecondLength): Return time in microseconds. + (getMicrosecondPosition): Likewise. + (open): Dont throw an exception if Mixer is not open. Let super handle it. + (setFramePosition): Check frame position for being positive. + (setLoopPoints): Check that the starting frame is valid. + (setMicrosecondPosition): Deal with negative value and values over the + maximum. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): Open the mixer if it isnt open. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java + (getLine): Dont pass eventLoop as a paramter. + (close): Close all open lines on exit. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java + (PulseAudioPort): Modified to not take an EventLoop paramter. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (PulseAudioSourceDataLine): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java + (PulseAudioSourcePort): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (PulseAudioTargetDataLine): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java + (PulseAudioTargetPort): Likewise. + + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java + (testMixerKnowsAboutOpenLines): Work even if mixer has some lines + initially open. + 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Tue Oct 14 13:26:35 2008 -0400 @@ -110,7 +110,7 @@ public class EventLoop implements Runnab private EventLoop() { contextListeners = new ArrayList(); - + threadLock = new Object(); } synchronized public static EventLoop getEventLoop() { diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 14 13:26:35 2008 -0400 @@ -194,10 +194,8 @@ public class PulseAudioClip extends Puls stream.removeWriteListener(writeListener); } - public PulseAudioClip(EventLoop eventLoop, AudioFormat[] formats, - AudioFormat defaultFormat) { + public PulseAudioClip(AudioFormat[] formats, AudioFormat defaultFormat) { supportedFormats = formats; - this.eventLoop = eventLoop; this.defaultFormat = defaultFormat; this.currentFormat = defaultFormat; this.volume = PulseAudioVolumeControl.MAX_VOLUME; @@ -342,7 +340,7 @@ public class PulseAudioClip extends Puls return AudioSystem.NOT_SPECIFIED; } synchronized (clipLock) { - return frameCount / currentFormat.getFrameSize(); + return (long) (frameCount / currentFormat.getFrameRate() * 1000); } } @@ -353,7 +351,7 @@ public class PulseAudioClip extends Puls } synchronized (clipLock) { - return framesSinceOpen / currentFormat.getFrameSize(); + return (long) (framesSinceOpen / currentFormat.getFrameRate() * 1000); } } @@ -397,11 +395,6 @@ public class PulseAudioClip extends Puls @Override public void open(AudioFormat format, byte[] data, int offset, int bufferSize) throws LineUnavailableException { - - if(!PulseAudioMixer.getInstance().isOpen()) { - throw new LineUnavailableException("The mixer needs to be opened before opening a line"); - } - /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); @@ -472,7 +465,7 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("Line not open"); } - if (frames > frameCount) { + if (frames < 0 || frames > frameCount) { throw new IllegalArgumentException("incorreft frame value"); } @@ -497,6 +490,11 @@ public class PulseAudioClip extends Puls "ending point must be greater than or equal to the starting point"); } + if (start < 0) { + throw new IllegalArgumentException( + "starting point must be greater than or equal to 0"); + } + synchronized (clipLock) { startFrame = start; endFrame = end; @@ -510,7 +508,16 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("Line not open"); } - float frameIndex = microseconds * currentFormat.getFrameRate(); + float frameIndex = microseconds * currentFormat.getFrameRate() / 1000; + + /* make frameIndex positive */ + while (frameIndex < 0) { + frameIndex += frameCount; + } + + /* frameIndex is in the range [0, frameCount-1], inclusive */ + frameIndex = frameIndex % frameCount; + synchronized (clipLock) { currentFrame = (int) frameIndex; } @@ -563,7 +570,7 @@ public class PulseAudioClip extends Puls super.stop(); } - + public javax.sound.sampled.Line.Info getLineInfo() { return new DataLine.Info(Clip.class, supportedFormats, StreamBufferAttributes.MIN_VALUE, diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 13:26:35 2008 -0400 @@ -84,10 +84,13 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } - if(!PulseAudioMixer.getInstance().isOpen()) { - throw new LineUnavailableException("The mixer needs to be opened before opening a line"); - } - + + PulseAudioMixer mixer = PulseAudioMixer.getInstance(); + if(!mixer.isOpen()) { + mixer.open(); + } + + eventLoop = EventLoop.getEventLoop(); createStream(format); addStreamListeners(); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Tue Oct 14 13:26:35 2008 -0400 @@ -43,6 +43,7 @@ import java.net.UnknownHostException; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.concurrent.Semaphore; @@ -301,8 +302,7 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); - return new PulseAudioSourceDataLine(eventLoop, formats, - defaultFormat); + return new PulseAudioSourceDataLine(formats, defaultFormat); } if ((info.getLineClass() == TargetDataLine.class)) { @@ -310,8 +310,7 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - return new PulseAudioTargetDataLine(eventLoop, formats, - defaultFormat); + return new PulseAudioTargetDataLine(formats, defaultFormat); } if ((info.getLineClass() == Clip.class)) { @@ -319,15 +318,15 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); - return new PulseAudioClip(eventLoop, formats, defaultFormat); + return new PulseAudioClip(formats, defaultFormat); } if (Port.Info.class.isInstance(info)) { Port.Info portInfo = (Port.Info) info; if (portInfo.isSource()) { - return new PulseAudioSourcePort(portInfo.getName(), eventLoop); + return new PulseAudioSourcePort(portInfo.getName()); } else { - return new PulseAudioTargetPort(portInfo.getName(), eventLoop); + return new PulseAudioTargetPort(portInfo.getName()); } } @@ -507,6 +506,35 @@ public class PulseAudioMixer implements throw new IllegalStateException("Mixer is not open; cant close"); } + List linesToClose = new LinkedList(); + linesToClose.addAll(sourceLines); + if (sourceLines.size() > 0) { + linesToClose.addAll(sourceLines); + for (Line line : linesToClose) { + if (line.isOpen()) { + System.out + .println("PulseAudioMixer: DEBUG: some source lines have not been closed"); + line.close(); + } + } + } + linesToClose.clear(); + + if (targetLines.size() > 0) { + linesToClose.addAll(targetLines); + for (Line line : linesToClose) { + if (line.isOpen()) { + System.out + .println("PulseAudioMixer: DEBUG: some target lines have not been closed"); + line.close(); + } + } + } + + synchronized (lineListeners) { + lineListeners.clear(); + } + eventLoopThread.interrupt(); try { @@ -519,19 +547,6 @@ public class PulseAudioMixer implements // System.out.println(this.getClass().getName() + ": closed"); isOpen = false; - - if (sourceLines.size() > 0) { - System.out.println("DEBUG: some source lines have not been closed"); - assert (sourceLines.size() < 0); // always fail - } - if (targetLines.size() > 0) { - System.out.println("DEBUG: some target lines have not been closed"); - assert (targetLines.size() < 0); // always fail - } - - synchronized (lineListeners) { - lineListeners.clear(); - } refreshSourceAndTargetLines(); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Tue Oct 14 13:26:35 2008 -0400 @@ -66,25 +66,25 @@ public abstract class PulseAudioPort ext System.loadLibrary("pulse-java"); } - public PulseAudioPort(String name, EventLoop eventLoop) { + public PulseAudioPort(String name) { this.name = name; + this.eventLoop = EventLoop.getEventLoop(); this.contextPointer = eventLoop.getContextPointer(); - this.eventLoop = eventLoop; + updateVolumeInfo(); volumeControl = new PulseAudioVolumeControl(this, eventLoop); controls.add(volumeControl); muteControl = new PulseAudioMuteControl(this, volumeControl); controls.add(muteControl); - //isOpen = true; - open(); + /* * unlike other lines, Ports must either be open or close * * close = no sound. open = sound * */ - // FIXME open(); + open(); // System.out.println("Opened Target Port " + name); } @@ -141,7 +141,7 @@ public abstract class PulseAudioPort ext @Override public void open() { - if(isOpen) { + if (isOpen) { return; } native_setVolume(volume); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Tue Oct 14 13:26:35 2008 -0400 @@ -54,11 +54,10 @@ public class PulseAudioSourceDataLine ex private boolean muted; private float volume; - public PulseAudioSourceDataLine(EventLoop eventLoop, AudioFormat[] formats, + public PulseAudioSourceDataLine(AudioFormat[] formats, AudioFormat defaultFormat) { this.supportedFormats = formats; - this.eventLoop = eventLoop; this.lineListeners = new ArrayList(); this.defaultFormat = defaultFormat; this.currentFormat = defaultFormat; @@ -69,7 +68,7 @@ public class PulseAudioSourceDataLine ex synchronized public void open(AudioFormat format, int bufferSize) throws LineUnavailableException { - /* check for permmission to play audio */ + /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Tue Oct 14 13:26:35 2008 -0400 @@ -43,43 +43,43 @@ public class PulseAudioSourcePort extend public class PulseAudioSourcePort extends PulseAudioPort { /* aka mic */ - + static { System.loadLibrary("pulse-java"); } - public PulseAudioSourcePort(String name, EventLoop eventLoop) { - super(name, eventLoop); + public PulseAudioSourcePort(String name) { + super(name); } public void open() { - + /* check for permission to record audio */ AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - + super.open(); - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.addSourceLine(this); } - + public void close() { - + /* check for permission to record audio */ AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - + if (!isOpen) { throw new IllegalStateException("Port is not open; so cant close"); } - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeSourceLine(this); - - super.close(); + + super.close(); } - + public native byte[] native_setVolume(float newValue); public synchronized native byte[] native_updateVolumeInfo(); @@ -88,7 +88,5 @@ public class PulseAudioSourcePort extend public javax.sound.sampled.Line.Info getLineInfo() { return new Port.Info(Port.class, getName(), false); } - - } diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Tue Oct 14 13:26:35 2008 -0400 @@ -61,10 +61,9 @@ public class PulseAudioTargetDataLine ex boolean flushed = false; boolean drained = false; - public PulseAudioTargetDataLine(EventLoop eventLoop, AudioFormat[] formats, + public PulseAudioTargetDataLine(AudioFormat[] formats, AudioFormat defaultFormat) { supportedFormats = formats; - this.eventLoop = eventLoop; this.defaultFormat = defaultFormat; this.currentFormat = defaultFormat; @@ -363,7 +362,7 @@ public class PulseAudioTargetDataLine ex fireLineEvent(new LineEvent(this, LineEvent.Type.STOP, framesSinceOpen)); } - + public javax.sound.sampled.Line.Info getLineInfo() { return new DataLine.Info(TargetDataLine.class, supportedFormats, StreamBufferAttributes.MIN_VALUE, diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Tue Oct 14 13:26:35 2008 -0400 @@ -48,9 +48,9 @@ public class PulseAudioTargetPort extend System.loadLibrary("pulse-java"); } - public PulseAudioTargetPort(String name, EventLoop eventLoop) { + public PulseAudioTargetPort(String name) { - super(name, eventLoop); + super(name); } public void open() { @@ -70,11 +70,11 @@ public class PulseAudioTargetPort extend /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); - + if (!isOpen) { throw new IllegalStateException("not open, so cant close Port"); } - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeTargetLine(this); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java --- a/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java Tue Oct 14 13:26:35 2008 -0400 @@ -536,11 +536,11 @@ public class PulseAudioTargetDataLineTes targetDataLine = (TargetDataLine) mixer.getLine(new Line.Info( TargetDataLine.class)); - Assert.assertEquals(0, mixer.getTargetLines().length); - targetDataLine.open(); - Assert.assertEquals(1, mixer.getTargetLines().length); - targetDataLine.close(); - Assert.assertEquals(0, mixer.getTargetLines().length); + int initiallyOpen = mixer.getTargetLines().length; + targetDataLine.open(); + Assert.assertEquals(initiallyOpen+1, mixer.getTargetLines().length); + targetDataLine.close(); + Assert.assertEquals(initiallyOpen, mixer.getTargetLines().length); } From omajid at redhat.com Tue Oct 14 10:30:02 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 17:30:02 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Omair Majid changeset 81e9c55169c4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=81e9c55169c4 description: 2008-10-14 Omair Majid * Makefile.am (stamps/pulse-java.stamp): Added -I$(ICEDTEA_BOOT_DIR)/include/linux. diffstat: 2 files changed, 12 insertions(+), 6 deletions(-) ChangeLog | 6 ++++++ Makefile.am | 12 ++++++------ diffs (35 lines): diff -r a28576af0d10 -r 81e9c55169c4 ChangeLog --- a/ChangeLog Tue Oct 14 13:26:35 2008 -0400 +++ b/ChangeLog Tue Oct 14 13:29:55 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-14 Omair Majid + + * Makefile.am (stamps/pulse-java.stamp): Added + -I$(ICEDTEA_BOOT_DIR)/include/linux. + + 2008-10-14 Omair Majid * .hgignore: Added generated files to ignore list. diff -r a28576af0d10 -r 81e9c55169c4 Makefile.am --- a/Makefile.am Tue Oct 14 13:26:35 2008 -0400 +++ b/Makefile.am Tue Oct 14 13:29:55 2008 -0400 @@ -1421,12 +1421,12 @@ endif stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA - $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) endif From Dalibor.Topic at Sun.COM Tue Oct 14 10:55:42 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Tue, 14 Oct 2008 19:55:42 +0200 Subject: Public open specs In-Reply-To: <1223999173.3470.11.camel@hermans.wildebeest.org> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> <48F4BD78.1060704@sun.com> <1223999173.3470.11.camel@hermans.wildebeest.org> Message-ID: <48F4DD1E.6000106@sun.com> Mark Wielaard wrote: >> Something like >> http://java.sun.com/docs/books/jvms/second_edition/ClassFileFormat-Java5.pdf >> ? >> > > Yes indeed, something like that also for the Java6 version would be > ideal. Is that available? > Not yet (outside the JSR spec document). The process bottleneck is identified, working on a fix. cheers, dalibor topic ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From omajid at redhat.com Tue Oct 14 12:10:37 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 19:10:37 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Omair Majid changeset d5201ed0410a in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d5201ed0410a description: 2008-10-14 Omair Majid * .hgignore: Added pulse-java.jar to ignore list. * Makefile.am: Move jni-common.o out of the way when done. diffstat: 3 files changed, 7 insertions(+) .hgignore | 1 + ChangeLog | 5 +++++ Makefile.am | 1 + diffs (31 lines): diff -r 81e9c55169c4 -r d5201ed0410a .hgignore --- a/.hgignore Tue Oct 14 13:29:55 2008 -0400 +++ b/.hgignore Tue Oct 14 15:08:24 2008 -0400 @@ -445,3 +445,4 @@ pulseaudio/.*\.o pulseaudio/.*\.o pulseaudio/src/native/org_.*.h pulseaudio/.*jar +pulse-java.jar diff -r 81e9c55169c4 -r d5201ed0410a ChangeLog --- a/ChangeLog Tue Oct 14 13:29:55 2008 -0400 +++ b/ChangeLog Tue Oct 14 15:08:24 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * .hgignore: Added pulse-java.jar to ignore list. + * Makefile.am: Move jni-common.o out of the way when done. + 2008-10-14 Omair Majid * Makefile.am (stamps/pulse-java.stamp): Added diff -r 81e9c55169c4 -r d5201ed0410a Makefile.am --- a/Makefile.am Tue Oct 14 13:29:55 2008 -0400 +++ b/Makefile.am Tue Oct 14 15:08:24 2008 -0400 @@ -1429,6 +1429,7 @@ if ENABLE_PULSE_JAVA $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) + mv jni-common.o $(PULSE_JAVA_CLASS_DIR) endif mkdir -p stamps touch stamps/pulse-java.stamp From omajid at redhat.com Tue Oct 14 12:10:38 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 19:10:38 +0000 Subject: changeset in /hg/icedtea6: merged changes Message-ID: changeset 1a6322fdedc7 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1a6322fdedc7 description: merged changes diffstat: 2 files changed, 5 insertions(+) ChangeLog | 4 ++++ INSTALL | 1 + diffs (25 lines): diff -r d5201ed0410a -r 1a6322fdedc7 ChangeLog --- a/ChangeLog Tue Oct 14 15:08:24 2008 -0400 +++ b/ChangeLog Tue Oct 14 15:10:15 2008 -0400 @@ -2,6 +2,10 @@ 2008-10-14 Omair Majid + + * INSTALL: Updated requirements. 2008-10-14 Omair Majid diff -r d5201ed0410a -r 1a6322fdedc7 INSTALL --- a/INSTALL Tue Oct 14 15:08:24 2008 -0400 +++ b/INSTALL Tue Oct 14 15:10:15 2008 -0400 @@ -31,6 +31,7 @@ zlib-devel zlib-devel rhino netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm +jakarta-commons-logging - for visualvm For builing the PulseAudio based mixer, you will need pulseaudio-libs-devel >= 0.9.11 From langel at towel.yyz.redhat.com Tue Oct 14 11:51:06 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Tue, 14 Oct 2008 18:51:06 +0000 Subject: changeset in /hg/icedtea6: Updated build req Message-ID: changeset d4d94a0dc23c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d4d94a0dc23c description: Updated build req diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 5 ++++- INSTALL | 1 + diffs (27 lines): diff -r 81e9c55169c4 -r d4d94a0dc23c ChangeLog --- a/ChangeLog Tue Oct 14 13:29:55 2008 -0400 +++ b/ChangeLog Tue Oct 14 14:50:57 2008 -0400 @@ -1,8 +1,11 @@ 2008-10-14 Omair Majid + + * INSTALL: Updated requirements. + 2008-10-14 Omair Majid * Makefile.am (stamps/pulse-java.stamp): Added -I$(ICEDTEA_BOOT_DIR)/include/linux. - 2008-10-14 Omair Majid diff -r 81e9c55169c4 -r d4d94a0dc23c INSTALL --- a/INSTALL Tue Oct 14 13:29:55 2008 -0400 +++ b/INSTALL Tue Oct 14 14:50:57 2008 -0400 @@ -31,6 +31,7 @@ zlib-devel zlib-devel rhino netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm +jakarta-commons-logging - for visualvm For builing the PulseAudio based mixer, you will need pulseaudio-libs-devel >= 0.9.11 From omajid at redhat.com Tue Oct 14 12:14:32 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 19:14:32 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Omair Majid changeset 3bd6f023d027 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=3bd6f023d027 description: 2008-10-14 Omair Majid * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o current directory. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ Makefile.am | 1 - diffs (23 lines): diff -r 1a6322fdedc7 -r 3bd6f023d027 ChangeLog --- a/ChangeLog Tue Oct 14 15:10:15 2008 -0400 +++ b/ChangeLog Tue Oct 14 15:14:09 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o from + current directory. + 2008-10-14 Omair Majid * .hgignore: Added pulse-java.jar to ignore list. diff -r 1a6322fdedc7 -r 3bd6f023d027 Makefile.am --- a/Makefile.am Tue Oct 14 15:10:15 2008 -0400 +++ b/Makefile.am Tue Oct 14 15:14:09 2008 -0400 @@ -1500,7 +1500,6 @@ if ENABLE_PULSE_JAVA rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so - rm -f jni-common.o endif # end of pulse-java From langel at towel.yyz.redhat.com Tue Oct 14 13:34:16 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Tue, 14 Oct 2008 20:34:16 +0000 Subject: changeset in /hg/icedtea6: Updated .hgignore Message-ID: changeset 57849268c9e4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=57849268c9e4 description: Updated .hgignore diffstat: 1 file changed, 6 insertions(+) .hgignore | 6 ++++++ diffs (23 lines): diff -r 3bd6f023d027 -r 57849268c9e4 .hgignore --- a/.hgignore Tue Oct 14 15:14:09 2008 -0400 +++ b/.hgignore Tue Oct 14 16:34:12 2008 -0400 @@ -23,6 +23,7 @@ javac javac javap gcjwebplugin.so +jni-common.o IcedTeaPlugin.o IcedTeaPlugin.so extra-source-files.txt @@ -440,6 +441,11 @@ rt/javax/net/ssl/X509TrustManager.java rt/javax/net/ssl/X509TrustManager.java rt/java/io/ rt/sun/awt +rt/netscape/javascript/JSException.java +rt/netscape/javascript/JSObject.java +rt/netscape/javascript/JSProxy.java +rt/netscape/javascript/JSRunnable.java +rt/netscape/javascript/JSUtil.java generated/sun/awt/X11/generator/sizer.32.orig pulseaudio/bin pulseaudio/.*\.o From omajid at redhat.com Tue Oct 14 13:50:57 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 20:50:57 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Omair Majid changeset 6864d36c44dd in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=6864d36c44dd description: 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (read): Commented out debug output. diffstat: 2 files changed, 8 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 5 +++-- diffs (27 lines): diff -r 3bd6f023d027 -r 6864d36c44dd ChangeLog --- a/ChangeLog Tue Oct 14 15:14:09 2008 -0400 +++ b/ChangeLog Tue Oct 14 16:49:14 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (read): Commented out debug output. + 2008-10-14 Omair Majid * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o from diff -r 3bd6f023d027 -r 6864d36c44dd pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Tue Oct 14 15:14:09 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Tue Oct 14 16:49:14 2008 -0400 @@ -230,8 +230,9 @@ public class PulseAudioTargetDataLine ex stream.drop(); if (currentFragment == null) { - System.out - .println("DEBUG: PulseAudioTargetDataLine:read(): error in stream.peek()"); + // System.out + // .println("DEBUG: PulseAudioTargetDataLine:read(): + // error in stream.peek()"); continue; } From omajid at redhat.com Tue Oct 14 13:50:58 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 20:50:58 +0000 Subject: changeset in /hg/icedtea6: merged changes Message-ID: changeset 1280e56de291 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1280e56de291 description: merged changes diffstat: 1 file changed, 6 insertions(+) .hgignore | 6 ++++++ diffs (23 lines): diff -r 6864d36c44dd -r 1280e56de291 .hgignore --- a/.hgignore Tue Oct 14 16:49:14 2008 -0400 +++ b/.hgignore Tue Oct 14 16:50:34 2008 -0400 @@ -23,6 +23,7 @@ javac javac javap gcjwebplugin.so +jni-common.o IcedTeaPlugin.o IcedTeaPlugin.so extra-source-files.txt @@ -440,6 +441,11 @@ rt/javax/net/ssl/X509TrustManager.java rt/javax/net/ssl/X509TrustManager.java rt/java/io/ rt/sun/awt +rt/netscape/javascript/JSException.java +rt/netscape/javascript/JSObject.java +rt/netscape/javascript/JSProxy.java +rt/netscape/javascript/JSRunnable.java +rt/netscape/javascript/JSUtil.java generated/sun/awt/X11/generator/sizer.32.orig pulseaudio/bin pulseaudio/.*\.o From omajid at redhat.com Tue Oct 14 13:58:21 2008 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Oct 2008 20:58:21 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Omair Majid changeset 53383766dc24 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=53383766dc24 description: 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (connect): Removed debug output. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 1 - diffs (23 lines): diff -r 1280e56de291 -r 53383766dc24 ChangeLog --- a/ChangeLog Tue Oct 14 16:50:34 2008 -0400 +++ b/ChangeLog Tue Oct 14 16:58:03 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (connect): Removed debug output. + 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java diff -r 1280e56de291 -r 53383766dc24 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 16:50:34 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 16:58:03 2008 -0400 @@ -265,7 +265,6 @@ public abstract class PulseAudioDataLine semaphore.acquire(); synchronized (eventLoop.threadLock) { if (stream.getState() != Stream.State.READY) { - System.out.println(stream.getState()); stream.disconnect(); stream.free(); throw new LineUnavailableException( From iivan at town.yyz.redhat.com Tue Oct 14 14:10:28 2008 From: iivan at town.yyz.redhat.com (iivan at town.yyz.redhat.com) Date: Tue, 14 Oct 2008 21:10:28 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Ioana Ivan Message-ID: changeset 17eedb3bbfbd in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=17eedb3bbfbd description: 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (connectLine): changed bufferAttributes to fix crackling in the clip tests diffstat: 2 files changed, 8 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 3 ++- diffs (26 lines): diff -r 53383766dc24 -r 17eedb3bbfbd ChangeLog --- a/ChangeLog Tue Oct 14 16:58:03 2008 -0400 +++ b/ChangeLog Tue Oct 14 17:08:32 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (connectLine): changed bufferAttributes to fix crackling in the clip tests + + 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java diff -r 53383766dc24 -r 17eedb3bbfbd pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 14 16:58:03 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 14 17:08:32 2008 -0400 @@ -207,7 +207,8 @@ public class PulseAudioClip extends Puls protected void connectLine(int bufferSize, Stream masterStream) throws LineUnavailableException { StreamBufferAttributes bufferAttributes = new StreamBufferAttributes( - bufferSize, bufferSize / 2, bufferSize / 2, bufferSize / 2, 0); + bufferSize, bufferSize / 4, bufferSize / 8, + ((bufferSize / 10) > 100 ? bufferSize / 10 : 100), 0); if (masterStream != null) { synchronized (eventLoop.threadLock) { From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 15:14:12 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 22:14:12 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #8 from mubashir at kazia.com 2008-10-14 22:14 ------- Created an attachment (id=116) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=116&action=view) Output of about:plugins -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 15:19:09 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 22:19:09 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 mubashir at kazia.com changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #116 is|0 |1 obsolete| | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 14 15:20:20 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Oct 2008 22:20:20 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #9 from mubashir at kazia.com 2008-10-14 22:20 ------- Created an attachment (id=117) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=117&action=view) Output of about:plugins -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From iivan at redhat.com Tue Oct 14 22:44:24 2008 From: iivan at redhat.com (Ioana Ivan) Date: Wed, 15 Oct 2008 05:44:24 +0000 Subject: changeset in /hg/icedtea6: 2008-10-14 Ioana Ivan changeset 654694c101ad in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=654694c101ad description: 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (open): startedListener only sends a START event when playback first starts and after an underflow (start): sends a START event if there's data on the line diffstat: 2 files changed, 24 insertions(+), 9 deletions(-) ChangeLog | 9 +++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 24 ++++++---- diffs (80 lines): diff -r 17eedb3bbfbd -r 654694c101ad ChangeLog --- a/ChangeLog Tue Oct 14 17:08:32 2008 -0400 +++ b/ChangeLog Wed Oct 15 01:36:05 2008 -0400 @@ -1,3 +1,10 @@ 2008-10-14 Ioana Ivan +2008-10-14 Ioana Ivan + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): startedListener only sends a START event when playback first + starts and after an underflow + (start): sends a START event if there's data on the line + 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java @@ -6,7 +13,7 @@ 2008-10-14 Ioana Ivan 2008-10-14 Omair Majid - * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + * pulseaudio/src/java/org/classpat/icedtea/pulseaudio/PulseAudioDataLine.java (connect): Removed debug output. 2008-10-14 Omair Majid diff -r 17eedb3bbfbd -r 654694c101ad pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 17:08:32 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 15 01:36:05 2008 -0400 @@ -84,9 +84,9 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } - + PulseAudioMixer mixer = PulseAudioMixer.getInstance(); - if(!mixer.isOpen()) { + if (!mixer.isOpen()) { mixer.open(); } @@ -205,13 +205,14 @@ public abstract class PulseAudioDataLine Stream.PlaybackStartedListener startedListener = new Stream.PlaybackStartedListener() { @Override public void update() { - fireLineEvent(new LineEvent(PulseAudioDataLine.this, - LineEvent.Type.START, framesSinceOpen)); - + if (!dataWritten) { + fireLineEvent(new LineEvent(PulseAudioDataLine.this, + LineEvent.Type.START, framesSinceOpen)); + synchronized (this) { + this.notifyAll(); + } + } dataWritten = true; - synchronized (this) { - this.notifyAll(); - } } }; @@ -343,6 +344,10 @@ public abstract class PulseAudioDataLine return; } + if (dataWritten && (!isStarted)) { + fireLineEvent(new LineEvent(PulseAudioDataLine.this, + LineEvent.Type.START, framesSinceOpen)); + } Operation op; synchronized (eventLoop.threadLock) { @@ -351,6 +356,9 @@ public abstract class PulseAudioDataLine op.waitForCompletion(); op.releaseReference(); + synchronized (this) { + this.notifyAll(); + } isStarted = true; } From doko at ubuntu.com Wed Oct 15 02:12:02 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 15 Oct 2008 09:12:02 +0000 Subject: changeset in /hg/icedtea6: 2008-10-15 Matthias Klose changeset bcb125b39f86 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=bcb125b39f86 description: 2008-10-15 Matthias Klose * patches/icedtea-hotspot-6b11-7b24.patch: Remove. diffstat: 2 files changed, 4 insertions(+), 56973 deletions(-) ChangeLog | 4 patches/icedtea-hotspot-6b11-7b24.patch |56973 ------------------------------- diffs (truncated from 56988 to 500 lines): diff -r 654694c101ad -r bcb125b39f86 ChangeLog --- a/ChangeLog Wed Oct 15 01:36:05 2008 -0400 +++ b/ChangeLog Wed Oct 15 11:10:08 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-14 Ioana Ivan + + * patches/icedtea-hotspot-6b11-7b24.patch: Remove. + 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java diff -r 654694c101ad -r bcb125b39f86 patches/icedtea-hotspot-6b11-7b24.patch --- a/patches/icedtea-hotspot-6b11-7b24.patch Wed Oct 15 01:36:05 2008 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56973 +0,0 @@ -diff -ruNb openjdk{6,}/hotspot/src/share -diff -ruNb openjdk{6,}/hotspot/src/os/linux - -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/BuildConfig.java openjdk/hotspot/src/share/tools/MakeDeps/BuildConfig.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/BuildConfig.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/BuildConfig.java 2007-12-14 08:57:02.000000000 +0100 -@@ -704,6 +704,3 @@ - receiver.add(attr); receiver.add(value); - } - } -- -- -- -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/Macro.java openjdk/hotspot/src/share/tools/MakeDeps/Macro.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/Macro.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/Macro.java 2007-12-14 08:57:02.000000000 +0100 -@@ -26,4 +26,3 @@ - public String name; - public String contents; - } -- -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/Platform.java openjdk/hotspot/src/share/tools/MakeDeps/Platform.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/Platform.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/Platform.java 2007-12-14 08:57:02.000000000 +0100 -@@ -169,7 +169,7 @@ - - /** max is 31 on mac, so warn */ - public int fileNameLengthLimit() { -- return 40; -+ return 45; - } - - public int defaultGrandIncludeThreshold() { -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java 2007-12-14 08:57:02.000000000 +0100 -@@ -236,7 +236,7 @@ - " /nologo /base:\"0x8000000\" /subsystem:windows /dll" + - " /export:JNI_GetDefaultJavaVMInitArgs /export:JNI_CreateJavaVM /export:JNI_GetCreatedJavaVMs "+ - " /export:jio_snprintf /export:jio_printf /export:jio_fprintf /export:jio_vfprintf "+ -- " /export:jio_vsnprintf /export:JVM_EnqueueOperation "); -+ " /export:jio_vsnprintf "); - rv.add("SUBTRACT LINK32 /pdb:none /map"); - - return rv; -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java 2007-12-14 08:57:02.000000000 +0100 -@@ -262,6 +262,8 @@ - - rv.add(new SpecificNameFilter("JVMTI Generated", new String[] {"^jvmti.+"})); - -+ rv.add(new SpecificNameFilter("C++ Interpreter Generated", new String[] {"^bytecodeInterpreterWithChecks.+"})); -+ - rv.add(new SpecificNameFilter("Include DBs", new String[] {"^includeDB_.+"})); - - // this one is to catch files not caught by other filters -@@ -574,8 +576,7 @@ - "/export:JNI_GetCreatedJavaVMs "+ - "/export:jio_snprintf /export:jio_printf "+ - "/export:jio_fprintf /export:jio_vfprintf "+ -- "/export:jio_vsnprintf "+ -- "/export:JVM_EnqueueOperation "); -+ "/export:jio_vsnprintf "); - addAttr(rv, "AdditionalDependencies", "Wsock32.lib winmm.lib"); - addAttr(rv, "OutputFile", outDll); - addAttr(rv, "LinkIncremental", "1"); -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlc.hpp openjdk/hotspot/src/share/vm/adlc/adlc.hpp ---- openjdk6/hotspot/src/share/vm/adlc/adlc.hpp 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/adlc.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)adlc.hpp 1.28 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlparse.cpp openjdk/hotspot/src/share/vm/adlc/adlparse.cpp ---- openjdk6/hotspot/src/share/vm/adlc/adlparse.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/adlparse.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)adlparse.cpp 1.205 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlparse.hpp openjdk/hotspot/src/share/vm/adlc/adlparse.hpp ---- openjdk6/hotspot/src/share/vm/adlc/adlparse.hpp 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/adlparse.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)adlparse.hpp 1.79 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -273,5 +270,3 @@ - static bool is_int_token(const char* token, int& intval); - static void trim(char* &token); // trim leading & trailing spaces - }; -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/archDesc.cpp openjdk/hotspot/src/share/vm/adlc/archDesc.cpp ---- openjdk6/hotspot/src/share/vm/adlc/archDesc.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/archDesc.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -22,6 +22,7 @@ - // - // - -+ - // archDesc.cpp - Internal format for architecture definition - #include "adlc.hpp" - -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/arena.cpp openjdk/hotspot/src/share/vm/adlc/arena.cpp ---- openjdk6/hotspot/src/share/vm/adlc/arena.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/arena.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)arena.cpp 1.16 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -173,4 +170,3 @@ - void CHeapObj::operator delete(void* p){ - free(p); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/arena.hpp openjdk/hotspot/src/share/vm/adlc/arena.hpp ---- openjdk6/hotspot/src/share/vm/adlc/arena.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/arena.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)arena.hpp 1.17 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -158,4 +155,3 @@ - size_t size_in_bytes() const { return _size_in_bytes; } - void set_size_in_bytes(size_t size) { _size_in_bytes = size; } - }; -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dfa.cpp openjdk/hotspot/src/share/vm/adlc/dfa.cpp ---- openjdk6/hotspot/src/share/vm/adlc/dfa.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/dfa.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)dfa.cpp 1.83 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1997-2004 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -1022,4 +1019,3 @@ - void ProductionState::print() { - _production.print(print_key, print_production); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dict2.cpp openjdk/hotspot/src/share/vm/adlc/dict2.cpp ---- openjdk6/hotspot/src/share/vm/adlc/dict2.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/dict2.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)dict2.cpp 1.19 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -354,5 +351,3 @@ - } - _key = _value = NULL; - } -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dict2.hpp openjdk/hotspot/src/share/vm/adlc/dict2.hpp ---- openjdk6/hotspot/src/share/vm/adlc/dict2.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/dict2.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)dict2.hpp 1.16 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1998-2000 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -121,5 +118,3 @@ - }; - - #endif // _DICT_ -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/filebuff.cpp openjdk/hotspot/src/share/vm/adlc/filebuff.cpp ---- openjdk6/hotspot/src/share/vm/adlc/filebuff.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/filebuff.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)filebuff.cpp 1.30 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1997-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -297,4 +294,3 @@ - va_end(args); - _AD._no_output = 1; - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/filebuff.hpp openjdk/hotspot/src/share/vm/adlc/filebuff.hpp ---- openjdk6/hotspot/src/share/vm/adlc/filebuff.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/filebuff.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)filebuff.hpp 1.27 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1997-2004 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/forms.cpp openjdk/hotspot/src/share/vm/adlc/forms.cpp ---- openjdk6/hotspot/src/share/vm/adlc/forms.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/forms.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)forms.cpp 1.161 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -386,4 +383,3 @@ - void SourceForm::output(FILE *fp) { - fprintf(fp,"\n//%s\n%s\n",classname(),(_code?_code:"")); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/forms.hpp openjdk/hotspot/src/share/vm/adlc/forms.hpp ---- openjdk6/hotspot/src/share/vm/adlc/forms.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/forms.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)forms.hpp 1.150 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -587,6 +584,3 @@ - void print_asserts(FILE *fp); - void dump(); - }; -- -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formsopt.cpp openjdk/hotspot/src/share/vm/adlc/formsopt.cpp ---- openjdk6/hotspot/src/share/vm/adlc/formsopt.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formsopt.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)formsopt.cpp 1.53 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -725,4 +722,3 @@ - void PeepReplace::output(FILE *fp) { // Write info to output files - fprintf(fp,"PeepReplace:\n"); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formsopt.hpp openjdk/hotspot/src/share/vm/adlc/formsopt.hpp ---- openjdk6/hotspot/src/share/vm/adlc/formsopt.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formsopt.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)formsopt.hpp 1.54 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -549,4 +546,3 @@ - void dump(); - void output(FILE *fp); - }; -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formssel.cpp openjdk/hotspot/src/share/vm/adlc/formssel.cpp ---- openjdk6/hotspot/src/share/vm/adlc/formssel.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formssel.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)formssel.cpp 1.183 07/09/06 15:24:29 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -236,23 +233,58 @@ - return _matrule ? _matrule->is_ideal_copy() : 0; - } - --// Return 'true' if this instruction matches an ideal 'CosD' node -+// Return 'true' if this instruction is too complex to rematerialize. - int InstructForm::is_expensive() const { -- if (_matrule == NULL) return 0; - // We can prove it is cheap if it has an empty encoding. - // This helps with platform-specific nops like ThreadLocal and RoundFloat. -+ if (is_empty_encoding()) -+ return 0; -+ -+ if (is_tls_instruction()) -+ return 1; -+ -+ if (_matrule == NULL) return 0; -+ -+ return _matrule->is_expensive(); -+} -+ -+// Has an empty encoding if _size is a constant zero or there -+// are no ins_encode tokens. -+int InstructForm::is_empty_encoding() const { - if (_insencode != NULL) { - _insencode->reset(); - if (_insencode->encode_class_iter() == NULL) { -- return 0; -+ return 1; - } - } - if (_size != NULL && strcmp(_size, "0") == 0) { -+ return 1; -+ } - return 0; -+} -+ -+int InstructForm::is_tls_instruction() const { -+ if (_ident != NULL && -+ ( ! strcmp( _ident,"tlsLoadP") || -+ ! strncmp(_ident,"tlsLoadP_",9)) ) { -+ return 1; - } -- return _matrule->is_expensive(); -+ -+ if (_matrule != NULL && _insencode != NULL) { -+ const char* opType = _matrule->_opType; -+ if (strcmp(opType, "Set")==0) -+ opType = _matrule->_rChild->_opType; -+ if (strcmp(opType,"ThreadLocal")==0) { -+ fprintf(stderr, "Warning: ThreadLocal instruction %s should be named 'tlsLoadP_*'\n", -+ (_ident == NULL ? "NULL" : _ident)); -+ return 1; -+ } -+ } -+ -+ return 0; - } - -+ - // Return 'true' if this instruction matches an ideal 'Copy*' node - bool InstructForm::is_ideal_unlock() const { - return _matrule ? _matrule->is_ideal_unlock() : false; -@@ -492,6 +524,10 @@ - if( _components.count() == 1 && _components[0]->is(Component::USE_DEF) ) - rematerialize = true; - -+ // Pseudo-constants (values easily available to the runtime) -+ if (is_empty_encoding() && is_tls_instruction()) -+ rematerialize = true; -+ - // 1-input, 1-output, such as copies or increments. - if( _components.count() == 2 && - _components[0]->is(Component::DEF) && -@@ -1171,9 +1207,9 @@ - // Output the format call for this operand - fprintf(fp,"opnd_array(%d)->",idx); - if (idx == 0) -- fprintf(fp,"int_format(ra, this); // %s\n", rep_var); -+ fprintf(fp,"int_format(ra, this, st); // %s\n", rep_var); - else -- fprintf(fp,"ext_format(ra, this,idx%d); // %s\n", idx, rep_var ); -+ fprintf(fp,"ext_format(ra, this,idx%d, st); // %s\n", idx, rep_var ); - } - } - -@@ -2329,11 +2365,11 @@ - - void OperandForm::format_constant(FILE *fp, uint const_index, uint const_type) { - switch(const_type) { -- case Form::idealI: fprintf(fp,"tty->print(\"#%%d\", _c%d);\n", const_index); break; -- case Form::idealP: fprintf(fp,"_c%d->dump();\n", const_index); break; -- case Form::idealL: fprintf(fp,"tty->print(\"#%%lld\", _c%d);\n", const_index); break; -- case Form::idealF: fprintf(fp,"tty->print(\"#%%f\", _c%d);\n", const_index); break; -- case Form::idealD: fprintf(fp,"tty->print(\"#%%f\", _c%d);\n", const_index); break; -+ case Form::idealI: fprintf(fp,"st->print(\"#%%d\", _c%d);\n", const_index); break; -+ case Form::idealP: fprintf(fp,"_c%d->dump_on(st);\n", const_index); break; -+ case Form::idealL: fprintf(fp,"st->print(\"#%%lld\", _c%d);\n", const_index); break; -+ case Form::idealF: fprintf(fp,"st->print(\"#%%f\", _c%d);\n", const_index); break; -+ case Form::idealD: fprintf(fp,"st->print(\"#%%f\", _c%d);\n", const_index); break; - default: - assert( false, "ShouldNotReachHere()"); - } -@@ -3725,6 +3761,17 @@ - int MatchRule::is_ideal_copy() const { - if( _rChild ) { - const char *opType = _rChild->_opType; -+ if( strcmp(opType,"CastII")==0 ) -+ return 1; -+ // Do not treat *CastPP this way, because it -+ // may transfer a raw pointer to an oop. -+ // If the register allocator were to coalesce this -+ // into a single LRG, the GC maps would be incorrect. -+ //if( strcmp(opType,"CastPP")==0 ) -+ // return 1; -+ //if( strcmp(opType,"CheckCastPP")==0 ) -+ // return 1; -+ // - // Do not treat CastX2P or CastP2X this way, because - // raw pointers and int types are treated differently - // when saving local & stack info for safepoints in -@@ -3773,7 +3820,6 @@ - strcmp(opType,"ConvL2I")==0 || - strcmp(opType,"RoundDouble")==0 || - strcmp(opType,"RoundFloat")==0 || -- strcmp(opType,"ThreadLocal")==0 || - strcmp(opType,"ReverseBytesI")==0 || - strcmp(opType,"ReverseBytesL")==0 || - strcmp(opType,"Replicate16B")==0 || -@@ -3951,4 +3997,3 @@ - fprintf(fp,"\nFormat Rule: \n%s", (_temp?_temp:"")); - fprintf(fp,"\n"); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formssel.hpp openjdk/hotspot/src/share/vm/adlc/formssel.hpp ---- openjdk6/hotspot/src/share/vm/adlc/formssel.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formssel.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)formssel.hpp 1.76 07/05/17 15:49:19 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -139,6 +136,8 @@ - // ideal opcode enumeration - virtual const char *ideal_Opcode(FormDict &globals) const; - virtual int is_expensive() const; // node matches ideal 'CosD' -+ virtual int is_empty_encoding() const; // _size=0 and/or _insencode empty -+ virtual int is_tls_instruction() const; // tlsLoadP rule or ideal ThreadLocal - virtual int is_ideal_copy() const; // node matches ideal 'Copy*' - virtual bool is_ideal_unlock() const; // node matches ideal 'Unlock' - virtual bool is_ideal_call_leaf() const; // node matches ideal 'CallLeaf' -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/output_c.cpp openjdk/hotspot/src/share/vm/adlc/output_c.cpp ---- openjdk6/hotspot/src/share/vm/adlc/output_c.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/output_c.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)output_c.cpp 1.184 07/05/17 15:49:23 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -2199,7 +2196,7 @@ - const char* reg_conversion(const char* rep_var) { - if (strcmp(rep_var,"$Register") == 0) return "as_Register"; - if (strcmp(rep_var,"$FloatRegister") == 0) return "as_FloatRegister"; --#if defined(IA32) -+#if defined(IA32) || defined(AMD64) - if (strcmp(rep_var,"$XMMRegister") == 0) return "as_XMMRegister"; - #endif - return NULL; -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/output_h.cpp openjdk/hotspot/src/share/vm/adlc/output_h.cpp ---- openjdk6/hotspot/src/share/vm/adlc/output_h.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/output_h.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)output_h.cpp 1.178 07/05/05 17:05:03 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -345,34 +342,34 @@ - - // Generate the format rule for condition codes - static void defineCCodeDump(FILE *fp, int i) { -- fprintf(fp, " if( _c%d == BoolTest::eq ) tty->print(\"eq\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::ne ) tty->print(\"ne\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::le ) tty->print(\"le\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::ge ) tty->print(\"ge\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::lt ) tty->print(\"lt\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::gt ) tty->print(\"gt\");\n",i); -+ fprintf(fp, " if( _c%d == BoolTest::eq ) st->print(\"eq\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::ne ) st->print(\"ne\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::le ) st->print(\"le\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::ge ) st->print(\"ge\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::lt ) st->print(\"lt\");\n",i); From langel at towel.yyz.redhat.com Wed Oct 15 06:43:06 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Wed, 15 Oct 2008 13:43:06 +0000 Subject: changeset in /hg/icedtea6: Fixed whitespace Message-ID: changeset 5b3897cb5d41 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5b3897cb5d41 description: Fixed whitespace diffstat: 1 file changed, 6 insertions(+), 6 deletions(-) ChangeLog | 12 ++++++------ diffs (25 lines): diff -r bcb125b39f86 -r 5b3897cb5d41 ChangeLog --- a/ChangeLog Wed Oct 15 11:10:08 2008 +0200 +++ b/ChangeLog Wed Oct 15 09:43:02 2008 -0400 @@ -4,15 +4,15 @@ 2008-10-15 Matthias Klose - * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java - (open): startedListener only sends a START event when playback first - starts and after an underflow - (start): sends a START event if there's data on the line + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): startedListener only sends a START event when playback first + starts and after an underflow + (start): sends a START event if there's data on the line 2008-10-14 Ioana Ivan - * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java - (connectLine): changed bufferAttributes to fix crackling in the clip tests + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (connectLine): changed bufferAttributes to fix crackling in the clip tests 2008-10-14 Omair Majid From mark at klomp.org Wed Oct 15 06:54:35 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 15 Oct 2008 13:54:35 +0000 Subject: changeset in /hg/pulseaudio: Added tag icedtea-integrated for ch... Message-ID: changeset c84f9b9f70dc in /hg/pulseaudio details: http://icedtea.classpath.org/hg/pulseaudio?cmd=changeset;node=c84f9b9f70dc description: Added tag icedtea-integrated for changeset 095b46980d97 diffstat: 1 file changed, 1 insertion(+) .hgtags | 1 + diffs (5 lines): diff -r 095b46980d97 -r c84f9b9f70dc .hgtags --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgtags Wed Oct 15 15:54:07 2008 +0200 @@ -0,0 +1,1 @@ +095b46980d97c0213ca76bb981a2307857da0b1c icedtea-integrated From mark at klomp.org Wed Oct 15 06:55:05 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 15 Oct 2008 15:55:05 +0200 Subject: [PATCH] Integrating a PulseAudio-based Java Mixer in icedtea6 In-Reply-To: <48EF58A0.1020200@redhat.com> References: <48EE1885.9050005@redhat.com> <17c6771e0810091347ka76a7bev7e9c3ead3f0b070c@mail.gmail.com> <1223626845.4349.5.camel@dijkstra.wildebeest.org> <48EF58A0.1020200@redhat.com> Message-ID: <1224078905.3470.23.camel@hermans.wildebeest.org> Hi Ioana, On Fri, 2008-10-10 at 09:29 -0400, Ioana Ivan wrote: > > The only thing we need to think about is whether we also want to carry > > over the revision history or that we keep around the pulseaudio repo for > > historical reasons. I don't immediately know how easy it is to carry > > over the changesets from one repo to a completely separate one. > > Omair, Ioana, what do you want? > > > I think it would be better to carry over the revision history to the > icedtea repository, but it doesn't really matter to me. If that's > difficult to do, keeping the pulseaudio repo is fine too. Thanks for > helping us integrate the pulseaudio spi in icedtea :) It isn't completely trivial (and I am recovering from a bit of a nasty bronchitis, which will take some days unfortunately), so for now I have just tagged the pulseaudio repository as 'icedtea-integrated' and people who want the earlier history will have to look at: http://icedtea.classpath.org/hg/pulseaudio Which we will keep around of course. Cheers, Mark From langel at towel.yyz.redhat.com Wed Oct 15 07:05:12 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Wed, 15 Oct 2008 14:05:12 +0000 Subject: changeset in /hg/icedtea6: 2008-10-15 Lillian Angel changeset e9e4bd53935d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e9e4bd53935d description: 2008-10-15 Lillian Angel * NEWS: Updated for 1.3 release. diffstat: 2 files changed, 22 insertions(+), 8 deletions(-) ChangeLog | 18 +++++++++++------- NEWS | 12 +++++++++++- diffs (53 lines): diff -r 5b3897cb5d41 -r e9e4bd53935d ChangeLog --- a/ChangeLog Wed Oct 15 09:43:02 2008 -0400 +++ b/ChangeLog Wed Oct 15 10:04:57 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-15 Matthias Klose + + * NEWS: Updated for 1.3 release. + 2008-10-15 Matthias Klose * patches/icedtea-hotspot-6b11-7b24.patch: Remove. @@ -407,13 +411,13 @@ 2008-09-23 Deepak Bhole - DJ Lucas - - * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. - * acinclude.m4: Added check to determine whether jar supports - stdin file args. - * patches/icedtea-ecj.patch: Updated patch. - * AUTHORS: Added DJ Lucas. + DJ Lucas + + * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. + * acinclude.m4: Added check to determine whether jar supports + stdin file args. + * patches/icedtea-ecj.patch: Updated patch. + * AUTHORS: Added DJ Lucas. 2008-09-18 Lillian Angel diff -r 5b3897cb5d41 -r e9e4bd53935d NEWS --- a/NEWS Wed Oct 15 09:43:02 2008 -0400 +++ b/NEWS Wed Oct 15 10:04:57 2008 -0400 @@ -1,6 +1,16 @@ New in release UNRELEASED (2008-xx-xx) -New in release UNRELEASED (2008-xx-xx) +New in release 1.3 (2008-10-15) - Updated to b12 build. +- Fixed to use new sound service, Gervill. +- Many Netx fixes and now built by default. +- LiveConnect support (--enable-liveconnect). +- Implemented JavaScript->Java security. +- PulseAudio integrated (--enable-pulse-java) +- VisualVM tool integrated (--enable-visualvm). +- Added out-of-the-box CACAO support (--with-cacao). +- Added the experimental Shark JIT for Zero. +- Various build fixes. +- Several bug and security fixes. New in release 1.2 (2008-05-28) From mark at klomp.org Wed Oct 15 07:26:27 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 15 Oct 2008 14:26:27 +0000 Subject: changeset in /hg/icedtea6: * NEWS: Add Rhino javascript and clea... Message-ID: changeset 75e459eb91b1 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=75e459eb91b1 description: * NEWS: Add Rhino javascript and cleaned up crypto support. diffstat: 2 files changed, 8 insertions(+) ChangeLog | 4 ++++ NEWS | 4 ++++ diffs (25 lines): diff -r e9e4bd53935d -r 75e459eb91b1 ChangeLog --- a/ChangeLog Wed Oct 15 10:04:57 2008 -0400 +++ b/ChangeLog Wed Oct 15 16:26:20 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-15 Lillian Angel + + * NEWS: Add Rhino javascript and cleaned up crypto support. + 2008-10-15 Lillian Angel * NEWS: Updated for 1.3 release. diff -r e9e4bd53935d -r 75e459eb91b1 NEWS --- a/NEWS Wed Oct 15 10:04:57 2008 -0400 +++ b/NEWS Wed Oct 15 16:26:20 2008 +0200 @@ -9,6 +9,10 @@ New in release 1.3 (2008-10-15) - VisualVM tool integrated (--enable-visualvm). - Added out-of-the-box CACAO support (--with-cacao). - Added the experimental Shark JIT for Zero. +- Cleaned up crypto support, all algorithms and key sizes are fully + supported now without any (regional) restrictions. No more need for + separate crypto policy jars. +- Integration of Mozilla Rhino javascript support for javax.script. - Various build fixes. - Several bug and security fixes. From doko at ubuntu.com Wed Oct 15 07:31:56 2008 From: doko at ubuntu.com (Matthias Klose) Date: Wed, 15 Oct 2008 16:31:56 +0200 Subject: changeset in /hg/icedtea6: * NEWS: Add Rhino javascript and clea... In-Reply-To: References: Message-ID: <48F5FEDC.7060901@ubuntu.com> Mark Wielaard schrieb: > +- Integration of Mozilla Rhino javascript support for javax.script. this still has problems, if another version of rhino is on the classpath. From doko at ubuntu.com Wed Oct 15 07:56:59 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 15 Oct 2008 14:56:59 +0000 Subject: changeset in /hg/icedtea6: 2008-10-15 Matthias Klose changeset 5e9e266594bc in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5e9e266594bc description: 2008-10-15 Matthias Klose * NEWS: Add support for more ports for Zero builds. diffstat: 2 files changed, 7 insertions(+) ChangeLog | 6 ++++++ NEWS | 1 + diffs (24 lines): diff -r 75e459eb91b1 -r 5e9e266594bc ChangeLog --- a/ChangeLog Wed Oct 15 16:26:20 2008 +0200 +++ b/ChangeLog Wed Oct 15 16:56:42 2008 +0200 @@ -1,3 +1,9 @@ 2008-10-15 Mark Wielaard + + * NEWS: Add support for more ports for Zero builds. + +2008-10-15 Lillian Angel + 2008-10-15 Mark Wielaard * NEWS: Add Rhino javascript and cleaned up crypto support. diff -r 75e459eb91b1 -r 5e9e266594bc NEWS --- a/NEWS Wed Oct 15 16:26:20 2008 +0200 +++ b/NEWS Wed Oct 15 16:56:42 2008 +0200 @@ -13,6 +13,7 @@ New in release 1.3 (2008-10-15) supported now without any (regional) restrictions. No more need for separate crypto policy jars. - Integration of Mozilla Rhino javascript support for javax.script. +- Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. - Various build fixes. - Several bug and security fixes. From mark at klomp.org Wed Oct 15 07:57:43 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 15 Oct 2008 16:57:43 +0200 Subject: changeset in /hg/icedtea6: * NEWS: Add Rhino javascript and clea... In-Reply-To: <48F5FEDC.7060901@ubuntu.com> References: <48F5FEDC.7060901@ubuntu.com> Message-ID: <1224082663.3470.40.camel@hermans.wildebeest.org> Hi Matthias, On Wed, 2008-10-15 at 16:31 +0200, Matthias Klose wrote: > Mark Wielaard schrieb: > > +- Integration of Mozilla Rhino javascript support for javax.script. > > this still has problems, if another version of rhino is on the classpath. Thanks for the reminder. I added a note to the NEWS file: 2008-10-15 Mark Wielaard * NEWS: Add hint about using different rhino versions. Cheers, Mark diff -r 75e459eb91b1 NEWS --- a/NEWS Wed Oct 15 16:26:20 2008 +0200 +++ b/NEWS Wed Oct 15 16:56:45 2008 +0200 @@ -13,6 +13,8 @@ supported now without any (regional) restrictions. No more need for separate crypto policy jars. - Integration of Mozilla Rhino javascript support for javax.script. + (See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=179 when + you want to enable non-system-installed versions of Rhino). - Various build fixes. - Several bug and security fixes. From mark at klomp.org Wed Oct 15 08:04:46 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 15 Oct 2008 15:04:46 +0000 Subject: changeset in /hg/icedtea6: * NEWS: Add hint about using differen... Message-ID: changeset 698f8ee5fcae in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=698f8ee5fcae description: * NEWS: Add hint about using different rhino versions. diffstat: 2 files changed, 6 insertions(+), 2 deletions(-) ChangeLog | 6 ++++-- NEWS | 2 ++ diffs (28 lines): diff -r 5e9e266594bc -r 698f8ee5fcae ChangeLog --- a/ChangeLog Wed Oct 15 16:56:42 2008 +0200 +++ b/ChangeLog Wed Oct 15 17:04:38 2008 +0200 @@ -1,8 +1,10 @@ 2008-10-15 Matthias Klose + + * NEWS: Add hint about using different rhino versions. + 2008-10-15 Matthias Klose * NEWS: Add support for more ports for Zero builds. - -2008-10-15 Lillian Angel 2008-10-15 Mark Wielaard diff -r 5e9e266594bc -r 698f8ee5fcae NEWS --- a/NEWS Wed Oct 15 16:56:42 2008 +0200 +++ b/NEWS Wed Oct 15 17:04:38 2008 +0200 @@ -13,6 +13,8 @@ New in release 1.3 (2008-10-15) supported now without any (regional) restrictions. No more need for separate crypto policy jars. - Integration of Mozilla Rhino javascript support for javax.script. + (See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=179 when + you want to enable non-system-installed versions of Rhino). - Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. - Various build fixes. - Several bug and security fixes. From doko at ubuntu.com Wed Oct 15 08:18:54 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 15 Oct 2008 15:18:54 +0000 Subject: changeset in /hg/icedtea6: 2008-10-15 Xerxes Rnby changeset 533fa4be0583 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=533fa4be0583 description: 2008-10-15 Xerxes Rnby * patches/icedtea-arch.patch: Update for m68k. diffstat: 2 files changed, 50 insertions(+), 30 deletions(-) ChangeLog | 4 ++ patches/icedtea-arch.patch | 76 ++++++++++++++++++++++++++------------------ diffs (181 lines): diff -r 698f8ee5fcae -r 533fa4be0583 ChangeLog --- a/ChangeLog Wed Oct 15 17:04:38 2008 +0200 +++ b/ChangeLog Wed Oct 15 17:18:35 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-15 Mark Wielaard * NEWS: Add hint about using different rhino versions. diff -r 698f8ee5fcae -r 533fa4be0583 patches/icedtea-arch.patch --- a/patches/icedtea-arch.patch Wed Oct 15 17:04:38 2008 +0200 +++ b/patches/icedtea-arch.patch Wed Oct 15 17:18:35 2008 +0200 @@ -1,6 +1,6 @@ ---- openjdk/jdk/make/javax/sound/SoundDefs.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2008-08-12 18:12:15.000000000 +0000 -@@ -58,10 +58,50 @@ +--- openjdk/jdk/make/javax/sound/SoundDefs.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2008-10-15 17:09:56.000000000 +0200 +@@ -58,10 +58,54 @@ ifdef ICEDTEA_ZERO_BUILD CPPFLAGS += -DX_ARCH=X_ZERO else @@ -24,6 +24,10 @@ + CPPFLAGS += -DX_ARCH=X_IA64 + endif # ARCH ia64 + ++ ifeq ($(ARCH), m68k) ++ CPPFLAGS += -DX_ARCH=X_M68K ++ endif # ARCH m68k ++ + ifeq ($(ARCH), mips) + CPPFLAGS += -DX_ARCH=X_MIPS + endif # ARCH mips @@ -51,7 +55,7 @@ ifeq ($(ARCH), sparc) CPPFLAGS += -DX_ARCH=X_SPARC endif # ARCH sparc -@@ -69,10 +109,6 @@ +@@ -69,10 +113,6 @@ ifeq ($(ARCH), sparcv9) CPPFLAGS += -DX_ARCH=X_SPARCV9 endif # ARCH sparcv9 @@ -62,8 +66,8 @@ endif ---- openjdk/jdk/make/common/Defs-linux.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/common/Defs-linux.gmk 2008-08-12 18:15:54.000000000 +0000 +--- openjdk/jdk/make/common/Defs-linux.gmk.orig 2008-10-15 17:04:21.000000000 +0200 ++++ openjdk/jdk/make/common/Defs-linux.gmk 2008-10-15 17:08:37.000000000 +0200 @@ -102,9 +102,19 @@ # We need this frame pointer to make it easy to walk the stacks. # This should be the default on X86, but ia64 and amd64 may not have this @@ -84,9 +88,9 @@ CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ---- openjdk/jdk/make/common/shared/Compiler-gcc.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2008-08-12 18:10:45.000000000 +0000 -@@ -75,28 +75,51 @@ +--- openjdk/jdk/make/common/shared/Compiler-gcc.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2008-10-15 17:11:28.000000000 +0200 +@@ -75,28 +75,56 @@ REQUIRED_CC_VER = 3.2 REQUIRED_GCC_VER = 3.2.* else @@ -126,6 +130,11 @@ REQUIRED_CC_VER = 3.2 REQUIRED_GCC_VER = 2.9[56789].* endif ++ ifneq ("$(findstring m68k,$(ARCH))", "") ++ # m68k ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* + endif + ifneq ("$(findstring mips,$(ARCH))", "") + # mips + REQUIRED_CC_VER = 3.2 @@ -140,7 +149,7 @@ + # s390 or s390x + REQUIRED_CC_VER = 3.2 + REQUIRED_GCC_VER = 3.2.* - endif ++ endif + ifneq ("$(findstring sparc,$(ARCH))", "") + # sparc or sparcv9 + REQUIRED_CC_VER = 4.0 @@ -148,9 +157,9 @@ endif endif # Option used to create a shared library ---- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/common/shared/Platform.gmk 2008-08-12 18:14:37.000000000 +0000 -@@ -237,9 +237,37 @@ +--- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/make/common/shared/Platform.gmk 2008-10-15 17:13:49.000000000 +0200 +@@ -237,9 +237,40 @@ else # i586 is 32-bit, amd64 is 64-bit ifndef ARCH_DATA_MODEL @@ -169,6 +178,9 @@ + endif + ifeq ($(ARCH), ia64) + ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), m68k) ++ ARCH_DATA_MODEL=32 + endif + ifeq ($(ARCH), mips) + ARCH_DATA_MODEL=32 @@ -189,9 +201,9 @@ ARCH_DATA_MODEL=64 endif endif ---- openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2008-08-12 18:13:17.000000000 +0000 -@@ -33,12 +33,20 @@ +--- openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2008-10-15 17:13:01.000000000 +0200 +@@ -33,12 +33,21 @@ #define X_LINUX 3 // types for X_ARCH @@ -206,20 +218,21 @@ +#define X_ARM 3 +#define X_I586 4 +#define X_IA64 5 -+#define X_MIPS 6 -+#define X_MIPSEL 7 -+#define X_PPC 8 -+#define X_PPC64 9 -+#define X_S390 10 -+#define X_S390X 11 -+#define X_SPARC 12 -+#define X_SPARCV9 13 -+#define X_ZERO 14 ++#define X_M68K 6 ++#define X_MIPS 7 ++#define X_MIPSEL 8 ++#define X_PPC 9 ++#define X_PPC64 10 ++#define X_S390 11 ++#define X_S390X 12 ++#define X_SPARC 13 ++#define X_SPARCV9 14 ++#define X_ZERO 15 // ********************************** // Make sure you set X_PLATFORM and X_ARCH defines correctly. ---- openjdk/corba/make/common/Defs-linux.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/corba/make/common/Defs-linux.gmk 2008-08-12 18:15:12.000000000 +0000 +--- openjdk/corba/make/common/Defs-linux.gmk.orig 2008-10-15 17:04:20.000000000 +0200 ++++ openjdk/corba/make/common/Defs-linux.gmk 2008-10-15 17:08:37.000000000 +0200 @@ -92,9 +92,19 @@ # We need this frame pointer to make it easy to walk the stacks. # This should be the default on X86, but ia64 and amd64 may not have this @@ -240,9 +253,9 @@ CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ---- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/corba/make/common/shared/Platform.gmk 2008-08-12 18:14:03.000000000 +0000 -@@ -227,9 +227,37 @@ +--- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/corba/make/common/shared/Platform.gmk 2008-10-15 17:12:19.000000000 +0200 +@@ -227,9 +227,40 @@ else # i586 is 32-bit, amd64 is 64-bit ifndef ARCH_DATA_MODEL @@ -261,6 +274,9 @@ + endif + ifeq ($(ARCH), ia64) + ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), m68k) ++ ARCH_DATA_MODEL=32 + endif + ifeq ($(ARCH), mips) + ARCH_DATA_MODEL=32 From bugzilla-daemon at icedtea.classpath.org Wed Oct 15 08:56:51 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 15 Oct 2008 15:56:51 +0000 Subject: [Bug 179] javascript script support through rhino should not be on bootclasspath Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=179 ------- Comment #1 from mark at klomp.org 2008-10-15 15:56 ------- So, as a workaround for now, when you want to use a non-system installed rhino, instead of using: -classpath /path/to/local/rhino.jar use: -Xbootclasspath/p:/path/to/local/rhino.jar -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gnu_andrew at member.fsf.org Wed Oct 15 09:32:21 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Wed, 15 Oct 2008 16:32:21 +0000 Subject: changeset in /hg/icedtea6: Add IcedTea version to java -version. Message-ID: changeset 829a4250db62 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=829a4250db62 description: Add IcedTea version to java -version. 2008-10-15 Andrew John Hughes * ChangeLog: Fix typo. * INSTALL: Fix typos and make installation requirements clearer. * Makefile.am: Patch the OpenJDK build with the version of IcedTea being used. Use $(HG) instead of 'hg'. * configure.ac: Check for Mercurial. * patches/icedtea-version.patch: Fix to use IcedTea6. diffstat: 5 files changed, 50 insertions(+), 24 deletions(-) ChangeLog | 15 ++++++++++++++- INSTALL | 16 +++++++++------- Makefile.am | 30 ++++++++++++++++++------------ configure.ac | 2 ++ patches/icedtea-version.patch | 11 +++++++---- diffs (168 lines): diff -r 533fa4be0583 -r 829a4250db62 ChangeLog --- a/ChangeLog Wed Oct 15 17:18:35 2008 +0200 +++ b/ChangeLog Wed Oct 15 17:31:55 2008 +0100 @@ -1,4 +1,17 @@ 2008-10-15 Xerxes R??nby + + * ChangeLog: Fix typo. + * INSTALL: Fix typos and make installation + requirements clearer. + * Makefile.am: + Patch the OpenJDK build with the version + of IcedTea being used. Use $(HG) instead of 'hg'. + * configure.ac: + Check for Mercurial. + * patches/icedtea-version.patch: + Fix to use IcedTea6. + +2008-10-15 Xerxes R??nby * patches/icedtea-arch.patch: Update for m68k. diff -r 533fa4be0583 -r 829a4250db62 INSTALL --- a/INSTALL Wed Oct 15 17:18:35 2008 +0200 +++ b/INSTALL Wed Oct 15 17:31:55 2008 +0100 @@ -1,5 +1,5 @@ Building IcedTea 1.6.0 -Building IcedTea 1.6.0 -====================== +Building IcedTea6 +================= For convenience we've provided make targets that automatically download, extract and patch the source code from openjdk.java.net, in @@ -29,11 +29,13 @@ libpng-devel libpng-devel libjpeg-devel = 6b zlib-devel -rhino -netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm -jakarta-commons-logging - for visualvm +rhino (can be disabled using --without-rhino) -For builing the PulseAudio based mixer, you will need +For building VisualVM, you will need: +netbeans (harness, platform8, apisupport1, java2, ide9) +jakarta-commons-logging + +For building the PulseAudio based mixer, you will need pulseaudio-libs-devel >= 0.9.11 pulseaudio >= 0.9.11 @@ -97,7 +99,7 @@ that it already provides a JIT for many that it already provides a JIT for many platforms to which HotSpot has not yet been ported, including ppc, ppc64, arm and mips. To use CACAO as the VM, use the --with-cacao option. This will download CACAO -0.99.2 during the build. To use a different version, use +0.99.3 during the build. To use a different version, use --with-cacao-home=

to point to an existing installation which use the Sun VM interface. diff -r 533fa4be0583 -r 829a4250db62 Makefile.am --- a/Makefile.am Wed Oct 15 17:18:35 2008 +0200 +++ b/Makefile.am Wed Oct 15 17:31:55 2008 +0100 @@ -270,7 +270,7 @@ env-ecj: # Mercurial snapshot. snapshot: dist - mv $(DIST_ARCHIVES) $(distdir)-`hg tip --template '{node}'`.tar.gz + mv $(DIST_ARCHIVES) $(distdir)-`$(HG) tip --template '{node}'`.tar.gz # OpenJDK Source Preparation Targets # ================================== @@ -621,7 +621,13 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ false; \ - fi + fi ; \ + if [ -e $(abs_top_srcdir)/.hg ]; then \ + revision="-r`(cd $(srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + icedtea_version="$(PACKAGE_VERSION)$${revision}" ; \ + sed -i "s#IcedTea6#IcedTea6 $${icedtea_version}#" openjdk/jdk/make/common/shared/Defs.gmk + if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ cp -a plugin/icedtea/netscape rt/ @@ -679,7 +685,7 @@ stamps/patch-fsg.stamp: stamps/extract.s echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ false; \ - fi + fi ; clean-patch-fsg: rm -f stamps/patch-fsg.stamp @@ -1446,7 +1452,7 @@ endif endif mkdir -p stamps touch stamps/pulse-java-jar.stamp - + stamps/pulse-java-class.stamp: if ENABLE_PULSE_JAVA mkdir -p $(PULSE_JAVA_CLASS_DIR) @@ -1454,17 +1460,17 @@ if ENABLE_PULSE_JAVA then \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ $(JAVAC) -d ../../../$(PULSE_JAVA_CLASS_DIR) \ - -bootclasspath \ + -bootclasspath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ - org/classpath/icedtea/pulseaudio/*.java\ - ) \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ else \ - (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ - -bootclasspath \ + (cd $(PULSE_JAVA_JAVA_SRCDIR); \ + $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ + -bootclasspath \ '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ - org/classpath/icedtea/pulseaudio/*.java\ - ) \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ fi cp -r $(PULSE_JAVA_JAVA_SRCDIR)/META-INF $(PULSE_JAVA_CLASS_DIR) endif diff -r 533fa4be0583 -r 829a4250db62 configure.ac --- a/configure.ac Wed Oct 15 17:18:35 2008 +0200 +++ b/configure.ac Wed Oct 15 17:31:55 2008 +0100 @@ -30,6 +30,8 @@ dnl OpenJDK's README-builds.html lists g dnl OpenJDK's README-builds.html lists gawk as a build dependency so we dnl check for it explicitly rather than using AC_PROG_AWK. FIND_TOOL([GAWK], [gawk]) +AC_PATH_TOOL([HG],[hg]) +AC_SUBST([HG]) AC_ARG_WITH([gcj-home], [AS_HELP_STRING([--with-gcj-home], diff -r 533fa4be0583 -r 829a4250db62 patches/icedtea-version.patch --- a/patches/icedtea-version.patch Wed Oct 15 17:18:35 2008 +0200 +++ b/patches/icedtea-version.patch Wed Oct 15 17:31:55 2008 +0100 @@ -1,14 +1,17 @@ ---- openjdk/jdk/make/common/shared/Defs.gmk.orig 2008-09-12 21:05:40.000000000 +0200 -+++ openjdk/jdk/make/common/shared/Defs.gmk 2008-09-12 21:07:14.000000000 +0200 -@@ -194,7 +194,7 @@ +diff -Nru openjdk.orig/jdk/make/common/shared/Defs.gmk openjdk/jdk/make/common/shared/Defs.gmk +--- openjdk.orig/jdk/make/common/shared/Defs.gmk 2008-10-15 15:36:07.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Defs.gmk 2008-10-15 15:36:53.000000000 +0100 +@@ -194,8 +194,8 @@ # Default names ifdef OPENJDK - LAUNCHER_NAME = openjdk +- PRODUCT_NAME = OpenJDK + LAUNCHER_NAME = java - PRODUCT_NAME = OpenJDK ++ PRODUCT_NAME = IcedTea6 PRODUCT_SUFFIX = Runtime Environment JDK_RC_PLATFORM_NAME = Platform + COMPANY_NAME = N/A @@ -260,12 +260,7 @@ JDK_UNDERSCORE_VERSION = $(subst .,_,$(JDK_VERSION)) JDK_MKTG_UNDERSCORE_VERSION = $(subst .,_,$(JDK_MKTG_VERSION)) From langel at towel.yyz.redhat.com Wed Oct 15 09:33:52 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Wed, 15 Oct 2008 16:33:52 +0000 Subject: changeset in /hg/icedtea6: Added tag icedtea6-1.3 for changeset ... Message-ID: changeset e5163069475f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e5163069475f description: Added tag icedtea6-1.3 for changeset 829a4250db62 diffstat: 1 file changed, 1 insertion(+) .hgtags | 1 + diffs (8 lines): diff -r 829a4250db62 -r e5163069475f .hgtags --- a/.hgtags Wed Oct 15 17:31:55 2008 +0100 +++ b/.hgtags Wed Oct 15 12:33:39 2008 -0400 @@ -8,3 +8,4 @@ 38e6eb354632588f5ac8dbcd69229ebd031f57cb 38e6eb354632588f5ac8dbcd69229ebd031f57cb icedtea6-1.0 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 +829a4250db6226990fe468c8dc3984e81d203806 icedtea6-1.3 From langel at towel.yyz.redhat.com Wed Oct 15 09:53:17 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Wed, 15 Oct 2008 16:53:17 +0000 Subject: changeset in /hg/icedtea6: 2008-10-15 Lillian Angel changeset 3ef9c9c4e70b in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=3ef9c9c4e70b description: 2008-10-15 Lillian Angel * Makefile.am (EXTRA_DIST): Added fsg.sh. (clean-distlocal): Added jni-common.o. * .hgtags: Reverted. diffstat: 3 files changed, 1882 insertions(+), 2 deletions(-) .hgtags | 1 ChangeLog | 1880 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Makefile.am | 3 diffs (truncated from 1915 to 500 lines): diff -r e5163069475f -r 3ef9c9c4e70b .hgtags --- a/.hgtags Wed Oct 15 12:33:39 2008 -0400 +++ b/.hgtags Wed Oct 15 12:53:13 2008 -0400 @@ -8,4 +8,3 @@ 38e6eb354632588f5ac8dbcd69229ebd031f57cb 38e6eb354632588f5ac8dbcd69229ebd031f57cb icedtea6-1.0 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 -829a4250db6226990fe468c8dc3984e81d203806 icedtea6-1.3 diff -r e5163069475f -r 3ef9c9c4e70b ChangeLog --- a/ChangeLog Wed Oct 15 12:33:39 2008 -0400 +++ b/ChangeLog Wed Oct 15 12:53:13 2008 -0400 @@ -1,3 +1,1883 @@ 2008-10-15 Andrew John Hughes + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + From langel at towel.yyz.redhat.com Wed Oct 15 09:53:32 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Wed, 15 Oct 2008 16:53:32 +0000 Subject: changeset in /hg/icedtea6: Added tag icedtea6-1.3 for changeset ... Message-ID: changeset e999015e06e9 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e999015e06e9 description: Added tag icedtea6-1.3 for changeset 3ef9c9c4e70b diffstat: 1 file changed, 1 insertion(+) .hgtags | 1 + diffs (8 lines): diff -r 3ef9c9c4e70b -r e999015e06e9 .hgtags --- a/.hgtags Wed Oct 15 12:53:13 2008 -0400 +++ b/.hgtags Wed Oct 15 12:53:28 2008 -0400 @@ -8,3 +8,4 @@ 38e6eb354632588f5ac8dbcd69229ebd031f57cb 38e6eb354632588f5ac8dbcd69229ebd031f57cb icedtea6-1.0 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 +3ef9c9c4e70b8204b73fa9b88243f49f59c2a23f icedtea6-1.3 From langel at redhat.com Wed Oct 15 10:00:27 2008 From: langel at redhat.com (Lillian Angel) Date: Wed, 15 Oct 2008 13:00:27 -0400 Subject: IcedTea6 1.3 Released! Message-ID: <48F621AB.3050706@redhat.com> We are proud to announce the release of IcedTea6 1.3. The IcedTea6 project provides a harness to build the source code from OpenJDK6 (http://openjdk.java.net) using Free Software build tools and provides replacements libraries for the binary plugs with code from the GNU Classpath project. More information on IcedTea can be found here: http://icedtea.classpath.org What's New? ----------------- - Updated to b12 build. - Fixed to use new sound service, Gervill. - Many Netx fixes and now built by default. - LiveConnect support (--enable-liveconnect). - Implemented JavaScript->Java security. - PulseAudio integrated (--enable-pulse-java) - VisualVM tool integrated (--enable-visualvm). - Added out-of-the-box CACAO support (--with-cacao). - Added the experimental Shark JIT for Zero. - Cleaned up crypto support, all algorithms and key sizes are fully supported now without any (regional) restrictions. No more need for separate crypto policy jars. - Integration of Mozilla Rhino javascript support for javax.script. (See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=179 when you want to enable non-system-installed versions of Rhino). - Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. - Various build fixes. - Several bug and security fixes: (http://icedtea.classpath.org/bugzilla/ and https://bugzilla.redhat.com/). ----------------- The tarball and nosrc RPM can be downloaded here: http://icedtea.classpath.org/download/fedora/java-1.6.0-openjdk-1.6.0.0-0.23.b12.fc10.nosrc.rpm http://icedtea.classpath.org/download/source/icedtea6-1.3.tar.gz The following people helped with this release: Gary Benson, Deepak Bhole, Tom Callaway, Pablo del Campo, Thomas Fitzsimmons, Dennis Gilmore, Andrew Haley, Andrew John Hughes, Ioana Ivan, Matthias Klose, DJ Lucas, Omair Majid, Xerxes Ranby, Marc Schoenefeld, Keith Seitz, Joshua Sumali, Christian Thalinger, Mark Wielaard, Lillian Angel We would also like to thank the bug reporters and testers! To get started: $ hg clone http://icedtea.classpath.org/hg/icedtea6 $ cd icedtea6 Full build requirements and instructions are in INSTALL: $ ./configure (--enable-liveconnect --enable-visualvm --enable-pulse-java) $ make From langel at redhat.com Wed Oct 15 10:03:16 2008 From: langel at redhat.com (Lillian Angel) Date: Wed, 15 Oct 2008 13:03:16 -0400 Subject: IcedTea6 1.3 Released! In-Reply-To: <48F621AB.3050706@redhat.com> References: <48F621AB.3050706@redhat.com> Message-ID: <48F62254.1050807@redhat.com> Lillian Angel wrote: > We are proud to announce the release of IcedTea6 1.3. > > The IcedTea6 project provides a harness to build the source code from > OpenJDK6 (http://openjdk.java.net) using Free Software build tools and > provides replacements libraries for the binary plugs with code from the > GNU Classpath project. More information on IcedTea can be found here: > http://icedtea.classpath.org > > > What's New? > ----------------- > - Updated to b12 build. > - Fixed to use new sound service, Gervill. > - Many Netx fixes and now built by default. > - LiveConnect support (--enable-liveconnect). > - Implemented JavaScript->Java security. > - PulseAudio integrated (--enable-pulse-java) > - VisualVM tool integrated (--enable-visualvm). > - Added out-of-the-box CACAO support (--with-cacao). > - Added the experimental Shark JIT for Zero. > - Cleaned up crypto support, all algorithms and key sizes are fully > supported now without any (regional) restrictions. No more need for > separate crypto policy jars. > - Integration of Mozilla Rhino javascript support for javax.script. > (See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=179 when > you want to enable non-system-installed versions of Rhino). > - Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. > - Various build fixes. > - Several bug and security fixes: > (http://icedtea.classpath.org/bugzilla/ and > https://bugzilla.redhat.com/). > > ----------------- > > The tarball and nosrc RPM can be downloaded here: > http://icedtea.classpath.org/download/fedora/java-1.6.0-openjdk-1.6.0.0-0.23.b12.fc10.nosrc.rpm > > http://icedtea.classpath.org/download/source/icedtea6-1.3.tar.gz I forgot to mention that java-1.6.0-openjdk-1.6.0.0-0.23.b12 will be available in Fedora rawhide within the next week. Cheers, Lillian From langel at towel.yyz.redhat.com Wed Oct 15 10:11:25 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Wed, 15 Oct 2008 17:11:25 +0000 Subject: changeset in /hg/icedtea6: Fixed Changelog Message-ID: changeset d6d04e2f4333 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d6d04e2f4333 description: Fixed Changelog diffstat: 1 file changed, 1 insertion(+), 1874 deletions(-) ChangeLog | 1875 ------------------------------------------------------------- diffs (truncated from 1885 to 500 lines): diff -r e999015e06e9 -r d6d04e2f4333 ChangeLog --- a/ChangeLog Wed Oct 15 12:53:28 2008 -0400 +++ b/ChangeLog Wed Oct 15 13:11:21 2008 -0400 @@ -3,1880 +3,7 @@ 2008-10-15 Lillian Angel - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. From mark at klomp.org Wed Oct 15 13:57:06 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 15 Oct 2008 20:57:06 +0000 Subject: changeset in /hg/icedtea6: * Makefile.am (EXTRA_DIST): Always in... Message-ID: changeset d3bdd63d63d1 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d3bdd63d63d1 description: * Makefile.am (EXTRA_DIST): Always include all patches, irrespective of any configure options. diffstat: 2 files changed, 13 insertions(+), 8 deletions(-) ChangeLog | 5 +++++ Makefile.am | 16 ++++++++-------- diffs (39 lines): diff -r d6d04e2f4333 -r d3bdd63d63d1 ChangeLog --- a/ChangeLog Wed Oct 15 13:11:21 2008 -0400 +++ b/ChangeLog Wed Oct 15 22:55:36 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-15 Lillian Angel + + * Makefile.am (EXTRA_DIST): Always include all patches, + irrespective of any configure options. + 2008-10-15 Lillian Angel * Makefile.am diff -r d6d04e2f4333 -r d3bdd63d63d1 Makefile.am --- a/Makefile.am Wed Oct 15 13:11:21 2008 -0400 +++ b/Makefile.am Wed Oct 15 22:55:36 2008 +0200 @@ -89,15 +89,15 @@ install: $(ICEDTEAPLUGIN_CLEAN) hotspot hotspot-helper clean-extra \ clean-jtreg clean-jtreg-reports clean-visualvm clean-nbplatform -EXTRA_DIST = rt generated $(ICEDTEA_PATCHES) $(ICEDTEA_FSG_PATCHES) \ - $(ICEDTEA_ECJ_PATCH) gcjwebplugin.cc tools-copy contrib ports \ - patches/icedtea-gcc-4.3.patch extra $(ZERO_PATCHES) \ - patches/icedtea-arch.patch patches/icedtea-cacao.patch \ +EXTRA_DIST = rt generated \ + patches/icedtea-*.patch \ + gcjwebplugin.cc tools-copy contrib ports \ + extra overlays \ javaws.png javaws.desktop visualvm.desktop \ - overlays extra jconsole.desktop policytool.desktop \ - test/jtreg patches/icedtea-plugin.patch \ - patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING patches/icedtea-visualvm.patch pulseaudio fsg.sh + jconsole.desktop policytool.desktop \ + test/jtreg \ + IcedTeaPlugin.cc \ + HACKING pulseaudio fsg.sh # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. From gnu_andrew at member.fsf.org Wed Oct 15 17:46:25 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 00:46:25 +0000 Subject: changeset in /hg/icedtea6: Make it possible to use an external b... Message-ID: changeset ce3ea0b5a8c9 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ce3ea0b5a8c9 description: Make it possible to use an external basic cluster src zip. 2008-10-16 Andrew John Hughes * Makefile.am: Make use of ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP. * acinclude.m4: Add --with-netbeans-basic-cluster-src-zip option. * configure.ac: Enable WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP macro. diffstat: 4 files changed, 36 insertions(+), 2 deletions(-) ChangeLog | 9 +++++++++ Makefile.am | 11 +++++++++-- acinclude.m4 | 17 +++++++++++++++++ configure.ac | 1 + diffs (89 lines): diff -r d6d04e2f4333 -r ce3ea0b5a8c9 ChangeLog --- a/ChangeLog Wed Oct 15 13:11:21 2008 -0400 +++ b/ChangeLog Thu Oct 16 01:28:18 2008 +0100 @@ -1,3 +1,12 @@ 2008-10-15 Lillian Angel + + * Makefile.am: + Make use of ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP. + * acinclude.m4: + Add --with-netbeans-basic-cluster-src-zip option. + * configure.ac: + Enable WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP macro. + 2008-10-15 Lillian Angel * Makefile.am diff -r d6d04e2f4333 -r ce3ea0b5a8c9 Makefile.am --- a/Makefile.am Wed Oct 15 13:11:21 2008 -0400 +++ b/Makefile.am Thu Oct 16 01:28:18 2008 +0100 @@ -295,7 +295,12 @@ endif endif NETBEANS_BASIC_CLUSTER_URL = http://nbi.netbeans.org/files/documents/210/2056/ -NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip + +if USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP + NETBEANS_BASIC_CLUSTER_SRC_ZIP = $(ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP) +else + NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip +endif NETBEANS_PROFILER_URL = http://icedtea.classpath.org/visualvm/ @@ -343,6 +348,8 @@ endif endif endif if WITH_VISUALVM +if USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP +else if ! echo "$(NETBEANS_BASIC_CLUSTER_MD5SUM) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP)" \ | $(MD5SUM) --check ; \ then \ @@ -353,7 +360,7 @@ if WITH_VISUALVM $(WGET) $(NETBEANS_BASIC_CLUSTER_URL)$(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ -O $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ; \ fi - +endif if USE_ALT_NETBEANS_PROFILER_SRC_ZIP else if ! echo "$(NETBEANS_PROFILER_MD5SUM) $(NETBEANS_PROFILER_SRC_ZIP)" \ diff -r d6d04e2f4333 -r ce3ea0b5a8c9 acinclude.m4 --- a/acinclude.m4 Wed Oct 15 13:11:21 2008 -0400 +++ b/acinclude.m4 Thu Oct 16 01:28:18 2008 +0100 @@ -473,6 +473,23 @@ AC_DEFUN([WITH_NETBEANS_PROFILER_SRC_ZIP AC_SUBST(ALT_NETBEANS_PROFILER_SRC_ZIP) ]) +AC_DEFUN([WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP], +[ + AC_MSG_CHECKING(netbeans basic cluster zip) + AC_ARG_WITH([netbeans-basic-cluster-src-zip], + [AS_HELP_STRING(--with-netbeans-basic-cluster-src-zip, specify the location of the netbeans basic cluster source zip)], + [ + ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP=${withval} + AM_CONDITIONAL(USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP, test x = x) + ], + [ + ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP="not specified" + AM_CONDITIONAL(USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP, test x != x) + ]) + AC_MSG_RESULT(${ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP}) + AC_SUBST(ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP) +]) + AC_DEFUN([WITH_ALT_JAR_BINARY], [ AC_MSG_CHECKING(alternate jar command) diff -r d6d04e2f4333 -r ce3ea0b5a8c9 configure.ac --- a/configure.ac Wed Oct 15 13:11:21 2008 -0400 +++ b/configure.ac Thu Oct 16 01:28:18 2008 +0100 @@ -247,6 +247,7 @@ WITH_OPENJDK_SRC_DIR WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP +WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP WITH_ALT_JAR_BINARY AC_CHECK_WITH_CACAO AC_CHECK_WITH_CACAO_HOME From gnu_andrew at member.fsf.org Wed Oct 15 17:46:25 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 00:46:25 +0000 Subject: changeset in /hg/icedtea6: Fix naming of cacao option. Message-ID: changeset 839e9e0810ca in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=839e9e0810ca description: Fix naming of cacao option. 2008-10-16 Andrew John Hughes * acinclude.m4: Change --with-cacao to be --enable-cacao as it only accepts yes and no. * configure.ac: Rename cacao macro appropriately. diffstat: 3 files changed, 14 insertions(+), 6 deletions(-) ChangeLog | 8 ++++++++ acinclude.m4 | 10 +++++----- configure.ac | 2 +- diffs (49 lines): diff -r ce3ea0b5a8c9 -r 839e9e0810ca ChangeLog --- a/ChangeLog Thu Oct 16 01:28:18 2008 +0100 +++ b/ChangeLog Thu Oct 16 01:44:33 2008 +0100 @@ -1,3 +1,11 @@ 2008-10-16 Andrew John Hughes + + * acinclude.m4: + Change --with-cacao to be --enable-cacao + as it only accepts yes and no. + * configure.ac: + Rename cacao macro appropriately. + 2008-10-16 Andrew John Hughes * Makefile.am: diff -r ce3ea0b5a8c9 -r 839e9e0810ca acinclude.m4 --- a/acinclude.m4 Thu Oct 16 01:28:18 2008 +0100 +++ b/acinclude.m4 Thu Oct 16 01:44:33 2008 +0100 @@ -847,13 +847,13 @@ AC_DEFUN([SET_CORE_OR_SHARK_BUILD], AM_CONDITIONAL(SHARK_BUILD, test "x${use_shark}" = xyes) ]) -AC_DEFUN([AC_CHECK_WITH_CACAO], +AC_DEFUN([AC_CHECK_ENABLE_CACAO], [ AC_MSG_CHECKING(whether to use CACAO as VM) - AC_ARG_WITH([cacao], - [AS_HELP_STRING(--with-cacao,use CACAO as VM [[default=no]])], - [ - WITH_CACAO=yes + AC_ARG_ENABLE([cacao], + [AS_HELP_STRING(--enable-cacao,use CACAO as VM [[default=no]])], + [ + WITH_CACAO="${enableval}" ], [ WITH_CACAO=no diff -r ce3ea0b5a8c9 -r 839e9e0810ca configure.ac --- a/configure.ac Thu Oct 16 01:28:18 2008 +0100 +++ b/configure.ac Thu Oct 16 01:44:33 2008 +0100 @@ -249,7 +249,7 @@ WITH_NETBEANS_PROFILER_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP WITH_ALT_JAR_BINARY -AC_CHECK_WITH_CACAO +AC_CHECK_ENABLE_CACAO AC_CHECK_WITH_CACAO_HOME AC_CHECK_WITH_CACAO_SRC_ZIP ENABLE_OPTIMIZATIONS From gnu_andrew at member.fsf.org Wed Oct 15 17:46:26 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 00:46:26 +0000 Subject: changeset in /hg/icedtea6: Merge. Message-ID: changeset 173e3d40d94b in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=173e3d40d94b description: Merge. diffstat: 2 files changed, 13 insertions(+), 8 deletions(-) ChangeLog | 5 +++++ Makefile.am | 16 ++++++++-------- diffs (42 lines): diff -r 839e9e0810ca -r 173e3d40d94b ChangeLog --- a/ChangeLog Thu Oct 16 01:44:33 2008 +0100 +++ b/ChangeLog Thu Oct 16 01:46:18 2008 +0100 @@ -14,6 +14,11 @@ 2008-10-16 Andrew John Hughes + + * Makefile.am (EXTRA_DIST): Always include all patches, + irrespective of any configure options. 2008-10-15 Lillian Angel diff -r 839e9e0810ca -r 173e3d40d94b Makefile.am --- a/Makefile.am Thu Oct 16 01:44:33 2008 +0100 +++ b/Makefile.am Thu Oct 16 01:46:18 2008 +0100 @@ -89,15 +89,15 @@ install: $(ICEDTEAPLUGIN_CLEAN) hotspot hotspot-helper clean-extra \ clean-jtreg clean-jtreg-reports clean-visualvm clean-nbplatform -EXTRA_DIST = rt generated $(ICEDTEA_PATCHES) $(ICEDTEA_FSG_PATCHES) \ - $(ICEDTEA_ECJ_PATCH) gcjwebplugin.cc tools-copy contrib ports \ - patches/icedtea-gcc-4.3.patch extra $(ZERO_PATCHES) \ - patches/icedtea-arch.patch patches/icedtea-cacao.patch \ +EXTRA_DIST = rt generated \ + patches/icedtea-*.patch \ + gcjwebplugin.cc tools-copy contrib ports \ + extra overlays \ javaws.png javaws.desktop visualvm.desktop \ - overlays extra jconsole.desktop policytool.desktop \ - test/jtreg patches/icedtea-plugin.patch \ - patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING patches/icedtea-visualvm.patch pulseaudio fsg.sh + jconsole.desktop policytool.desktop \ + test/jtreg \ + IcedTeaPlugin.cc \ + HACKING pulseaudio fsg.sh # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. From gnu_andrew at member.fsf.org Wed Oct 15 17:48:14 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 01:48:14 +0100 Subject: FYI: Build fixes Message-ID: <20081016004814.GA18946@rivendell.middle-earth.co.uk> Attached are two build fixes I needed while working on Gentoo support for some of the new features. The first allows the basic cluster zip used by VisualVM to be specified. The second fixes the naming of the CACAO option. As --with-cacao only accepts yes and no, it should be --enable-cacao as with --enable-shark and --enable-zero. ChangeLog: 2008-10-16 Andrew John Hughes * acinclude.m4: Change --with-cacao to be --enable-cacao as it only accepts yes and no. * configure.ac: Rename cacao macro appropriately. 2008-10-16 Andrew John Hughes * Makefile.am: Make use of ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP. * acinclude.m4: Add --with-netbeans-basic-cluster-src-zip option. * configure.ac: Enable WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP macro. -- Andrew :) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 -------------- next part -------------- diff -r ce3ea0b5a8c9 acinclude.m4 --- a/acinclude.m4 Thu Oct 16 01:28:18 2008 +0100 +++ b/acinclude.m4 Thu Oct 16 01:32:45 2008 +0100 @@ -847,13 +847,13 @@ AM_CONDITIONAL(SHARK_BUILD, test "x${use_shark}" = xyes) ]) -AC_DEFUN([AC_CHECK_WITH_CACAO], +AC_DEFUN([AC_CHECK_ENABLE_CACAO], [ AC_MSG_CHECKING(whether to use CACAO as VM) - AC_ARG_WITH([cacao], - [AS_HELP_STRING(--with-cacao,use CACAO as VM [[default=no]])], + AC_ARG_ENABLE([cacao], + [AS_HELP_STRING(--enable-cacao,use CACAO as VM [[default=no]])], [ - WITH_CACAO=yes + WITH_CACAO="${enableval}" ], [ WITH_CACAO=no diff -r ce3ea0b5a8c9 configure.ac --- a/configure.ac Thu Oct 16 01:28:18 2008 +0100 +++ b/configure.ac Thu Oct 16 01:32:45 2008 +0100 @@ -249,7 +249,7 @@ WITH_NETBEANS_PROFILER_SRC_ZIP WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP WITH_ALT_JAR_BINARY -AC_CHECK_WITH_CACAO +AC_CHECK_ENABLE_CACAO AC_CHECK_WITH_CACAO_HOME AC_CHECK_WITH_CACAO_SRC_ZIP ENABLE_OPTIMIZATIONS -------------- next part -------------- diff -r d6d04e2f4333 Makefile.am --- a/Makefile.am Wed Oct 15 13:11:21 2008 -0400 +++ b/Makefile.am Thu Oct 16 01:26:29 2008 +0100 @@ -295,7 +295,12 @@ endif NETBEANS_BASIC_CLUSTER_URL = http://nbi.netbeans.org/files/documents/210/2056/ -NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip + +if USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP + NETBEANS_BASIC_CLUSTER_SRC_ZIP = $(ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP) +else + NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip +endif NETBEANS_PROFILER_URL = http://icedtea.classpath.org/visualvm/ @@ -343,6 +348,8 @@ endif endif if WITH_VISUALVM +if USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP +else if ! echo "$(NETBEANS_BASIC_CLUSTER_MD5SUM) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP)" \ | $(MD5SUM) --check ; \ then \ @@ -353,7 +360,7 @@ $(WGET) $(NETBEANS_BASIC_CLUSTER_URL)$(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ -O $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ; \ fi - +endif if USE_ALT_NETBEANS_PROFILER_SRC_ZIP else if ! echo "$(NETBEANS_PROFILER_MD5SUM) $(NETBEANS_PROFILER_SRC_ZIP)" \ diff -r d6d04e2f4333 acinclude.m4 --- a/acinclude.m4 Wed Oct 15 13:11:21 2008 -0400 +++ b/acinclude.m4 Thu Oct 16 01:26:29 2008 +0100 @@ -473,6 +473,23 @@ AC_SUBST(ALT_NETBEANS_PROFILER_SRC_ZIP) ]) +AC_DEFUN([WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP], +[ + AC_MSG_CHECKING(netbeans basic cluster zip) + AC_ARG_WITH([netbeans-basic-cluster-src-zip], + [AS_HELP_STRING(--with-netbeans-basic-cluster-src-zip, specify the location of the netbeans basic cluster source zip)], + [ + ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP=${withval} + AM_CONDITIONAL(USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP, test x = x) + ], + [ + ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP="not specified" + AM_CONDITIONAL(USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP, test x != x) + ]) + AC_MSG_RESULT(${ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP}) + AC_SUBST(ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP) +]) + AC_DEFUN([WITH_ALT_JAR_BINARY], [ AC_MSG_CHECKING(alternate jar command) diff -r d6d04e2f4333 configure.ac --- a/configure.ac Wed Oct 15 13:11:21 2008 -0400 +++ b/configure.ac Thu Oct 16 01:26:29 2008 +0100 @@ -247,6 +247,7 @@ WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP +WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP WITH_ALT_JAR_BINARY AC_CHECK_WITH_CACAO AC_CHECK_WITH_CACAO_HOME From gnu_andrew at member.fsf.org Wed Oct 15 18:38:52 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 01:38:52 +0000 Subject: changeset in /hg/icedtea6: Allow a CACAO IcedTea to build normal... Message-ID: changeset c926c9674b4c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=c926c9674b4c description: Allow a CACAO IcedTea to build normal IcedTea and OpenJDK to build IcedTea. 2008-10-16 Andrew John Hughes * Makefile.am: Apply MEMORY_LIMIT setting to OpenJDK builds too and make sure limit is high enough on normal IcedTea builds to build with a CACAO IcedTea. diffstat: 2 files changed, 9 insertions(+), 2 deletions(-) ChangeLog | 7 +++++++ Makefile.am | 4 ++-- diffs (33 lines): diff -r 173e3d40d94b -r c926c9674b4c ChangeLog --- a/ChangeLog Thu Oct 16 01:46:18 2008 +0100 +++ b/ChangeLog Thu Oct 16 02:38:41 2008 +0100 @@ -1,3 +1,10 @@ 2008-10-16 Andrew John Hughes + + * Makefile.am: + Apply MEMORY_LIMIT setting to OpenJDK + builds too and make sure limit is high enough + on normal IcedTea builds to build with a CACAO IcedTea. + 2008-10-16 Andrew John Hughes * acinclude.m4: diff -r 173e3d40d94b -r c926c9674b4c Makefile.am --- a/Makefile.am Thu Oct 16 01:46:18 2008 +0100 +++ b/Makefile.am Thu Oct 16 02:38:41 2008 +0100 @@ -932,13 +932,13 @@ clean-bootstrap-directory-symlink-ecj: # =============== if WITH_ICEDTEA -if WITH_CACAO MEMORY_LIMIT = -J-Xmx1024m else +if WITH_OPENJDK MEMORY_LIMIT = -J-Xmx512m -endif else MEMORY_LIMIT = +endif endif if WITH_CACAO From gnu_andrew at member.fsf.org Wed Oct 15 18:39:52 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 02:39:52 +0100 Subject: FYI: Fix building with a CACAO IcedTea Message-ID: <20081016013952.GA14503@rivendell.middle-earth.co.uk> When building with normal IcedTea with a CACAO IcedTea, we still need the increased memory limit. We also need a higher memory quota if --with-openjdk is used. ChangeLog: 2008-10-16 Andrew John Hughes * Makefile.am: Apply MEMORY_LIMIT setting to OpenJDK builds too and make sure limit is high enough on normal IcedTea builds to build with a CACAO IcedTea. -- Andrew :) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 -------------- next part -------------- diff -r 173e3d40d94b Makefile.am --- a/Makefile.am Thu Oct 16 01:46:18 2008 +0100 +++ b/Makefile.am Thu Oct 16 02:32:49 2008 +0100 @@ -932,13 +932,13 @@ # =============== if WITH_ICEDTEA -if WITH_CACAO MEMORY_LIMIT = -J-Xmx1024m else +if WITH_OPENJDK MEMORY_LIMIT = -J-Xmx512m -endif else MEMORY_LIMIT = +endif endif if WITH_CACAO From gnu_andrew at member.fsf.org Thu Oct 16 01:23:43 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 09:23:43 +0100 Subject: changeset in /hg/icedtea6: * Makefile.am (EXTRA_DIST): Always in... In-Reply-To: References: Message-ID: <17c6771e0810160123s7f8afa2dwddb97c17e7cd44f@mail.gmail.com> 2008/10/15 Mark Wielaard : > changeset d3bdd63d63d1 in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d3bdd63d63d1 > description: > * Makefile.am (EXTRA_DIST): Always include all patches, > irrespective of any configure options. > > diffstat: > > 2 files changed, 13 insertions(+), 8 deletions(-) > ChangeLog | 5 +++++ > Makefile.am | 16 ++++++++-------- > > diffs (39 lines): > > diff -r d6d04e2f4333 -r d3bdd63d63d1 ChangeLog > --- a/ChangeLog Wed Oct 15 13:11:21 2008 -0400 > +++ b/ChangeLog Wed Oct 15 22:55:36 2008 +0200 > @@ -1,3 +1,8 @@ 2008-10-15 Lillian Angel +2008-10-15 Mark Wielaard > + > + * Makefile.am (EXTRA_DIST): Always include all patches, > + irrespective of any configure options. > + > 2008-10-15 Lillian Angel > > * Makefile.am > diff -r d6d04e2f4333 -r d3bdd63d63d1 Makefile.am > --- a/Makefile.am Wed Oct 15 13:11:21 2008 -0400 > +++ b/Makefile.am Wed Oct 15 22:55:36 2008 +0200 > @@ -89,15 +89,15 @@ install: > $(ICEDTEAPLUGIN_CLEAN) hotspot hotspot-helper clean-extra \ > clean-jtreg clean-jtreg-reports clean-visualvm clean-nbplatform > > -EXTRA_DIST = rt generated $(ICEDTEA_PATCHES) $(ICEDTEA_FSG_PATCHES) \ > - $(ICEDTEA_ECJ_PATCH) gcjwebplugin.cc tools-copy contrib ports \ > - patches/icedtea-gcc-4.3.patch extra $(ZERO_PATCHES) \ > - patches/icedtea-arch.patch patches/icedtea-cacao.patch \ > +EXTRA_DIST = rt generated \ > + patches/icedtea-*.patch \ > + gcjwebplugin.cc tools-copy contrib ports \ > + extra overlays \ > javaws.png javaws.desktop visualvm.desktop \ > - overlays extra jconsole.desktop policytool.desktop \ > - test/jtreg patches/icedtea-plugin.patch \ > - patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ > - HACKING patches/icedtea-visualvm.patch pulseaudio fsg.sh > + jconsole.desktop policytool.desktop \ > + test/jtreg \ > + IcedTeaPlugin.cc \ > + HACKING pulseaudio fsg.sh > > # The Binary plugs directory is called jdk1.7.0 for historical reasons. The > # name is completely irrelevant; only contains the plugs to build IcedTea. > Is there going to be another release? The current tarball is unbuildable for an ecj build: Checking patches/icedtea-ecj.patch /bin/sh: line 8: /var/tmp/portage/dev-java/icedtea6-1.3-r1/work/icedtea6-1.3/patches/icedtea-ecj.patch: No such file or directory ERROR patch patches/icedtea-ecj.patch FAILED! -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Thu Oct 16 03:11:55 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 16 Oct 2008 10:11:55 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #10 from doko at ubuntu.com 2008-10-16 10:11 ------- the current package in Ubuntu intrepid is configured with --enable-liveconnect. there seems to be a problem about adding the netscape/javascript classes into the rt.jar, which is built in stage2. In the icedtea Makefile, these files are only included in rt-closed.jar, but not in the rt.jar, which is served at the end of the build. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Thu Oct 16 04:07:05 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Thu, 16 Oct 2008 11:07:05 +0000 Subject: changeset in /hg/icedtea6: 2008-10-16 Matthias Klose changeset ae8c53f37fb0 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ae8c53f37fb0 description: 2008-10-16 Matthias Klose * acinclude.m4 (FIND_LIBGCJ_JAR): Fix check, when configuring without --with-libgcj-jar. diffstat: 2 files changed, 17 insertions(+), 11 deletions(-) ChangeLog | 5 +++++ acinclude.m4 | 23 ++++++++++++----------- diffs (48 lines): diff -r c926c9674b4c -r ae8c53f37fb0 ChangeLog --- a/ChangeLog Thu Oct 16 02:38:41 2008 +0100 +++ b/ChangeLog Thu Oct 16 13:06:48 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-16 Andrew John Hughes + + * acinclude.m4 (FIND_LIBGCJ_JAR): Fix check, when configuring + without --with-libgcj-jar. + 2008-10-16 Andrew John Hughes * Makefile.am: diff -r c926c9674b4c -r ae8c53f37fb0 acinclude.m4 --- a/acinclude.m4 Thu Oct 16 02:38:41 2008 +0100 +++ b/acinclude.m4 Thu Oct 16 13:06:48 2008 +0200 @@ -255,20 +255,21 @@ AC_DEFUN([FIND_LIBGCJ_JAR], ]) if test -z "${LIBGCJ_JAR}"; then AC_MSG_CHECKING(for libgcj-4.3.*.jar, libgcj-4.2.*.jar or libgcj-4.1.*.jar) - if test -e /usr/share/java/libgcj-4.3.*.jar; then - LIBGCJ_JAR=/usr/share/java/libgcj-4.3.*.jar + for jar in /usr/share/java/libgcj-4.3*.jar; do + test -e $jar && LIBGCJ_JAR=$jar + done + if test -n ${LIBGCJ_JAR}; then AC_MSG_RESULT(${LIBGCJ_JAR}) else - AM_CONDITIONAL(GCC_OLD, test x = x) - if test -e /usr/share/java/libgcj-4.2.*.jar; then - LIBGCJ_JAR=/usr/share/java/libgcj-4.2.*.jar - AC_MSG_RESULT(${LIBGCJ_JAR}) - elif test -e /usr/share/java/libgcj-4.1.*.jar; then - LIBGCJ_JAR=/usr/share/java/libgcj-4.1.*.jar - AC_MSG_RESULT(${LIBGCJ_JAR}) - else + AM_CONDITIONAL(GCC_OLD, test x = x) + for jar in /usr/share/java/libgcj-4.1*.jar /usr/share/java/libgcj-4.2*.jar; do + test -e $jar && LIBGCJ_JAR=$jar + done + if test -n ${LIBGCJ_JAR}; then + AC_MSG_RESULT(${LIBGCJ_JAR}) + else AC_MSG_RESULT(no) - fi + fi fi fi if test -z "${LIBGCJ_JAR}"; then From langel at redhat.com Thu Oct 16 08:37:48 2008 From: langel at redhat.com (Lillian Angel) Date: Thu, 16 Oct 2008 15:37:48 +0000 Subject: changeset in /hg/icedtea6: 2008-10-16 Lillian Angel changeset 2a478f4ccb83 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2a478f4ccb83 description: 2008-10-16 Lillian Angel * configure.ac: Updated version from 1.3 to 1.3.1. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ configure.ac | 2 +- diffs (21 lines): diff -r ae8c53f37fb0 -r 2a478f4ccb83 ChangeLog --- a/ChangeLog Thu Oct 16 13:06:48 2008 +0200 +++ b/ChangeLog Thu Oct 16 11:37:44 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-16 Matthias Klose + + * configure.ac: Updated version from 1.3 to 1.3.1. + 2008-10-16 Matthias Klose * acinclude.m4 (FIND_LIBGCJ_JAR): Fix check, when configuring diff -r ae8c53f37fb0 -r 2a478f4ccb83 configure.ac --- a/configure.ac Thu Oct 16 13:06:48 2008 +0200 +++ b/configure.ac Thu Oct 16 11:37:44 2008 -0400 @@ -1,5 +1,5 @@ AC_PREREQ([2.61]) AC_PREREQ([2.61]) -AC_INIT([icedtea6], [1.3], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6], [1.3.1], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.10 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) AC_CANONICAL_HOST From bugzilla-daemon at icedtea.classpath.org Thu Oct 16 10:06:56 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 16 Oct 2008 17:06:56 +0000 Subject: [Bug 214] Unparseable date with OpenJDK6, works with SunJava6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=214 naveed at cs.columbia.edu changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |naveed at cs.columbia.edu ------- Comment #2 from naveed at cs.columbia.edu 2008-10-16 17:06 ------- Works OK for me using java-1.6.0-openjdk-1.6.0.0-0.18.b09.fc9.x86_64 on Fedora. If I println start in your test case, I get the following text, with no exceptions: Wed Oct 01 12:50:00 EDT 2008 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From David.Herron at Sun.COM Thu Oct 16 10:57:22 2008 From: David.Herron at Sun.COM (David Herron) Date: Thu, 16 Oct 2008 10:57:22 -0700 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] Message-ID: <48F78082.6010905@sun.com> -------------- next part -------------- An embedded message was scrubbed... From: David Herron Subject: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net Date: Thu, 16 Oct 2008 10:50:33 -0700 Size: 5272 Url: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081016/195decb4/attachment.nws From gnu_andrew at member.fsf.org Thu Oct 16 11:01:01 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 19:01:01 +0100 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48F78082.6010905@sun.com> References: <48F78082.6010905@sun.com> Message-ID: <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> 2008/10/16 David Herron : > > > The DLJ distribution bundles for Java SE 6u10 have been posted > on http://jdk-distros.dev.java.net > > See: http://jdk-distros.dev.java.net/developer.html > > Release Notes: > 6u10: http://java.sun.com/javase/6/webnotes/ReleaseNotes.html > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: announce-unsubscribe at jdk-distros.dev.java.net > For additional commands, e-mail: announce-help at jdk-distros.dev.java.net > > > How is this related to OpenJDK? -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From David.Herron at Sun.COM Thu Oct 16 11:16:50 2008 From: David.Herron at Sun.COM (David Herron) Date: Thu, 16 Oct 2008 11:16:50 -0700 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> Message-ID: <48F78512.1060806@sun.com> Andrew John Hughes wrote: > 2008/10/16 David Herron : > >> The DLJ distribution bundles for Java SE 6u10 have been posted >> on http://jdk-distros.dev.java.net >> >> See: http://jdk-distros.dev.java.net/developer.html >> >> Release Notes: >> 6u10: http://java.sun.com/javase/6/webnotes/ReleaseNotes.html >> >> >> >> > > How is this related to OpenJDK? > It's not directly related to OpenJDK.. of course. The DLJ is however part of the universe of solutions related to distributing "Java" through Linux distros. Many of the people who are involved with packaging DLJ bundles for Linux are subscribed to this list. I've been reposting these announcements to this list for over a year. - David Herron -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081016/bd2f4953/attachment.html From asch at freemail.hu Thu Oct 16 12:22:47 2008 From: asch at freemail.hu (=?ISO-8859-2?Q?Schmidt_Andr=E1s?=) Date: Thu, 16 Oct 2008 21:22:47 +0200 Subject: icedtea plugin console Message-ID: <48F79487.5010005@freemail.hu> Hi, I have a Java applet that works using the proprietary Java plugin by Sun. The same applet fails when I use icedtea (Ubuntu intrepid icedtea6-pulgin). I would like to trace the code where it fails. The easiest way would be to open a Java console window when the browser activates the applet. Is there a way to configure icedtea to open such a console? Thanks Andrew Schmidt From Dalibor.Topic at Sun.COM Thu Oct 16 13:49:46 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Thu, 16 Oct 2008 22:49:46 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> Message-ID: <48F7A8EA.4090407@sun.com> Andrew John Hughes wrote: > How is this related to OpenJDK? > It can serve as a bootstrap JDK [1] for OpenJDK when other options aren't readily available - for example on sparc-solaris. cheers, dalibor topic [1] http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html#bootjdk -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From gnu_andrew at member.fsf.org Thu Oct 16 14:37:12 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 16 Oct 2008 22:37:12 +0100 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48F7A8EA.4090407@sun.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> Message-ID: <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> 2008/10/16 Dalibor Topic : > Andrew John Hughes wrote: >> How is this related to OpenJDK? >> > It can serve as a bootstrap JDK [1] for OpenJDK when other options > aren't readily available - > for example on sparc-solaris. > > cheers, > dalibor topic > > [1] > http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html#bootjdk > > -- > ******************************************************************* > Dalibor Topic Tel: (+49 40) 23 646 738 > Java F/OSS Ambassador AIM: robiladonaim > Sun Microsystems GmbH Mobile: (+49 177) 2664 192 > Nagelsweg 55 http://openjdk.java.net > D-20097 Hamburg mailto:Dalibor.Topic at sun.com > Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten > Amtsgericht M?nchen: HRB 161028 > Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer > Vorsitzender des Aufsichtsrates: Martin H?ring > > > Only if you want to regress to a non-Free build, as I presume this is the proprietary JDK i.e. the exact opposite of OpenJDK. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From Dalibor.Topic at Sun.COM Thu Oct 16 15:15:26 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Fri, 17 Oct 2008 00:15:26 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> Message-ID: <48F7BCFE.1020705@sun.com> Andrew John Hughes wrote: > Only if you want to regress to a non-Free build, as I presume this is > the proprietary JDK i.e. > the exact opposite of OpenJDK. > I'm not aware of a way to build OpenJDK on sparc using non-free tools somewhere in the build process. Yet. ;) cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From gnu_andrew at member.fsf.org Thu Oct 16 16:28:23 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Fri, 17 Oct 2008 00:28:23 +0100 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48F7BCFE.1020705@sun.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> Message-ID: <17c6771e0810161628n2cf505act3da0865e108ea28e@mail.gmail.com> 2008/10/16 Dalibor Topic : > Andrew John Hughes wrote: >> Only if you want to regress to a non-Free build, as I presume this is >> the proprietary JDK i.e. >> the exact opposite of OpenJDK. >> > I'm not aware of a way to build OpenJDK on sparc using non-free tools > somewhere in the build process. > Yet. ;) > > cheers, > dalibor topic > > -- > ******************************************************************* > Dalibor Topic Tel: (+49 40) 23 646 738 > Java F/OSS Ambassador AIM: robiladonaim > Sun Microsystems GmbH Mobile: (+49 177) 2664 192 > Nagelsweg 55 http://openjdk.java.net > D-20097 Hamburg mailto:Dalibor.Topic at sun.com > Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten > Amtsgericht M?nchen: HRB 161028 > Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer > Vorsitzender des Aufsichtsrates: Martin H?ring > > > I think you missed 'without'... I guess twisti will rectify this soon. I'm just saying I wouldn't see the availability of the proprietary version as a solution. If I did, I wouldn't have been working on GNU Classpath et. al. for the last four years. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Fri Oct 17 00:16:48 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Oct 2008 07:16:48 +0000 Subject: [Bug 194] ClassNotFoundException loading applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=194 ------- Comment #1 from dbhole at redhat.com 2008-10-17 07:16 ------- Can you provide a site that I can click on to test this? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 17 00:23:14 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Oct 2008 07:23:14 +0000 Subject: [Bug 215] Java Applet Window cannot be closed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=215 ------- Comment #2 from dbhole at redhat.com 2008-10-17 07:23 ------- if this happens with the Sun plugin as well, it may be an issue with the vm and the close window events being lost somehow. Can you please confirm if this happens there as well? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 17 00:53:14 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Oct 2008 07:53:14 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #11 from doko at ubuntu.com 2008-10-17 07:53 ------- tracked down the missing files to configuring with --with-alt-jar=/usr/bin/fastjar. Didn't find yet the cause. The current Ubuntu build does include these files. --- rt-jar.list 2008-10-17 07:50:22.000000000 +0000 +++ rt-fastjar.list 2008-10-17 07:50:31.000000000 +0000 @@ -11008,11 +11008,6 @@ net/sourceforge/jnlp/util/WeakList.class net/sourceforge/nanoxml/XMLElement.class net/sourceforge/nanoxml/XMLParseException.class -netscape/javascript/JSException.class -netscape/javascript/JSObject.class -netscape/javascript/JSProxy.class -netscape/javascript/JSRunnable.class -netscape/javascript/JSUtil.class org/ietf/jgss/ChannelBinding.class org/ietf/jgss/GSSContext.class org/ietf/jgss/GSSCredential.class -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 17 00:55:50 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Oct 2008 07:55:50 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #12 from doko at ubuntu.com 2008-10-17 07:55 ------- In http://people.ubuntu.com/~doko/java/ColorBlockApplet.html I added the MAYSCRIPT attribute, but I still cannot a reaction clicking on the applet area. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Fri Oct 17 01:03:10 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 08:03:10 +0000 Subject: changeset in /hg/icedtea6: - Fix issue that was causing gcj buil... Message-ID: changeset d7d655481120 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d7d655481120 description: - Fix issue that was causing gcj build to fail. - Fix crash when jvm dies unexpectedly diffstat: 3 files changed, 50 insertions(+), 47 deletions(-) IcedTeaPlugin.cc | 29 ++++++++++++++++------------- Makefile.am | 48 ++++++++++++++++++++++++------------------------ configure.ac | 20 ++++++++++---------- diffs (185 lines): diff -r add7ca8b2072 -r d7d655481120 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Fri Oct 17 01:22:45 2008 -0400 +++ b/IcedTeaPlugin.cc Fri Oct 17 03:58:00 2008 -0400 @@ -2566,20 +2566,23 @@ plugin_in_pipe_callback (GIOChannel* sou { PLUGIN_DEBUG ("appletviewer has stopped."); keep_installed = FALSE; + } else + { + + + // push message to queue + PR_EnterMonitor(jvmMsgQueuePRMonitor); + jvmMsgQueue.push(nsCString(message)); + PR_ExitMonitor(jvmMsgQueuePRMonitor); + + // poke process thread + PRThread *prThread; + processThread->GetPRThread(&prThread); + PRStatus res = PR_Interrupt(prThread); + } - // push message to queue - PR_EnterMonitor(jvmMsgQueuePRMonitor); - jvmMsgQueue.push(nsCString(message)); - PR_ExitMonitor(jvmMsgQueuePRMonitor); - - // poke process thread - PRThread *prThread; - processThread->GetPRThread(&prThread); - PRStatus res = PR_Interrupt(prThread); - PLUGIN_DEBUG ("plugin_in_pipe_callback return"); - return keep_installed; } @@ -4325,13 +4328,13 @@ IcedTeaJNIEnv::GetEnabledPrivileges(nsCS if (hasUniversalBrowserRead == PR_TRUE) { *privileges += "UniversalBrowserRead"; - *privileges += ","; } ctx->Implies("UniversalJavaPermission", "UniversalJavaPermission", &hasUniversalJavaPermission); if (hasUniversalJavaPermission == PR_TRUE) { - *privileges += "UniversalJavaPermission"; + *privileges += ","; + *privileges += "UniversalJavaPermission"; } } diff -r add7ca8b2072 -r d7d655481120 Makefile.am --- a/Makefile.am Fri Oct 17 01:22:45 2008 -0400 +++ b/Makefile.am Fri Oct 17 03:58:00 2008 -0400 @@ -961,16 +961,16 @@ stamps/icedtea.stamp: stamps/bootstrap-d $(ICEDTEA_ENV) \ -C openjdk/control/make/ \ $(ICEDTEA_BUILD_TARGET) +if ENABLE_GCJWEBPLUGIN + cp -pPRf gcjwebplugin.so \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf gcjwebplugin.so \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) +else if ENABLE_PLUGIN cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) -else -if ENABLE_GCJWEBPLUGIN - cp -pPRf gcjwebplugin.so \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) - cp -pPRf gcjwebplugin.so \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) endif endif @@ -1024,16 +1024,16 @@ stamps/icedtea-debug.stamp: stamps/boots $(ICEDTEA_ENV) \ -C openjdk/control/make \ $(ICEDTEA_DEBUG_BUILD_TARGET) +if ENABLE_GCJWEBPLUGIN + cp -pPRf gcjwebplugin.so \ + $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf gcjwebplugin.so \ + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) +else if ENABLE_PLUGIN cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ - $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) -else -if ENABLE_GCJWEBPLUGIN - cp -pPRf gcjwebplugin.so \ - $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) - cp -pPRf gcjwebplugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) endif endif @@ -1393,6 +1393,18 @@ clean-cacao: rm -rf cacao rm -f stamps/cacao.stamp +if ENABLE_GCJWEBPLUGIN +# gcjwebplugin.so. +gcjwebplugin.so: gcjwebplugin.cc + $(CXX) $(CXXFLAGS) $(MOZILLA_CFLAGS) \ + $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ + $(GTK_CFLAGS) $(GTK_LIBS) \ + -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -fPIC -shared -o $@ $< + +clean-gcjwebplugin: + rm -f gcjwebplugin.so +else if ENABLE_PLUGIN # IcedTeaPlugin.so. # Separate compile and link invocations to ensure intermediate object @@ -1414,18 +1426,6 @@ clean-IcedTeaPlugin: clean-IcedTeaPlugin: rm -f IcedTeaPlugin.o rm -f IcedTeaPlugin.so -else -if ENABLE_GCJWEBPLUGIN -# gcjwebplugin.so. -gcjwebplugin.so: gcjwebplugin.cc - $(CXX) $(CXXFLAGS) $(MOZILLA_CFLAGS) \ - $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ - $(GTK_CFLAGS) $(GTK_LIBS) \ - -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ - -fPIC -shared -o $@ $< - -clean-gcjwebplugin: - rm -f gcjwebplugin.so endif endif diff -r add7ca8b2072 -r d7d655481120 configure.ac --- a/configure.ac Fri Oct 17 01:22:45 2008 -0400 +++ b/configure.ac Fri Oct 17 03:58:00 2008 -0400 @@ -124,8 +124,8 @@ AM_CONDITIONAL(ENABLE_PLUGIN, test "x${e AC_ARG_ENABLE([gcjwebplugin], [AS_HELP_STRING([--enable-gcjwebplugin], - [Build the GCJ Web Plugin plugin])], - [enable_gcjplugin="yes"], [enable_gcjplugin="no"]) + [Build the GCJ Web Plugin plugin (deprecated)])], + [enable_gcjwebplugin="yes"], [enable_gcjwebplugin="no"]) AM_CONDITIONAL(ENABLE_GCJWEBPLUGIN, test "x${enable_gcjwebplugin}" = "xyes") AC_ARG_ENABLE([pulse-java], @@ -384,14 +384,8 @@ fi dnl Check for plugin support headers and libraries. dnl FIXME: use unstable -if test "x${enable_plugin}" = "xyes" -then - PKG_CHECK_MODULES(XULRUNNER, \ - nspr mozilla-js mozilla-plugin libxul-unstable >= 1.9) - PKG_CHECK_MODULES(GTK, gtk+-2.0) -else - if test "x${enable_gcjwebplugin}" = "xyes" - then +if test "x${enable_gcjwebplugin}" = "xyes" +then PKG_CHECK_MODULES(MOZILLA, mozilla-plugin libxul-unstable, \ [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no]) if test "x${MOZILLA_FOUND}" = xno @@ -438,6 +432,12 @@ else AC_SUBST(GLIB_LIBS) AC_SUBST(GTK_CFLAGS) AC_SUBST(GTK_LIBS) +else + if test "x${enable_plugin}" = "xyes" + then + PKG_CHECK_MODULES(XULRUNNER, \ + nspr mozilla-js mozilla-plugin libxul-unstable >= 1.9) + PKG_CHECK_MODULES(GTK, gtk+-2.0) fi fi From dbhole at redhat.com Fri Oct 17 01:03:10 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 08:03:10 +0000 Subject: changeset in /hg/icedtea6: - Replace TCP/IP model with fifo pipes Message-ID: changeset 2262032cc2ae in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2262032cc2ae description: - Replace TCP/IP model with fifo pipes - Improved performance - Centralize debugging, subject to environment variable ICEDTEAPLUGIN_DEBUG - Improved security by using per context privileges, rather than consulting security manager. - Add code for better panel resizing. - Reverted icedtea-webstart.patch -- the new version of the patch made it in by mistake diffstat: 21 files changed, 1347 insertions(+), 1062 deletions(-) ChangeLog | 33 IcedTeaPlugin.cc | 1505 ++++++----- Makefile.am | 32 configure.ac | 14 patches/icedtea-webstart.patch | 257 - plugin/icedtea/netscape/javascript/JSObject.java | 39 plugin/icedtea/netscape/javascript/JSRunnable.java | 4 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 2 plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java | 4 plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java | 2 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 39 plugin/icedtea/sun/applet/PluginAppletViewer.java | 220 + plugin/icedtea/sun/applet/PluginDebug.java | 2 plugin/icedtea/sun/applet/PluginMain.java | 49 plugin/icedtea/sun/applet/PluginMessageConsumer.java | 2 plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java | 4 plugin/icedtea/sun/applet/PluginObjectStore.java | 26 plugin/icedtea/sun/applet/PluginStreamHandler.java | 134 plugin/icedtea/sun/applet/RequestQueue.java | 2 plugin/icedtea/sun/applet/TestEnv.java | 36 plugin/icedtea/sun/applet/VoidPluginCallRequest.java | 3 diffs (truncated from 4626 to 500 lines): diff -r 2a478f4ccb83 -r 2262032cc2ae ChangeLog --- a/ChangeLog Thu Oct 16 11:37:44 2008 -0400 +++ b/ChangeLog Thu Oct 16 23:37:17 2008 -0400 @@ -1,3 +1,36 @@ 2008-10-16 Lillian Angel + + * IcedTeaPlugin.cc: Use fifo pipes instead of tcp/ip, make debug output + optional, update how security is handled. + * Makefile.am: Make liveconnect the default plugin + * configure.ac: Same. + * icedtea-webstart.patch: Revert to old revision. The new revision was + never meant to go in. + * plugin/icedtea/netscape/javascript/JSObject.java: Change println's to + debug(). + * plugin/icedtea/netscape/javascript/JSRunnable.java: Same. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. + * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same, and + add some time calculation output to guage performance. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Update panel resizing + code, centralize debug output calls. + * plugin/icedtea/sun/applet/PluginDebug.java: Make debug output based on + environment variable "ICEDTEAPLUGIN_DEBUG". + * plugin/icedtea/sun/applet/PluginMain.java: Update to make use of fifo. Make + stream redirectionoptional, depending on the environment variable + "ICEDTEAPLUGIN_DEBUG". + * plugin/icedtea/sun/applet/PluginMessageConsumer.java: Centralize debug + output calls. + * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java: Same. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Add some time + calculation code, update to use new transfer model over fifo. + * plugin/icedtea/sun/applet/RequestQueue.java: Centralize debug output calls. + * plugin/icedtea/sun/applet/TestEnv.java: Same. + * plugin/icedtea/sun/applet/VoidPluginCallRequest.java: Same. + 2008-10-16 Lillian Angel * configure.ac: Updated version from 1.3 to 1.3.1. diff -r 2a478f4ccb83 -r 2262032cc2ae IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 16 11:37:44 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 16 23:37:17 2008 -0400 @@ -59,6 +59,10 @@ PRThread* current_thread (); #include #include #include + +// GLib includes. +#include +#include // GTK includes. #include @@ -86,6 +90,46 @@ PRThread* current_thread (); #define ID(object) \ (object == NULL ? (PRUint32) 0 : reinterpret_cast (object)->identifier) +#if 1 +// Debugging macros. + +#define PLUGIN_DEBUG_0ARG(str) \ + if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ + { \ + printf (str); \ + } + +#define PLUGIN_DEBUG_1ARG(str, arg1) \ + if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ + { \ + printf (str, arg1); \ + } + +#define PLUGIN_DEBUG_2ARG(str, arg1, arg2) \ + if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ + { \ + printf (str, arg1, arg2); \ + } + +#define PLUGIN_DEBUG_3ARG(str, arg1, arg2, arg3) \ + if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ + { \ + printf (str, arg1, arg2, arg3); \ + } + +#define PLUGIN_DEBUG_4ARG(str, arg1, arg2, arg3, arg4) \ + if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ + { \ + printf (str, arg1, arg2, arg3, arg4); \ + } + +#define PLUGIN_DEBUG(message) \ + PLUGIN_DEBUG_1ARG ("ICEDTEA PLUGIN: %s\n", message) + +#define PLUGIN_DEBUG_TWO(first, second) \ + PLUGIN_DEBUG_2ARG ("ICEDTEA PLUGIN: %s %s\n", \ + first, second) + // Tracing. class Trace { @@ -94,28 +138,19 @@ public: { Trace::name = name; Trace::function = function; - printf ("ICEDTEA PLUGIN: %s%s\n", + PLUGIN_DEBUG_2ARG ("ICEDTEA PLUGIN: %s%s\n", name, function); } ~Trace () { - printf ("ICEDTEA PLUGIN: %s%s %s\n", + PLUGIN_DEBUG_3ARG ("ICEDTEA PLUGIN: %s%s %s\n", name, function, "return"); } private: char const* name; char const* function; }; - -#if 1 -// Debugging macros. -#define PLUGIN_DEBUG(message) \ - printf ("ICEDTEA PLUGIN: %s\n", message) - -#define PLUGIN_DEBUG_TWO(first, second) \ - printf ("ICEDTEA PLUGIN: %s %s\n", \ - first, second) // Testing macro. #define PLUGIN_TEST(expression, message) \ @@ -127,6 +162,18 @@ private: } \ while (0); +#include +#include + +inline suseconds_t get_time_in_ms() +{ + struct timeval tv; + struct timezone tz; + gettimeofday(&tv, &tz); + + return tv.tv_usec; +} + // __func__ is a variable, not a string literal, so it cannot be // concatenated by the preprocessor. #define PLUGIN_TRACE_JNIENV() Trace _trace ("JNIEnv::", __func__) @@ -152,7 +199,9 @@ private: #define PLUGIN_CHECK_RETURN(message, result) \ if (NS_SUCCEEDED (result)) \ + { \ PLUGIN_DEBUG (message); \ + } \ else \ { \ PLUGIN_ERROR (message); \ @@ -161,9 +210,12 @@ private: #define PLUGIN_CHECK(message, result) \ if (NS_SUCCEEDED (result)) \ + { \ PLUGIN_DEBUG (message); \ - else \ - PLUGIN_ERROR (message); + } else \ + { \ + PLUGIN_ERROR (message); \ + } #else @@ -241,6 +293,7 @@ private: // and set to NULL after each use. static GError* channel_error = NULL; // Fully-qualified appletviewer executable. +gchar* data_directory = NULL; static char* appletviewer_executable = NULL; static char* libjvm_so = NULL; @@ -248,6 +301,23 @@ class IcedTeaPluginFactory; static PRBool factory_created = PR_FALSE; static IcedTeaPluginFactory* factory = NULL; + +// Applet viewer input channel (needs to be static because it is used in plugin_in_pipe_callback) +GIOChannel* in_from_appletviewer = NULL; + +// Callback used to monitor input pipe status. +static gboolean plugin_in_pipe_callback (GIOChannel* source, + GIOCondition condition, + gpointer plugin_data); + +#include +#include +#include +#include + +PRMonitor *jvmMsgQueuePRMonitor; +std::queue jvmMsgQueue; +nsCOMPtr processThread; #include @@ -267,12 +337,12 @@ JNIReference::JNIReference (PRUint32 ide : identifier (identifier), count (0) { - printf ("JNIReference CONSTRUCT: %d %p\n", identifier, this); + PLUGIN_DEBUG_2ARG ("JNIReference CONSTRUCT: %d %p\n", identifier, this); } JNIReference::~JNIReference () { - printf ("JNIReference DECONSTRUCT: %d %p\n", identifier, this); + PLUGIN_DEBUG_2ARG ("JNIReference DECONSTRUCT: %d %p\n", identifier, this); } class JNIID : public JNIReference @@ -287,12 +357,12 @@ JNIID::JNIID (PRUint32 identifier, char : JNIReference (identifier), signature (strdup (signature)) { - printf ("JNIID CONSTRUCT: %d %p\n", identifier, this); + PLUGIN_DEBUG_2ARG ("JNIID CONSTRUCT: %d %p\n", identifier, this); } JNIID::~JNIID () { - printf ("JNIID DECONSTRUCT: %d %p\n", identifier, this); + PLUGIN_DEBUG_2ARG ("JNIID DECONSTRUCT: %d %p\n", identifier, this); } char const* TYPES[10] = { "Object", @@ -306,7 +376,6 @@ char const* TYPES[10] = { "Object", "double", "void" }; -#include // FIXME: create index from security context. #define MESSAGE_CREATE() \ @@ -316,20 +385,28 @@ char const* TYPES[10] = { "Object", #define MESSAGE_ADD_STACK_REFERENCE(reference) \ message += " reference "; \ message.AppendInt (reference); \ - if (factory->result_map[reference] == NULL) { \ - factory->result_map[reference] = new ResultContainer(); \ - printf("ResultMap created -- %p %d\n", factory->result_map[reference], factory->result_map[reference]->returnIdentifier); \ + if (!factory->result_map.Get(reference, NULL)) { \ + ResultContainer *resultC = new ResultContainer(); \ + factory->result_map.Put(reference, resultC); \ + PLUGIN_DEBUG_3ARG ("ResultMap %p created for reference %d found = %d\n", resultC, reference, factory->result_map.Get(reference, NULL)); \ + ResultContainer *searched; \ + factory->result_map.Get(reference, &searched); \ + PLUGIN_DEBUG_1ARG ("Searched returned %d\n", searched->returnIdentifier); \ } \ else \ - factory->result_map[reference]->Clear(); + { \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + resultC->Clear(); \ + } #define MESSAGE_ADD_SRC(src) \ message += " src "; \ message += src; -#define MESSAGE_ADD_PRIVILEGES() \ +#define MESSAGE_ADD_PRIVILEGES(ctx) \ nsCString privileges(""); \ - GetEnabledPrivileges(&privileges); \ + GetEnabledPrivileges(&privileges, ctx); \ if (privileges.Length() > 0) \ { \ message += " privileges "; \ @@ -401,11 +478,13 @@ char const* TYPES[10] = { "Object", // shutdown (so that the permanent loop does not block // proper exit). We need better error handling -#define PROCESS_PENDING_EVENTS_REF(reference) \ +#define PROCESS_PENDING_EVENTS_REF2(reference) \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ if (factory->shutting_down == PR_TRUE && \ - factory->result_map[reference]->errorOccurred == PR_TRUE) \ + resultC->errorOccurred == PR_TRUE) \ { \ - printf("Error occured. Exiting function\n"); \ + PLUGIN_DEBUG_0ARG("Error occured. Exiting function\n"); \ return NS_ERROR_FAILURE; \ } \ PRBool hasPending; \ @@ -413,8 +492,16 @@ char const* TYPES[10] = { "Object", if (hasPending == PR_TRUE) { \ PRBool processed = PR_FALSE; \ factory->current->ProcessNextEvent(PR_TRUE, &processed); \ + } else if (g_main_context_pending (NULL)) { \ + g_main_context_iteration(NULL, false); \ } else { \ PR_Sleep(PR_INTERVAL_NO_WAIT); \ + } + + +#define PROCESS_PENDING_EVENTS_REF(reference) \ + if (g_main_context_pending (NULL)) { \ + g_main_context_iteration(NULL, false); \ } #define PROCESS_PENDING_EVENTS \ @@ -429,57 +516,63 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_REFERENCE(reference, cast, name) \ nsresult res = NS_OK; \ - printf ("RECEIVE 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1 &&\ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG ("RECEIVE 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnIdentifier == -1 &&\ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - printf ("RECEIVE 3\n"); \ - if (factory->result_map[reference]->returnIdentifier == 0 || \ - factory->result_map[reference]->errorOccurred == PR_TRUE) \ + PLUGIN_DEBUG_0ARG ("RECEIVE 3\n"); \ + if (resultC->returnIdentifier == 0 || \ + resultC->errorOccurred == PR_TRUE) \ { \ *name = NULL; \ } else { \ *name = \ reinterpret_cast \ - (factory->references.ReferenceObject (factory->result_map[reference]->returnIdentifier)); \ + (factory->references.ReferenceObject (resultC->returnIdentifier)); \ } \ - printf ("RECEIVE_REFERENCE: %s result: %x = %d\n", \ - __func__, *name, factory->result_map[reference]->returnIdentifier); + PLUGIN_DEBUG_3ARG ("RECEIVE_REFERENCE: %s result: %x = %d\n", \ + __func__, *name, resultC->returnIdentifier); // FIXME: track and free JNIIDs. #define MESSAGE_RECEIVE_ID(reference, cast, id, signature) \ PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ - printf("RECEIVE ID 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1 &&\ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG ("RECEIVE ID 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnIdentifier == -1 &&\ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ - if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ + if (resultC->errorOccurred == PR_TRUE) \ { \ *id = NULL; \ } else \ { \ *id = reinterpret_cast \ - (new JNIID (factory->result_map[reference]->returnIdentifier, signature)); \ - printf ("RECEIVE_ID: %s result: %x = %d, %s\n", \ - __func__, *id, factory->result_map[reference]->returnIdentifier, \ + (new JNIID (resultC->returnIdentifier, signature)); \ + PLUGIN_DEBUG_4ARG ("RECEIVE_ID: %s result: %x = %d, %s\n", \ + __func__, *id, resultC->returnIdentifier, \ signature); \ } #define MESSAGE_RECEIVE_VALUE(reference, ctype, result) \ nsresult res = NS_OK; \ - printf("RECEIVE VALUE 1\n"); \ - while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG ("RECEIVE VALUE 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnValue == "" && \ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = ParseValue (type, factory->result_map[reference]->returnValue); + *result = ParseValue (type, resultC->returnValue); // \ // char* valueString = ValueString (type, *result); \ // printf ("RECEIVE_VALUE: %s result: %x = %s\n", \ @@ -490,18 +583,20 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_SIZE(reference, result) \ PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ - printf("RECEIVE SIZE 1\n"); \ - while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG("RECEIVE SIZE 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnValue == "" && \ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ + if (resultC->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ { \ - *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ + *result = resultC->returnValue.ToInteger (&conversionResult); \ PLUGIN_CHECK ("parse integer", conversionResult); \ } // \ @@ -512,19 +607,21 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_STRING(reference, char_type, result) \ PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ - printf("RECEIVE STRING 1\n"); \ - while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG("RECEIVE STRING 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnValue == "" && \ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ + if (resultC->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ {\ - printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ + PLUGIN_DEBUG_1ARG("Setting result to: %s\n", strdup (resultC->returnValue.get ())); \ *result = reinterpret_cast \ - (strdup (factory->result_map[reference]->returnValue.get ()));\ + (strdup (resultC->returnValue.get ()));\ } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ @@ -534,21 +631,22 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_STRING_UCS(reference, result) \ PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ - printf("RECEIVE STRING UCS 1\n"); \ - while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG("RECEIVE STRING UCS 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnValueUCS.IsEmpty() && \ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ + if (resultC->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ { \ - int length = factory->result_map[reference]->returnValueUCS.Length (); \ + int length = resultC->returnValueUCS.Length (); \ jchar* newstring = static_cast (PR_Malloc (length)); \ memset (newstring, 0, length); \ - memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ - std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ + memcpy (newstring, resultC->returnValueUCS.get (), length); \ *result = static_cast (newstring); \ } @@ -559,16 +657,18 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_BOOLEAN(reference, result) \ PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ - printf("RECEIVE BOOLEAN 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1 && \ - factory->result_map[reference]->errorOccurred == PR_FALSE) \ + PLUGIN_DEBUG_0ARG("RECEIVE BOOLEAN 1\n"); \ + ResultContainer *resultC; \ + factory->result_map.Get(reference, &resultC); \ + while (resultC->returnIdentifier == -1 && \ + resultC->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ + if (resultC->errorOccurred == PR_TRUE) \ From dbhole at redhat.com Fri Oct 17 01:03:10 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 08:03:10 +0000 Subject: changeset in /hg/icedtea6: - misc. minor fixes and cleanup Message-ID: changeset add7ca8b2072 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=add7ca8b2072 description: - misc. minor fixes and cleanup diffstat: 4 files changed, 18 insertions(+), 77 deletions(-) IcedTeaPlugin.cc | 68 --------------------- configure.ac | 4 - plugin/icedtea/sun/applet/PluginAppletViewer.java | 16 ++-- rt/net/sourceforge/jnlp/NetxPanel.java | 7 +- diffs (190 lines): diff -r 2262032cc2ae -r add7ca8b2072 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 16 23:37:17 2008 -0400 +++ b/IcedTeaPlugin.cc Fri Oct 17 01:22:45 2008 -0400 @@ -389,15 +389,12 @@ char const* TYPES[10] = { "Object", ResultContainer *resultC = new ResultContainer(); \ factory->result_map.Put(reference, resultC); \ PLUGIN_DEBUG_3ARG ("ResultMap %p created for reference %d found = %d\n", resultC, reference, factory->result_map.Get(reference, NULL)); \ - ResultContainer *searched; \ - factory->result_map.Get(reference, &searched); \ - PLUGIN_DEBUG_1ARG ("Searched returned %d\n", searched->returnIdentifier); \ } \ else \ { \ ResultContainer *resultC; \ - factory->result_map.Get(reference, &resultC); \ - resultC->Clear(); \ + factory->result_map.Get(reference, &resultC); \ + resultC->Clear(); \ } #define MESSAGE_ADD_SRC(src) \ @@ -929,8 +926,6 @@ public: // FIXME: make private? JNIEnv* proxyEnv; nsISecureEnv* secureEnv; - - // FIXME: Use something portable here nsDataHashtable result_map; void GetMember (); @@ -1420,65 +1415,6 @@ GetURLRunnable::Run () return owner->GetURL ((const char*) url, (const char*) target, nsnull, 0, nsnull, 0); -} - - -class IcedTeaSecurityContext : public nsISecurityContext -{ - - NS_DECL_ISUPPORTS - -public: - - IcedTeaSecurityContext(); - - NS_IMETHOD Implies(const char* target, const char* action, PRBool *bAllowedAccess); - - NS_IMETHOD GetOrigin(char* buf, int len); - - NS_IMETHOD GetCertificateID(char* buf, int len); - - ~IcedTeaSecurityContext(void); - -private: - PRBool universalJavaCapabilityEnabled; - PRBool universalBrowserReadCapabilityEnabled; -}; - -NS_IMPL_ISUPPORTS1 (IcedTeaSecurityContext, nsISecurityContext) - -IcedTeaSecurityContext::IcedTeaSecurityContext () -: universalJavaCapabilityEnabled(PR_FALSE), - universalBrowserReadCapabilityEnabled(PR_FALSE) -{ - // nothing to do -} - -IcedTeaSecurityContext::~IcedTeaSecurityContext () -{ -} - -NS_METHOD -IcedTeaSecurityContext::Implies(const char* target, const char* action, PRBool *bAllowedAccess) -{ - PLUGIN_DEBUG_2ARG ("%s implies %s ?\n", target, action); - *bAllowedAccess = PR_TRUE; - return NS_OK; -} - -NS_METHOD -IcedTeaSecurityContext::GetOrigin(char* buf, int len) -{ - PLUGIN_DEBUG_0ARG ("Origin requested\n"); - strncpy(buf, "http://www.redhat.com", len); - return NS_OK; -} - -NS_METHOD -IcedTeaSecurityContext::GetCertificateID(char* buf, int len) -{ - PLUGIN_DEBUG_0ARG ("CertificateID requested\n"); - return NS_OK; } NS_IMPL_ISUPPORTS6 (IcedTeaPluginFactory, nsIFactory, nsIPlugin, nsIJVMManager, diff -r 2262032cc2ae -r add7ca8b2072 configure.ac --- a/configure.ac Thu Oct 16 23:37:17 2008 -0400 +++ b/configure.ac Fri Oct 17 01:22:45 2008 -0400 @@ -384,13 +384,13 @@ fi dnl Check for plugin support headers and libraries. dnl FIXME: use unstable -if test "x${enable_liveconnect}" = "xyes" +if test "x${enable_plugin}" = "xyes" then PKG_CHECK_MODULES(XULRUNNER, \ nspr mozilla-js mozilla-plugin libxul-unstable >= 1.9) PKG_CHECK_MODULES(GTK, gtk+-2.0) else - if test "x${enable_plugin}" = "xyes" + if test "x${enable_gcjwebplugin}" = "xyes" then PKG_CHECK_MODULES(MOZILLA, mozilla-plugin libxul-unstable, \ [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no]) diff -r 2262032cc2ae -r add7ca8b2072 plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 16 23:37:17 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Fri Oct 17 01:22:45 2008 -0400 @@ -1413,20 +1413,20 @@ import sun.misc.Ref; } if (atts.get("width") == null) { - atts.put("width", "1"); + atts.put("width", "100"); atts.put("widthPercentage", 100); } else if (((String) atts.get("width")).endsWith("%")) { String w = (String) atts.get("width"); - atts.put("width", "1"); + atts.put("width", "100"); atts.put("widthPercentage", Integer.parseInt((w.substring(0, w.length() -1)))); } if (atts.get("height") == null) { - atts.put("height", "1"); + atts.put("height", "100"); atts.put("heightPercentage", 100); } else if (((String) atts.get("height")).endsWith("%")) { String h = (String) atts.get("height"); - atts.put("height", "1"); + atts.put("height", "100"); atts.put("heightPercentage", Integer.parseInt(h.substring(0, h.length() -1))); } } @@ -1449,7 +1449,7 @@ import sun.misc.Ref; } if (atts.get("width") == null) { - atts.put("width", "1"); + atts.put("width", "100"); atts.put("widthPercentage", 100); } else if (((String) atts.get("width")).endsWith("%")) { String w = (String) atts.get("width"); @@ -1462,7 +1462,7 @@ import sun.misc.Ref; atts.put("heightPercentage", 100); } else if (((String) atts.get("height")).endsWith("%")) { String h = (String) atts.get("height"); - atts.put("height", "1"); + atts.put("height", "100"); atts.put("heightPercentage", Integer.parseInt(h.substring(0, h.length() -1))); } } @@ -1483,11 +1483,11 @@ import sun.misc.Ref; } if (atts.get("width") == null) { - atts.put("width", "1"); + atts.put("width", "100"); atts.put("widthPercentage", 100); } else if (((String) atts.get("width")).endsWith("%")) { String w = (String) atts.get("width"); - atts.put("width", "1"); + atts.put("width", "100"); atts.put("widthPercentage", Integer.parseInt(w.substring(0, w.length() -1))); } diff -r 2262032cc2ae -r add7ca8b2072 rt/net/sourceforge/jnlp/NetxPanel.java --- a/rt/net/sourceforge/jnlp/NetxPanel.java Thu Oct 16 23:37:17 2008 -0400 +++ b/rt/net/sourceforge/jnlp/NetxPanel.java Fri Oct 17 01:22:45 2008 -0400 @@ -114,5 +114,10 @@ public class NetxPanel extends AppletVie handler = new Thread(this); handler.start(); } + + public void updateSizeInAtts(int height, int width) { + this.atts.put("height", Integer.toString(height)); + this.atts.put("width", Integer.toString(width)); + } +} -} From dbhole at redhat.com Fri Oct 17 01:20:09 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 04:20:09 -0400 Subject: Liveconnect plugin is not the default in IcedTea6 Message-ID: <20081017082009.GA4836@redhat.com> Hi Everyone, Yes you read that subject right, the moment is finally here! I have just completed some final touches to the new plugin, and have made it the default for IcedTea 6. Functionality wise, everything should be more or less complete now. In terms of stability, the plugin is fairly stable, but I have seen cases where it takes down the browser, specially on sites with 5-8 applets on the same page. I wish to dedicate the next week to bug fixing and code cleanup, and to that end, any testing would be greatly appreciated. Instructions on how to build/try it out and specified at the end. So if you have a favourite site that never worked with IcedTea before and you wanted to blame someone till they got it working, this is your chance :) I'd also like to mention a special thanks to Thomas Fitzsimmons for the initial codebase, and his continued helpful insight on the plugin's development. Known issues: 1. Yahoo games does not work. This appears to be a very complex issue, and the obsfucation of data passed between server/client makes it very hard to figure out the problem. 2. Initial panel size is incorrect if the dimensions as expressed as a % (resizing the window fixes it) 3. Sites known not work at the moment: http://www.chessgames.com (applet works, but there is a drawing issue) http://www.goes.noaa.gov/HURRLOOPS/huirloop.html (hangs) Any WebEx app (this works, but a browser restart is needed for first use) 4. If you build IcedTea yourself, make sure you have the right cacerts in jre/lib/security/ otherwise bad things happen (nothing bad security wise.. more like vm crash/exit when trying to load jars from https). The right cacerts can be found in the jre/lib/security/ directory of any existing IcedTea releases. 5. If something kills the jvm, it cannot respawn until the browser is restarted -- this is a bad one and I intend to fix it asap now that other priority items are done. Building + using: To build it just clone the icedtea6 repo and build: 1. hg clone http://icedtea.classpath.org/hg/icedtea6 2. cd icedtea6 3. aclocal; autoconf; automake --add-missing 4. ./configure 5. make Once this completes, your JDK/JRE should be in openjdk/control/build/linux- Next, create a link (needs to be a link, copying will not work) to [jre/]lib/i386/IcedTeaPlugin.so either in $MOZ_LIB_DIR/mozilla/plugins (MOZ_LIB_DIR=/usr/lib by default on i386) or in ~/.mozilla/plugins/ If there is an existing link to another java plugin in either of those directories, it must be moved out. Finally, confirm that the new plugin is seen by firefox via about:plugins, and then load up your favourite site! By default the plugin does not output much, but if you set the ICEDTEAPLUGIN_DEBUG environment variable, it will spew lots (and I mean LOTS) of debug info. Additionally, it will also redirect stderr/stdout from java side to /tmp/java.std* files. Well, that is all I can think of for now. Let me know if there are any problems. Cheers, Deepak From dbhole at redhat.com Fri Oct 17 01:23:30 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 04:23:30 -0400 Subject: Liveconnect plugin is NOW the default in IcedTea6 In-Reply-To: <20081017082009.GA4836@redhat.com> References: <20081017082009.GA4836@redhat.com> Message-ID: <20081017082329.GB4836@redhat.com> Oh for the love of! ... 4 times I read the email, telling myself "it is 4:20 am, there may be mistakes" .. and not once did I check the subject line. Bah! Now.. I meant now, "Liveconnect plugin is NOW the default in IcedTea6" Sorry for this spam message, but it had to be corrected :) Deepak * Deepak Bhole [2008-10-17 04:20]: > > Hi Everyone, > > Yes you read that subject right, the moment is finally here! I have just > completed some final touches to the new plugin, and have made > it the default for IcedTea 6. > > Functionality wise, everything should be more or less complete now. In terms of > stability, the plugin is fairly stable, but I have seen cases where it takes down > the browser, specially on sites with 5-8 applets on the same page. > > I wish to dedicate the next week to bug fixing and code cleanup, and to that > end, any testing would be greatly appreciated. Instructions on how to > build/try it out and specified at the end. So if you have a favourite site > that never worked with IcedTea before and you wanted to blame someone till > they got it working, this is your chance :) > > I'd also like to mention a special thanks to Thomas Fitzsimmons for the > initial codebase, and his continued helpful insight on the plugin's > development. > > Known issues: > 1. Yahoo games does not work. This appears to be a very complex issue, and > the obsfucation of data passed between server/client makes it very hard > to figure out the problem. > > 2. Initial panel size is incorrect if the dimensions as expressed as a % > (resizing the window fixes it) > > 3. Sites known not work at the moment: > http://www.chessgames.com (applet works, but there is a drawing issue) > http://www.goes.noaa.gov/HURRLOOPS/huirloop.html (hangs) > Any WebEx app (this works, but a browser restart is needed for first use) > > 4. If you build IcedTea yourself, make sure you have the right cacerts in > jre/lib/security/ otherwise bad things happen (nothing bad security wise.. > more like vm crash/exit when trying to load jars from https). The right > cacerts can be found in the jre/lib/security/ directory of any existing > IcedTea releases. > > 5. If something kills the jvm, it cannot respawn until the browser is > restarted -- this is a bad one and I intend to fix it asap now that other > priority items are done. > > Building + using: > To build it just clone the icedtea6 repo and build: > > 1. hg clone http://icedtea.classpath.org/hg/icedtea6 > 2. cd icedtea6 > 3. aclocal; autoconf; automake --add-missing > 4. ./configure > 5. make > > Once this completes, your JDK/JRE should be in > openjdk/control/build/linux- > > Next, create a link (needs to be a link, copying will not work) to > [jre/]lib/i386/IcedTeaPlugin.so either in $MOZ_LIB_DIR/mozilla/plugins > (MOZ_LIB_DIR=/usr/lib by default on i386) or in ~/.mozilla/plugins/ > > If there is an existing link to another java plugin in either of those > directories, it must be moved out. > > Finally, confirm that the new plugin is seen by firefox via about:plugins, > and then load up your favourite site! > > By default the plugin does not output much, but if you set the > ICEDTEAPLUGIN_DEBUG environment variable, it will spew lots (and I mean > LOTS) of debug info. Additionally, it will also redirect stderr/stdout > from java side to /tmp/java.std* files. > > Well, that is all I can think of for now. Let me know if there are any > problems. > > Cheers, > Deepak > From twisti at complang.tuwien.ac.at Fri Oct 17 02:23:00 2008 From: twisti at complang.tuwien.ac.at (Christian Thalinger) Date: Fri, 17 Oct 2008 11:23:00 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <17c6771e0810161628n2cf505act3da0865e108ea28e@mail.gmail.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <17c6771e0810161628n2cf505act3da0865e108ea28e@mail.gmail.com> Message-ID: <1224235380.9105.2.camel@workstation.chello.at> On Fri, 2008-10-17 at 00:28 +0100, Andrew John Hughes wrote: > 2008/10/16 Dalibor Topic : > > Andrew John Hughes wrote: > >> Only if you want to regress to a non-Free build, as I presume this is > >> the proprietary JDK i.e. > >> the exact opposite of OpenJDK. > >> > > I'm not aware of a way to build OpenJDK on sparc using non-free tools > > somewhere in the build process. > > Yet. ;) > I think you missed 'without'... > > I guess twisti will rectify this soon. I'm just saying I wouldn't see Hmm, sounds like another sadist^W challenge :-) - Christian From gbenson at redhat.com Fri Oct 17 05:45:18 2008 From: gbenson at redhat.com (Gary Benson) Date: Fri, 17 Oct 2008 12:45:18 +0000 Subject: changeset in /hg/icedtea6: I hate autoconf Message-ID: changeset ad32e49ddfdf in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ad32e49ddfdf description: I hate autoconf diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ acinclude.m4 | 2 +- diffs (23 lines): diff -r d7d655481120 -r ad32e49ddfdf ChangeLog --- a/ChangeLog Fri Oct 17 03:58:00 2008 -0400 +++ b/ChangeLog Fri Oct 17 05:16:39 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-16 Deepak Bhole + + * acinclude.m4 (FIND_LIBGCJ_JAR): Fix quoting. + 2008-10-16 Deepak Bhole * IcedTeaPlugin.cc: Use fifo pipes instead of tcp/ip, make debug output diff -r d7d655481120 -r ad32e49ddfdf acinclude.m4 --- a/acinclude.m4 Fri Oct 17 03:58:00 2008 -0400 +++ b/acinclude.m4 Fri Oct 17 05:16:39 2008 -0400 @@ -258,7 +258,7 @@ AC_DEFUN([FIND_LIBGCJ_JAR], for jar in /usr/share/java/libgcj-4.3*.jar; do test -e $jar && LIBGCJ_JAR=$jar done - if test -n ${LIBGCJ_JAR}; then + if test -n "${LIBGCJ_JAR}"; then AC_MSG_RESULT(${LIBGCJ_JAR}) else AM_CONDITIONAL(GCC_OLD, test x = x) From gbenson at redhat.com Fri Oct 17 07:37:41 2008 From: gbenson at redhat.com (Gary Benson) Date: Fri, 17 Oct 2008 14:37:41 +0000 Subject: changeset in /hg/icedtea6: 2008-10-17 Gary Benson changeset be5fa1722f4f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=be5fa1722f4f description: 2008-10-17 Gary Benson PR icedtea/203: * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp (SharkDecacher::start_stack): Always set the stack pointer. (SharkCacher::start_stack): Removed. * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp (SharkCacher::start_stack): Likewise. * ports/hotspot/src/share/vm/shark/sharkFunction.cpp (SharkFunction::CreateBuildFrame): Only set the stack pointer for non-product builds. diffstat: 4 files changed, 19 insertions(+), 22 deletions(-) ChangeLog | 12 +++++++ ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 26 +++------------- ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 1 ports/hotspot/src/share/vm/shark/sharkFunction.cpp | 2 - diffs (85 lines): diff -r ad32e49ddfdf -r be5fa1722f4f ChangeLog --- a/ChangeLog Fri Oct 17 05:16:39 2008 -0400 +++ b/ChangeLog Fri Oct 17 10:37:37 2008 -0400 @@ -1,3 +1,15 @@ 2008-10-17 Gary Benson + + PR icedtea/203: + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp + (SharkDecacher::start_stack): Always set the stack pointer. + (SharkCacher::start_stack): Removed. + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp + (SharkCacher::start_stack): Likewise. + * ports/hotspot/src/share/vm/shark/sharkFunction.cpp + (SharkFunction::CreateBuildFrame): Only set the stack pointer + for non-product builds. + 2008-10-17 Gary Benson * acinclude.m4 (FIND_LIBGCJ_JAR): Fix quoting. diff -r ad32e49ddfdf -r be5fa1722f4f ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp --- a/ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp Fri Oct 17 05:16:39 2008 -0400 +++ b/ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp Fri Oct 17 10:37:37 2008 -0400 @@ -43,14 +43,12 @@ void SharkDecacher::start_stack(int num_ // Create the array we'll record our stack slots in _exparray = new GrowableArray(num_slots); - // Trim back the stack if necessary - if (num_slots != max_slots) { - function()->CreateStoreZeroStackPointer( - builder()->CreatePtrToInt( - function()->CreateAddressOfFrameEntry( - function()->stack_slots_offset() + max_slots - num_slots), - SharkType::intptr_type())); - } + // Set the stack pointer + function()->CreateStoreZeroStackPointer( + builder()->CreatePtrToInt( + function()->CreateAddressOfFrameEntry( + function()->stack_slots_offset() + max_slots - num_slots), + SharkType::intptr_type())); } void SharkDecacher::process_stack_slot(int index, @@ -169,18 +167,6 @@ void SharkDecacher::end_frame() debug_info()->end_safepoint(pc_offset()); } -void SharkCacher::start_stack(int num_slots, int max_slots) -{ - // Restore the stack if necessary - if (num_slots != max_slots) { - function()->CreateStoreZeroStackPointer( - builder()->CreatePtrToInt( - function()->CreateAddressOfFrameEntry( - function()->stack_slots_offset()), - SharkType::intptr_type())); - } -} - void SharkCacher::process_stack_slot(int index, SharkValue** addr, int offset) diff -r ad32e49ddfdf -r be5fa1722f4f ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp --- a/ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp Fri Oct 17 05:16:39 2008 -0400 +++ b/ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp Fri Oct 17 10:37:37 2008 -0400 @@ -297,7 +297,6 @@ class SharkCacher : public SharkCacherDe // Callbacks protected: - void start_stack(int num_slots, int max_slots); void process_stack_slot(int index, SharkValue** value, int offset); void process_method_slot(llvm::Value** value, int offset); diff -r ad32e49ddfdf -r be5fa1722f4f ports/hotspot/src/share/vm/shark/sharkFunction.cpp --- a/ports/hotspot/src/share/vm/shark/sharkFunction.cpp Fri Oct 17 05:16:39 2008 -0400 +++ b/ports/hotspot/src/share/vm/shark/sharkFunction.cpp Fri Oct 17 10:37:37 2008 -0400 @@ -213,7 +213,7 @@ Value* SharkFunction::CreateBuildFrame() CreateLoadZeroStackPointer(), LLVMValue::intptr_constant((frame_words + extra_locals) * wordSize)); CreateStackOverflowCheck(zero_stack_pointer); - CreateStoreZeroStackPointer(zero_stack_pointer); + NOT_PRODUCT(CreateStoreZeroStackPointer(zero_stack_pointer)); // Create the frame _frame = builder()->CreateIntToPtr( From langel at redhat.com Fri Oct 17 07:58:43 2008 From: langel at redhat.com (Lillian Angel) Date: Fri, 17 Oct 2008 10:58:43 -0400 Subject: Liveconnect plugin is not the default in IcedTea6 In-Reply-To: <20081017082009.GA4836@redhat.com> References: <20081017082009.GA4836@redhat.com> Message-ID: <48F8A823.8030607@redhat.com> Deepak Bhole wrote: > Hi Everyone, > > Yes you read that subject right, the moment is finally here! I have just > completed some final touches to the new plugin, and have made > it the default for IcedTea 6. > Woo hoo! Thanks Deepak, this is great news! Lillian > Functionality wise, everything should be more or less complete now. In terms of > stability, the plugin is fairly stable, but I have seen cases where it takes down > the browser, specially on sites with 5-8 applets on the same page. > > I wish to dedicate the next week to bug fixing and code cleanup, and to that > end, any testing would be greatly appreciated. Instructions on how to > build/try it out and specified at the end. So if you have a favourite site > that never worked with IcedTea before and you wanted to blame someone till > they got it working, this is your chance :) > > I'd also like to mention a special thanks to Thomas Fitzsimmons for the > initial codebase, and his continued helpful insight on the plugin's > development. > > Known issues: > 1. Yahoo games does not work. This appears to be a very complex issue, and > the obsfucation of data passed between server/client makes it very hard > to figure out the problem. > > 2. Initial panel size is incorrect if the dimensions as expressed as a % > (resizing the window fixes it) > > 3. Sites known not work at the moment: > http://www.chessgames.com (applet works, but there is a drawing issue) > http://www.goes.noaa.gov/HURRLOOPS/huirloop.html (hangs) > Any WebEx app (this works, but a browser restart is needed for first use) > > 4. If you build IcedTea yourself, make sure you have the right cacerts in > jre/lib/security/ otherwise bad things happen (nothing bad security wise.. > more like vm crash/exit when trying to load jars from https). The right > cacerts can be found in the jre/lib/security/ directory of any existing > IcedTea releases. > > 5. If something kills the jvm, it cannot respawn until the browser is > restarted -- this is a bad one and I intend to fix it asap now that other > priority items are done. > > Building + using: > To build it just clone the icedtea6 repo and build: > > 1. hg clone http://icedtea.classpath.org/hg/icedtea6 > 2. cd icedtea6 > 3. aclocal; autoconf; automake --add-missing > 4. ./configure > 5. make > > Once this completes, your JDK/JRE should be in > openjdk/control/build/linux- > > Next, create a link (needs to be a link, copying will not work) to > [jre/]lib/i386/IcedTeaPlugin.so either in $MOZ_LIB_DIR/mozilla/plugins > (MOZ_LIB_DIR=/usr/lib by default on i386) or in ~/.mozilla/plugins/ > > If there is an existing link to another java plugin in either of those > directories, it must be moved out. > > Finally, confirm that the new plugin is seen by firefox via about:plugins, > and then load up your favourite site! > > By default the plugin does not output much, but if you set the > ICEDTEAPLUGIN_DEBUG environment variable, it will spew lots (and I mean > LOTS) of debug info. Additionally, it will also redirect stderr/stdout > from java side to /tmp/java.std* files. > > Well, that is all I can think of for now. Let me know if there are any > problems. > > Cheers, > Deepak > > From gnu_andrew at member.fsf.org Fri Oct 17 08:04:34 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Fri, 17 Oct 2008 16:04:34 +0100 Subject: Liveconnect plugin is not the default in IcedTea6 In-Reply-To: <20081017082009.GA4836@redhat.com> References: <20081017082009.GA4836@redhat.com> Message-ID: <17c6771e0810170804j48eb2f01q5bf783372da3ad0e@mail.gmail.com> 2008/10/17 Deepak Bhole : > > Hi Everyone, > > Yes you read that subject right, the moment is finally here! I have just > completed some final touches to the new plugin, and have made > it the default for IcedTea 6. > > Functionality wise, everything should be more or less complete now. In terms of > stability, the plugin is fairly stable, but I have seen cases where it takes down > the browser, specially on sites with 5-8 applets on the same page. > > I wish to dedicate the next week to bug fixing and code cleanup, and to that > end, any testing would be greatly appreciated. Instructions on how to > build/try it out and specified at the end. So if you have a favourite site > that never worked with IcedTea before and you wanted to blame someone till > they got it working, this is your chance :) > > I'd also like to mention a special thanks to Thomas Fitzsimmons for the > initial codebase, and his continued helpful insight on the plugin's > development. > > Known issues: > 1. Yahoo games does not work. This appears to be a very complex issue, and > the obsfucation of data passed between server/client makes it very hard > to figure out the problem. > > 2. Initial panel size is incorrect if the dimensions as expressed as a % > (resizing the window fixes it) > > 3. Sites known not work at the moment: > http://www.chessgames.com (applet works, but there is a drawing issue) > http://www.goes.noaa.gov/HURRLOOPS/huirloop.html (hangs) > Any WebEx app (this works, but a browser restart is needed for first use) > > 4. If you build IcedTea yourself, make sure you have the right cacerts in > jre/lib/security/ otherwise bad things happen (nothing bad security wise.. > more like vm crash/exit when trying to load jars from https). The right > cacerts can be found in the jre/lib/security/ directory of any existing > IcedTea releases. > > 5. If something kills the jvm, it cannot respawn until the browser is > restarted -- this is a bad one and I intend to fix it asap now that other > priority items are done. > > Building + using: > To build it just clone the icedtea6 repo and build: > > 1. hg clone http://icedtea.classpath.org/hg/icedtea6 > 2. cd icedtea6 > 3. aclocal; autoconf; automake --add-missing > 4. ./configure > 5. make > > Once this completes, your JDK/JRE should be in > openjdk/control/build/linux- > > Next, create a link (needs to be a link, copying will not work) to > [jre/]lib/i386/IcedTeaPlugin.so either in $MOZ_LIB_DIR/mozilla/plugins > (MOZ_LIB_DIR=/usr/lib by default on i386) or in ~/.mozilla/plugins/ > > If there is an existing link to another java plugin in either of those > directories, it must be moved out. > > Finally, confirm that the new plugin is seen by firefox via about:plugins, > and then load up your favourite site! > > By default the plugin does not output much, but if you set the > ICEDTEAPLUGIN_DEBUG environment variable, it will spew lots (and I mean > LOTS) of debug info. Additionally, it will also redirect stderr/stdout > from java side to /tmp/java.std* files. > > Well, that is all I can think of for now. Let me know if there are any > problems. > > Cheers, > Deepak > > Great news! Though I think the subject should be 'is now' not 'is not'... ;) Hope to see a nice showcase of cool applets soon... -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From Dalibor.Topic at Sun.COM Fri Oct 17 08:10:32 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Fri, 17 Oct 2008 17:10:32 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <17c6771e0810161628n2cf505act3da0865e108ea28e@mail.gmail.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <17c6771e0810161628n2cf505act3da0865e108ea28e@mail.gmail.com> Message-ID: <48F8AAE8.5010907@sun.com> Andrew John Hughes wrote: > I think you missed 'without'... Yeah - I shouldn't be trying to be funny after midnight ... cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From mark at klomp.org Fri Oct 17 08:53:56 2008 From: mark at klomp.org (Mark Wielaard) Date: Fri, 17 Oct 2008 17:53:56 +0200 Subject: changeset in /hg/icedtea6: * Makefile.am (EXTRA_DIST): Always in... In-Reply-To: <17c6771e0810160123s7f8afa2dwddb97c17e7cd44f@mail.gmail.com> References: <17c6771e0810160123s7f8afa2dwddb97c17e7cd44f@mail.gmail.com> Message-ID: <1224258836.4461.12.camel@hermans.wildebeest.org> Hi Andrew, On Thu, 2008-10-16 at 09:23 +0100, Andrew John Hughes wrote: > 2008/10/15 Mark Wielaard : > > changeset d3bdd63d63d1 in /hg/icedtea6 > > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d3bdd63d63d1 > > description: > > * Makefile.am (EXTRA_DIST): Always include all patches, > > irrespective of any configure options. > > Is there going to be another release? The current tarball is unbuildable for > an ecj build: > > Checking patches/icedtea-ecj.patch > /bin/sh: line 8: > /var/tmp/portage/dev-java/icedtea6-1.3-r1/work/icedtea6-1.3/patches/icedtea-ecj.patch: > No such file or directory > ERROR patch patches/icedtea-ecj.patch FAILED! O, that is bad. This wasn't exactly what the patch was for. It was to make sure the shark specific patches (and any conditionally patch lists) would all be included. I see why this happened. ICEDTEA_ECJ_PATCH was renamed to ICEDTEA_ECJ_PATCHES except in EXTRA_DIST. My patch would also help with that. Creating a new release seems like a good idea, to make sure all files are included. I haven't tried if make distcheck works. That is always a good thing to be sure the dist tar ball is complete. But sometimes hard to get working for the first time. Cheers, Mark From mark at klomp.org Fri Oct 17 09:12:34 2008 From: mark at klomp.org (Mark Wielaard) Date: Fri, 17 Oct 2008 18:12:34 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48F7BCFE.1020705@sun.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> Message-ID: <1224259954.4461.29.camel@hermans.wildebeest.org> Hi Dalibor, On Fri, 2008-10-17 at 00:15 +0200, Dalibor Topic wrote: > Andrew John Hughes wrote: > > Only if you want to regress to a non-Free build, as I presume this is > > the proprietary JDK i.e. > > the exact opposite of OpenJDK. > > > I'm not aware of a way to build OpenJDK on sparc using non-free tools > somewhere in the build process. > Yet. ;) It is coming along nicely: http://weblogs.java.net/blog/editors/archives/2008/10/one_on_one.html http://www.advogato.org/person/twisti/diary.html?start=19 I agree with Andrew. These DLJ bundles seem inappropriate for this list. Not only is it a proprietary fork of what we are all working so hard on to fully liberate. It is distributed under a very controversial license that was explicitly written to divide the community that wants to work collaboratively on free alternatives like GNU Classpath, gcj, cacao, jamvm, kaffe and now icedtea/openjdk. DLJ 2.c says: "you do not combine, configure or distribute the Software to run in conjunction with any additional software that implements the same or similar functionality or APIs as the Software" The DLJ FAQ explains: "you can't use pieces of the JDK configured in conjunction with any alternative technologies to create hybrid implementations, or mingle the code from the JDK with non-JDK components of any kind so that they run together." Which is precisely the core value of IcedTea and friends... So, lets see if we can somehow get the DLJ license fixed and make it possible to intermingle the code of these projects. Then I think it would be much more appropriate for all. Currently however it is of little use to anybody on this list since even configuring or running it together with our projects is disallowed. Cheers, Mark From Joe.Darcy at Sun.COM Fri Oct 17 09:34:34 2008 From: Joe.Darcy at Sun.COM (Joseph D. Darcy) Date: Fri, 17 Oct 2008 09:34:34 -0700 Subject: OpenJDK 6 build 12 source posted (directaudio/alsa backend) In-Reply-To: <1222690203.3529.2.camel@dijkstra.wildebeest.org> References: <48CAB08F.6010407@sun.com> <1221402124.3542.40.camel@dijkstra.wildebeest.org> <48D7F80E.6060802@sun.com> <1222164525.3178.48.camel@dijkstra.wildebeest.org> <48D8EB31.60004@sun.com> <1222376952.3266.94.camel@dijkstra.wildebeest.org> <48DD309F.2000206@sun.com> <48E0B14C.4000107@sun.com> <1222690203.3529.2.camel@dijkstra.wildebeest.org> Message-ID: <48F8BE9A.9080101@sun.com> Mark Wielaard wrote: > Hi Alex, > > On Mon, 2008-09-29 at 14:43 +0400, Alex Menkov wrote: > >> Yes, the plan is to drop JavaSound encumbered code from JDK7 (and add Gervill). >> I still have no all required approvals for integrate Gervill into JDK7 :( >> > > Who are you waiting for to get approval and where is this being > discussed? What are the differences in required approvals needed for 6 > and 7? > > Thanks, > > Mark > > After some double checking with our friends in Sun's legal department, the required approvals for using Gervill in JDK 7 were already granted; so only a small matter of programming stands between Gervill and JDK 7 :-) -Joe From bugzilla-daemon at icedtea.classpath.org Fri Oct 17 10:04:24 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Oct 2008 17:04:24 +0000 Subject: [Bug 215] Java Applet Window cannot be closed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=215 ------- Comment #3 from doko at ubuntu.com 2008-10-17 17:04 ------- Francisco Padilla Garc?a wrote 1 hour ago: > Yes, it does happen with the plugin provided by Sun Microsystems. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Fri Oct 17 10:20:55 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Fri, 17 Oct 2008 17:20:55 +0000 Subject: changeset in /hg/icedtea6: 2008-10-17 Matthias Klose changeset 8ea55953d4df in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=8ea55953d4df description: 2008-10-17 Matthias Klose * IcedTeaPlugin.cc: Don't use open if's in macros; cache getenv() call. diffstat: 2 files changed, 42 insertions(+), 20 deletions(-) ChangeLog | 4 +++ IcedTeaPlugin.cc | 58 +++++++++++++++++++++++++++++++++++------------------- diffs (98 lines): diff -r be5fa1722f4f -r 8ea55953d4df ChangeLog --- a/ChangeLog Fri Oct 17 10:37:37 2008 -0400 +++ b/ChangeLog Fri Oct 17 19:20:38 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-17 Gary Benson + + * IcedTeaPlugin.cc: Don't use open if's in macros; cache getenv() call. + 2008-10-17 Gary Benson PR icedtea/203: diff -r be5fa1722f4f -r 8ea55953d4df IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Fri Oct 17 10:37:37 2008 -0400 +++ b/IcedTeaPlugin.cc Fri Oct 17 19:20:38 2008 +0200 @@ -90,38 +90,55 @@ PRThread* current_thread (); #define ID(object) \ (object == NULL ? (PRUint32) 0 : reinterpret_cast (object)->identifier) +static int plugin_debug = 0; + #if 1 // Debugging macros. #define PLUGIN_DEBUG_0ARG(str) \ - if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ - { \ - printf (str); \ - } + do \ + { \ + if (plugin_debug) \ + { \ + printf (str); \ + } \ + } while (0) #define PLUGIN_DEBUG_1ARG(str, arg1) \ - if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ - { \ - printf (str, arg1); \ - } + do \ + { \ + if (plugin_debug) \ + { \ + printf (str, arg1); \ + } \ + } while (0) #define PLUGIN_DEBUG_2ARG(str, arg1, arg2) \ - if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ - { \ - printf (str, arg1, arg2); \ - } + do \ + { \ + if (plugin_debug) \ + { \ + printf (str, arg1, arg2); \ + } \ + } while (0) #define PLUGIN_DEBUG_3ARG(str, arg1, arg2, arg3) \ - if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ - { \ - printf (str, arg1, arg2, arg3); \ - } + do \ + { \ + if (plugin_debug) \ + { \ + printf (str, arg1, arg2, arg3); \ + } \ + } while (0) #define PLUGIN_DEBUG_4ARG(str, arg1, arg2, arg3, arg4) \ - if (getenv ("ICEDTEAPLUGIN_DEBUG")) \ - { \ - printf (str, arg1, arg2, arg3, arg4); \ - } + do \ + { \ + if (plugin_debug) \ + { \ + printf (str, arg1, arg2, arg3, arg4); \ + } \ + } while (0) #define PLUGIN_DEBUG(message) \ PLUGIN_DEBUG_1ARG ("ICEDTEA PLUGIN: %s\n", message) @@ -1439,6 +1456,7 @@ IcedTeaPluginFactory::IcedTeaPluginFacto out_watch_source(NULL), out_to_appletviewer(NULL) { + plugin_debug = getenv ("ICEDTEAPLUGIN_DEBUG") != NULL; PLUGIN_TRACE_FACTORY (); instances.Init (); references.Init (); From bugzilla-daemon at icedtea.classpath.org Fri Oct 17 10:46:23 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Oct 2008 17:46:23 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #13 from dbhole at redhat.com 2008-10-17 17:46 ------- Fixed in tip -- http://people.ubuntu.com/~doko/java/ColorBlockApplet.html works for me now. Can you please retry? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From David.Herron at Sun.COM Fri Oct 17 11:09:37 2008 From: David.Herron at Sun.COM (David Herron) Date: Fri, 17 Oct 2008 11:09:37 -0700 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <1224259954.4461.29.camel@hermans.wildebeest.org> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> Message-ID: <48F8D4E1.4000604@sun.com> Mark Wielaard wrote: > Hi Dalibor, > > On Fri, 2008-10-17 at 00:15 +0200, Dalibor Topic wrote: > >> Andrew John Hughes wrote: >> >>> Only if you want to regress to a non-Free build, as I presume this is >>> the proprietary JDK i.e. >>> the exact opposite of OpenJDK. >>> >>> >> I'm not aware of a way to build OpenJDK on sparc using non-free tools >> somewhere in the build process. >> Yet. ;) >> > > It is coming along nicely: > http://weblogs.java.net/blog/editors/archives/2008/10/one_on_one.html > http://www.advogato.org/person/twisti/diary.html?start=19 > > I agree with Andrew. These DLJ bundles seem inappropriate for this list. > Not only is it a proprietary fork of what we are all working so hard on > to fully liberate. It is distributed under a very controversial license > that was explicitly written to divide the community that wants to work > collaboratively on free alternatives like GNU Classpath, gcj, cacao, > jamvm, kaffe and now icedtea/openjdk. > > DLJ 2.c says: "you do not combine, configure or distribute the Software > to run in conjunction with any additional software that implements the > same or similar functionality or APIs as the Software" > > The DLJ FAQ explains: "you can't use pieces of the JDK configured in > conjunction with any alternative technologies to create hybrid > implementations, or mingle the code from the JDK with non-JDK components > of any kind so that they run together." > > Which is precisely the core value of IcedTea and friends... > > So, lets see if we can somehow get the DLJ license fixed and make it > possible to intermingle the code of these projects. Then I think it > would be much more appropriate for all. Currently however it is of > little use to anybody on this list since even configuring or running it > together with our projects is disallowed. > > Cheers, > > Mark > I suppose you're requesting that I stop sending the DLJ announcements to this list? As I said yesterday, I've been forwarding DLJ announcements to this list because some of the people here are also packaging DLJ bundles for Linux distros in addition to the OpenJDK derived bundles. If I recall correctly the origination of this list it was in part to discuss packaging of DLJ bundles, not just OpenJDK bundles. But even if I'm remembering the origin correctly, clearly the vast majority of the conversation on this list is focused on the IcedTea team efforts for building OpenJDK. As for fixing the DLJ license it's more likely that we'll simply drop the DLJ project altogether. As the OpenJDK/IcedTea is improving all the time the DLJ has less reason to exist. I think we would all agree that long term the goal is to end the reason for the existence of the DLJ project. Since we mean to end the DLJ project there's little cause to spend the legal effort to rewrite the DLJ license. My reason to work on the DLJ project (since its beginning) was to support broadening the availability of 'Java' on more operating systems, especially on Linux. Clearly the success of the OpenJDK has outstripped the distribution of the DLJ bundles and the OpenJDK is a much better vehicle to achieve the end of broader availability of 'Java'. - David Herron, DLJ Project tech lead (among several other hats) From dbhole at redhat.com Fri Oct 17 11:16:41 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 18:16:41 +0000 Subject: changeset in /hg/icedtea6: - Handle null args to call() (bug# 217). Message-ID: changeset 776f84548857 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=776f84548857 description: - Handle null args to call() (bug# 217). diffstat: 2 files changed, 8 insertions(+) ChangeLog | 5 +++++ plugin/icedtea/netscape/javascript/JSObject.java | 3 +++ diffs (25 lines): diff -r 8ea55953d4df -r 776f84548857 ChangeLog --- a/ChangeLog Fri Oct 17 19:20:38 2008 +0200 +++ b/ChangeLog Fri Oct 17 13:45:31 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-17 Matthias Klose + + * plugin/icedtea/netscape/javascript/JSObject.java: Handle null args to + call() (bug# 217). + 2008-10-17 Matthias Klose * IcedTeaPlugin.cc: Don't use open if's in macros; cache getenv() call. diff -r 8ea55953d4df -r 776f84548857 plugin/icedtea/netscape/javascript/JSObject.java --- a/plugin/icedtea/netscape/javascript/JSObject.java Fri Oct 17 19:20:38 2008 +0200 +++ b/plugin/icedtea/netscape/javascript/JSObject.java Fri Oct 17 13:45:31 2008 -0400 @@ -186,6 +186,9 @@ public final class JSObject { */ public Object call(String methodName, Object args[]) { + if (args == null) + args = new Object[0]; + System.err.print ("JSObject.call " + methodName); for (int i = 0; i < args.length; i++) System.err.print (" " + args[i]); From Dalibor.Topic at Sun.COM Fri Oct 17 11:43:56 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Fri, 17 Oct 2008 20:43:56 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <1224259954.4461.29.camel@hermans.wildebeest.org> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> Message-ID: <48F8DCEC.8060108@sun.com> Mark Wielaard wrote: > It is coming along nicely: > http://weblogs.java.net/blog/editors/archives/2008/10/one_on_one.html > http://www.advogato.org/person/twisti/diary.html?start=19 > Yep, saw that. Not on sparc-solaris, though, but I'm sure it's only a matter of time, once Christian sets his sights on it. > So, lets see if we can somehow get the DLJ license fixed and make it > possible to intermingle the code of these projects. It's hard to intermingle non-free code with GPLd code, if that's what you are asking for. cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From dbhole at redhat.com Fri Oct 17 14:08:50 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 21:08:50 +0000 Subject: changeset in /hg/icedtea6: - Re-encode <, > and & characters in ... Message-ID: changeset c259572f3e31 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=c259572f3e31 description: - Re-encode <, > and & characters in applet params diffstat: 2 files changed, 10 insertions(+) ChangeLog | 5 +++++ plugin/icedtea/sun/applet/PluginAppletViewer.java | 5 +++++ diffs (27 lines): diff -r 776f84548857 -r c259572f3e31 ChangeLog --- a/ChangeLog Fri Oct 17 13:45:31 2008 -0400 +++ b/ChangeLog Fri Oct 17 17:08:45 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-17 Deepak Bhole + + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Re-encode <, > and & + characters in applet params. + 2008-10-17 Deepak Bhole * plugin/icedtea/netscape/javascript/JSObject.java: Handle null args to diff -r 776f84548857 -r c259572f3e31 plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Fri Oct 17 13:45:31 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Fri Oct 17 17:08:45 2008 -0400 @@ -1390,6 +1390,11 @@ import sun.misc.Ref; if (val == null) { statusMsgStream.println(requiresNameWarning); } else if (atts != null) { + // to prevent headaches, c++ side encodes &, < and > + // decode them back + val = val.replace(">", ">"); + val = val.replace("<", "<"); + val = val.replace("&", "&"); atts.put(att.toLowerCase(), val); } else { statusMsgStream.println(paramOutsideWarning); From dbhole at redhat.com Fri Oct 17 14:38:28 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Oct 2008 17:38:28 -0400 Subject: Liveconnect plugin is NOW the default in IcedTea6 In-Reply-To: <20081017082329.GB4836@redhat.com> References: <20081017082009.GA4836@redhat.com> <20081017082329.GB4836@redhat.com> Message-ID: <20081017213828.GL22050@redhat.com> * Deepak Bhole [2008-10-17 04:24]: > > Oh for the love of! ... 4 times I read the email, telling myself "it is > 4:20 am, there may be mistakes" .. and not once did I check the subject > line. Bah! > > Now.. I meant now, "Liveconnect plugin is NOW the default in IcedTea6" > > Sorry for this spam message, but it had to be corrected :) > > Deepak > > * Deepak Bhole [2008-10-17 04:20]: > > > > Hi Everyone, > > > > Yes you read that subject right, the moment is finally here! I have just > > completed some final touches to the new plugin, and have made > > it the default for IcedTea 6. > > > > Functionality wise, everything should be more or less complete now. In terms of > > stability, the plugin is fairly stable, but I have seen cases where it takes down > > the browser, specially on sites with 5-8 applets on the same page. > > > > I wish to dedicate the next week to bug fixing and code cleanup, and to that > > end, any testing would be greatly appreciated. Instructions on how to > > build/try it out and specified at the end. So if you have a favourite site > > that never worked with IcedTea before and you wanted to blame someone till > > they got it working, this is your chance :) > > > > I'd also like to mention a special thanks to Thomas Fitzsimmons for the > > initial codebase, and his continued helpful insight on the plugin's > > development. > > > > Known issues: > > 1. Yahoo games does not work. This appears to be a very complex issue, and > > the obsfucation of data passed between server/client makes it very hard > > to figure out the problem. > > Oooooo it feels so nice to say this: Yahoo! Games should now be working with the tip :) Panel resizing is still a bit messed up (as usual, resizing window should take care of it though) Deepak > > 2. Initial panel size is incorrect if the dimensions as expressed as a % > > (resizing the window fixes it) > > > > 3. Sites known not work at the moment: > > http://www.chessgames.com (applet works, but there is a drawing issue) > > http://www.goes.noaa.gov/HURRLOOPS/huirloop.html (hangs) > > Any WebEx app (this works, but a browser restart is needed for first use) > > > > 4. If you build IcedTea yourself, make sure you have the right cacerts in > > jre/lib/security/ otherwise bad things happen (nothing bad security wise.. > > more like vm crash/exit when trying to load jars from https). The right > > cacerts can be found in the jre/lib/security/ directory of any existing > > IcedTea releases. > > > > 5. If something kills the jvm, it cannot respawn until the browser is > > restarted -- this is a bad one and I intend to fix it asap now that other > > priority items are done. > > > > Building + using: > > To build it just clone the icedtea6 repo and build: > > > > 1. hg clone http://icedtea.classpath.org/hg/icedtea6 > > 2. cd icedtea6 > > 3. aclocal; autoconf; automake --add-missing > > 4. ./configure > > 5. make > > > > Once this completes, your JDK/JRE should be in > > openjdk/control/build/linux- > > > > Next, create a link (needs to be a link, copying will not work) to > > [jre/]lib/i386/IcedTeaPlugin.so either in $MOZ_LIB_DIR/mozilla/plugins > > (MOZ_LIB_DIR=/usr/lib by default on i386) or in ~/.mozilla/plugins/ > > > > If there is an existing link to another java plugin in either of those > > directories, it must be moved out. > > > > Finally, confirm that the new plugin is seen by firefox via about:plugins, > > and then load up your favourite site! > > > > By default the plugin does not output much, but if you set the > > ICEDTEAPLUGIN_DEBUG environment variable, it will spew lots (and I mean > > LOTS) of debug info. Additionally, it will also redirect stderr/stdout > > from java side to /tmp/java.std* files. > > > > Well, that is all I can think of for now. Let me know if there are any > > problems. > > > > Cheers, > > Deepak > > From doko at ubuntu.com Sat Oct 18 02:26:41 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 18 Oct 2008 09:26:41 +0000 Subject: changeset in /hg/icedtea6: 2008-10-18 Matthias Klose changeset 3e76a22e6d6f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=3e76a22e6d6f description: 2008-10-18 Matthias Klose * Makefile.am (stamps/patch.stamp): Fail if patches don't apply, call $(HG) only if it exists. diffstat: 2 files changed, 7 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ Makefile.am | 4 ++-- diffs (27 lines): diff -r c259572f3e31 -r 3e76a22e6d6f ChangeLog --- a/ChangeLog Fri Oct 17 17:08:45 2008 -0400 +++ b/ChangeLog Sat Oct 18 11:26:20 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-17 Deepak Bhole + + * Makefile.am (stamps/patch.stamp): Fail if patches don't apply, + call $(HG) only if it exists. + 2008-10-17 Deepak Bhole * plugin/icedtea/sun/applet/PluginAppletViewer.java: Re-encode <, > and & diff -r c259572f3e31 -r 3e76a22e6d6f Makefile.am --- a/Makefile.am Fri Oct 17 17:08:45 2008 -0400 +++ b/Makefile.am Sat Oct 18 11:26:20 2008 +0200 @@ -628,9 +628,9 @@ stamps/patch.stamp: stamps/patch-fsg.sta if ! test x$${all_patches_ok} = "xyes"; then \ echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ - false; \ + exit 2; \ fi ; \ - if [ -e $(abs_top_srcdir)/.hg ]; then \ + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ revision="-r`(cd $(srcdir); $(HG) tip --template '{rev}')`" ; \ fi ; \ icedtea_version="$(PACKAGE_VERSION)$${revision}" ; \ From doko at ubuntu.com Sat Oct 18 07:17:04 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 18 Oct 2008 14:17:04 +0000 Subject: changeset in /hg/icedtea6: 2008-10-18 Matthias Klose changeset a4b3a6f8732c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a4b3a6f8732c description: 2008-10-18 Matthias Klose * Makefile.am (stamps/patch{,-fsg,-ecj}.stamp): Fail if patches don't apply. diffstat: 2 files changed, 4 insertions(+), 4 deletions(-) ChangeLog | 4 ++-- Makefile.am | 4 ++-- diffs (34 lines): diff -r 3e76a22e6d6f -r a4b3a6f8732c ChangeLog --- a/ChangeLog Sat Oct 18 11:26:20 2008 +0200 +++ b/ChangeLog Sat Oct 18 12:09:17 2008 +0200 @@ -1,7 +1,7 @@ 2008-10-18 Matthias Klose - * Makefile.am (stamps/patch.stamp): Fail if patches don't apply, - call $(HG) only if it exists. + * Makefile.am (stamps/patch{,-fsg,-ecj}.stamp): Fail if patches don't + apply, call $(HG) only if it exists. 2008-10-17 Deepak Bhole diff -r 3e76a22e6d6f -r a4b3a6f8732c Makefile.am --- a/Makefile.am Sat Oct 18 11:26:20 2008 +0200 +++ b/Makefile.am Sat Oct 18 12:09:17 2008 +0200 @@ -692,7 +692,7 @@ stamps/patch-fsg.stamp: stamps/extract.s if ! test x$${all_patches_ok} = "xyes"; then \ echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ - false; \ + exit 2; \ fi ; clean-patch-fsg: @@ -786,7 +786,7 @@ stamps/patch-ecj.stamp: stamps/extract-e if ! test x$${all_patches_ok} = "xyes"; then \ echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ - false; \ + exit 2; \ fi clean-patch-ecj: From doko at ubuntu.com Sat Oct 18 07:17:05 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 18 Oct 2008 14:17:05 +0000 Subject: changeset in /hg/icedtea6: 2008-10-18 Matthias Klose changeset cd0b1ad5b02c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=cd0b1ad5b02c description: 2008-10-18 Matthias Klose * Makefile.am: Write a summary of the jtreg test results. diffstat: 2 files changed, 20 insertions(+), 8 deletions(-) ChangeLog | 4 ++++ Makefile.am | 24 ++++++++++++++++-------- diffs (62 lines): diff -r a4b3a6f8732c -r cd0b1ad5b02c ChangeLog --- a/ChangeLog Sat Oct 18 12:09:17 2008 +0200 +++ b/ChangeLog Sat Oct 18 16:16:41 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-18 Matthias Klose + + * Makefile.am: Write a summary of the jtreg test results. + 2008-10-18 Matthias Klose * Makefile.am (stamps/patch{,-fsg,-ecj}.stamp): Fail if patches don't diff -r a4b3a6f8732c -r cd0b1ad5b02c Makefile.am --- a/Makefile.am Sat Oct 18 12:09:17 2008 +0200 +++ b/Makefile.am Sat Oct 18 16:16:41 2008 +0200 @@ -1539,31 +1539,39 @@ clean-jtreg: rm -f test/jtreg.jar rm -f stamps/jtreg.stamp -check-hotspot: jtreg +check-hotspot: stamps/jtreg.stamp mkdir -p test/hotspot/JTwork test/hotspot/JTreport $(ICEDTEA_BOOT_DIR)/bin/java -jar test/jtreg.jar -v1 -a -ignore:quiet \ -w:test/hotspot/JTwork -r:test/hotspot/JTreport \ -jdk:`pwd`/$(BUILD_OUTPUT_DIR)/j2sdk-image \ - `pwd`/openjdk/hotspot/test - -check-langtools: jtreg + `pwd`/openjdk/hotspot/test \ + | tee test/$@.log + +check-langtools: stamps/jtreg.stamp mkdir -p test/langtools/JTwork test/langtools/JTreport $(ICEDTEA_BOOT_DIR)/bin/java -jar test/jtreg.jar -v1 -a -ignore:quiet \ -w:test/langtools/JTwork -r:test/langtools/JTreport \ -jdk:`pwd`/$(BUILD_OUTPUT_DIR)/j2sdk-image \ - `pwd`/openjdk/langtools/test - -check-jdk: jtreg + `pwd`/openjdk/langtools/test \ + | tee test/$@.log + +check-jdk: stamps/jtreg.stamp mkdir -p test/jdk/JTwork test/jdk/JTreport $(ICEDTEA_BOOT_DIR)/bin/java -jar test/jtreg.jar -v1 -a -ignore:quiet \ -w:test/jdk/JTwork -r:test/jdk/JTreport \ -jdk:`pwd`/$(BUILD_OUTPUT_DIR)/j2sdk-image \ - `pwd`/openjdk/jdk/test + `pwd`/openjdk/jdk/test \ + | tee test/$@.log clean-jtreg-reports: rm -rf test/hotspot test/langtools test/jdk + rm -f test/check-*.log test/jtreg-summary.log jtregcheck: jtreg check-hotspot check-langtools check-jdk + for i in hotspot langtools jdk; do \ + echo "--------------- jtreg console summary for $$i ---------------"; \ + egrep -v '^(Passed:|Directory)' test/check-$$i.log; \ + done | tee test/jtreg-summary.log check-local: jtregcheck From bugzilla-daemon at icedtea.classpath.org Sat Oct 18 07:39:45 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 18 Oct 2008 14:39:45 +0000 Subject: [Bug 220] New: missing netscape/javascript classes if configuring --with-alt-jar=/usr/bin/fastjar Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=220 Summary: missing netscape/javascript classes if configuring -- with-alt-jar=/usr/bin/fastjar Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com These classes are missing in the final rt.jar, if configured --with-alt-jar=/usr/bin/fastjar. use fastjar-0.97 to reproduce this. older unpatched fastjar versions have other bugs. --- rt-jar.list 2008-10-17 07:50:22.000000000 +0000 +++ rt-fastjar.list 2008-10-17 07:50:31.000000000 +0000 @@ -11008,11 +11008,6 @@ net/sourceforge/jnlp/util/WeakList.class net/sourceforge/nanoxml/XMLElement.class net/sourceforge/nanoxml/XMLParseException.class -netscape/javascript/JSException.class -netscape/javascript/JSObject.class -netscape/javascript/JSProxy.class -netscape/javascript/JSRunnable.class -netscape/javascript/JSUtil.class org/ietf/jgss/ChannelBinding.class org/ietf/jgss/GSSContext.class org/ietf/jgss/GSSCredential.class -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 18 07:41:34 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 18 Oct 2008 14:41:34 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 doko at ubuntu.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution| |FIXED ------- Comment #14 from doko at ubuntu.com 2008-10-18 14:41 ------- fixed now. there's one glitch. Clicking the first time on a button doesn't change the color, only with the second click the color is changed (but then it is changed two times). -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 18 07:43:20 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 18 Oct 2008 14:43:20 +0000 Subject: [Bug 221] New: javac.in and javah.in eat up white space arguments Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=221 Summary: javac.in and javah.in eat up white space arguments Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com argument handling in these binaries is destructive. seen in stage1 when something like -bootclasspath '' is passed. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 18 08:55:18 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 18 Oct 2008 15:55:18 +0000 Subject: [Bug 222] New: javaws says: Changing the SecurityManager is not allowed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=222 Summary: javaws says: Changing the SecurityManager is not allowed Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: blocker Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: a.efremov at javasmith.org Hello! I tried to play with .java.policy file but useless. javaws doesn't work.It seems to ignore java.security.manager property. Take a look at "call privileged method: getCodeBase result: null" my .java.policy file grant codeBase "http://www.topcoder.com/contest/arena" { permission java.security.AllPermission; }; Package: java-1.6.0-openjdk-1.6.0.0-0.18.b09.fc9.x86_64 /usr/bin/javaws -verbose -Djava.security.manager=doesnt.work http://www.topcoder.com/contest/arena/ContestAppletProd.jnlp JNLP file location: http://www.topcoder.com/contest/arena/ContestAppletProd.jnlp call privileged method: getCodeBase result: null Status: CONNECT STARTED +(CONNECT STARTED) @ /contest/arena/ContestAppletProd.jnlp Status: CONNECT DOWNLOAD STARTED +(DOWNLOAD) @ /contest/arena/ContestAppletProd.jnlp Status: CONNECTING DOWNLOAD STARTED +(CONNECTING) -(CONNECT) @ /contest/arena/ContestAppletProd.jnlp isCurrent: http://www.topcoder.com/contest/arena/ContestAppletProd.jnlp = false Status: CONNECTED DOWNLOAD STARTED +(CONNECTED) -(CONNECTING) @ /contest/arena/ContestAppletProd.jnlp Status: CONNECTED DOWNLOADING STARTED +(DOWNLOADING) -(DOWNLOAD) @ /contest/arena/ContestAppletProd.jnlp Status: CONNECTED DOWNLOADED STARTED +(DOWNLOADED) -(DOWNLOADING) @ /contest/arena/ContestAppletProd.jnlp New classloader: http://www.topcoder.com/contest/arena/ContestAppletProd.jnlp Permission added: (java.io.FilePermission /tmp/cache/http/www.topcoder.com/contest/classes/ContestApplet.jar read) Status: STARTED +(STARTED) @ /contest/classes/ContestApplet.jar Status: CONNECT STARTED +(CONNECT) @ /contest/classes/ContestApplet.jar Status: CONNECT DOWNLOAD STARTED +(DOWNLOAD) @ /contest/classes/ContestApplet.jar Status: CONNECTING DOWNLOAD STARTED +(CONNECTING) -(CONNECT) @ /contest/classes/ContestApplet.jar isCurrent: http://www.topcoder.com/contest/classes/ContestApplet.jar = false Status: CONNECTED DOWNLOAD STARTED +(CONNECTED) -(CONNECTING) @ /contest/classes/ContestApplet.jar Status: CONNECTED DOWNLOADING STARTED +(DOWNLOADING) -(DOWNLOAD) @ /contest/classes/ContestApplet.jar Status: CONNECTED DOWNLOADED STARTED +(DOWNLOADED) -(DOWNLOADING) @ /contest/classes/ContestApplet.jar Activate jar: file:/tmp/cache/http/www.topcoder.com/contest/classes/ContestApplet.jar java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:347) at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:581) Caused by: java.lang.SecurityException: Changing the SecurityManager is not allowed. at net.sourceforge.jnlp.runtime.JNLPSecurityManager.checkPermission(JNLPSecurityManager.java:252) at java.lang.System.setSecurityManager0(System.java:290) at java.lang.System.setSecurityManager(System.java:281) at com.topcoder.client.contestApplet.ContestApplet.(Unknown Source) at com.topcoder.client.contestApplet.runner.generic.main(Unknown Source) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 18 09:48:11 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 18 Oct 2008 16:48:11 +0000 Subject: [Bug 217] LiveConnect applet to JS communication does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=217 ------- Comment #15 from dbhole at redhat.com 2008-10-18 16:48 ------- There is a 3-4 second delay for the first action to happen, as mozilla builds a table of java objects initially. How long did you wait after the first click? One way to verify that it was slow (as opposed to not working) is to run with the ICEDTEAPLUGIN_DEBUG variable set. This will slow things down a lot, but if it's outputting after first click, it means that it is processing... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From matthew.flaschen at gatech.edu Sat Oct 18 12:09:59 2008 From: matthew.flaschen at gatech.edu (Matthew Flaschen) Date: Sat, 18 Oct 2008 15:09:59 -0400 Subject: changeset in /hg/icedtea6: - Replace TCP/IP model with fifo pipes In-Reply-To: References: Message-ID: <48FA3487.3040703@gatech.edu> Deepak Bhole wrote: > changeset 2262032cc2ae in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2262032cc2ae > description: > - Replace TCP/IP model with fifo pipes > - Improved performance > - Centralize debugging, subject to environment variable ICEDTEAPLUGIN_DEBUG > - Improved security by using per context privileges, rather than consulting > security manager. > - Add code for better panel resizing. In the below code, you're dividing an int (atts.get("height/widthPercentage")) by a larger or equal int, which is always going to return 0 or 1. I think proposedHeightFactor and proposedWidthFactor should be doubles, and 100 should be 100.0. Matt Flaschen ------------------------------------------------------------------------------ if (atts.get("heightPercentage") != null) { proposedHeightFactor = (Integer) atts.get("heightPercentage")/100; } if (((String) atts.get("width")).endsWith("%")) { proposedWidthFactor = (Integer) atts.get("widthPercentage")/100; } From dbhole at redhat.com Sat Oct 18 13:10:30 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sat, 18 Oct 2008 16:10:30 -0400 Subject: changeset in /hg/icedtea6: - Replace TCP/IP model with fifo pipes In-Reply-To: <48FA3487.3040703@gatech.edu> References: <48FA3487.3040703@gatech.edu> Message-ID: <20081018201030.GA28721@redhat.com> * Matthew Flaschen [2008-10-18 15:10]: > Deepak Bhole wrote: > > changeset 2262032cc2ae in /hg/icedtea6 > > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2262032cc2ae > > description: > > - Replace TCP/IP model with fifo pipes > > - Improved performance > > - Centralize debugging, subject to environment variable ICEDTEAPLUGIN_DEBUG > > - Improved security by using per context privileges, rather than consulting > > security manager. > > - Add code for better panel resizing. > > In the below code, you're dividing an int > (atts.get("height/widthPercentage")) by a larger or equal int, which is > always going to return 0 or 1. > > I think proposedHeightFactor and proposedWidthFactor should be doubles, > and 100 should be 100.0. > > Matt Flaschen > > ------------------------------------------------------------------------------ > > if (atts.get("heightPercentage") != null) { > proposedHeightFactor = (Integer) atts.get("heightPercentage")/100; > } > > if (((String) atts.get("width")).endsWith("%")) { > proposedWidthFactor = (Integer) atts.get("widthPercentage")/100; > } Doh! Can't believe I missed that. That part is still WIP, but it was a bug nonetheless. It is now fixed, and I tested it to make sure. Nice catch, and thanks! Deepak From dbhole at redhat.com Sat Oct 18 13:10:50 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sat, 18 Oct 2008 20:10:50 +0000 Subject: changeset in /hg/icedtea6: Fix bug noticed by Matthew Flaschen, ... Message-ID: changeset dafd805c02be in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=dafd805c02be description: Fix bug noticed by Matthew Flaschen, applet size factors are now doubles instead of ints. diffstat: 2 files changed, 13 insertions(+), 8 deletions(-) ChangeLog | 5 +++++ plugin/icedtea/sun/applet/PluginAppletViewer.java | 16 ++++++++-------- diffs (57 lines): diff -r cd0b1ad5b02c -r dafd805c02be ChangeLog --- a/ChangeLog Sat Oct 18 16:16:41 2008 +0200 +++ b/ChangeLog Sat Oct 18 16:08:37 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-18 Matthias Klose + + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Make applet size + factors doubles instead of ints. + 2008-10-18 Matthias Klose * Makefile.am: Write a summary of the jtreg test results. diff -r cd0b1ad5b02c -r dafd805c02be plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Sat Oct 18 16:16:41 2008 +0200 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Sat Oct 18 16:08:37 2008 -0400 @@ -134,8 +134,8 @@ import sun.misc.Ref; private static PluginCallRequestFactory requestFactory; - private int proposedHeightFactor; - private int proposedWidthFactor; + private double proposedHeightFactor; + private double proposedWidthFactor; /** * Null constructor to allow instantiation via newInstance() @@ -159,15 +159,15 @@ import sun.misc.Ref; // we intercept height and width specifications here because - proposedHeightFactor = 1; - proposedWidthFactor = 1; + proposedHeightFactor = 1.0; + proposedWidthFactor = 1.0; if (atts.get("heightPercentage") != null) { - proposedHeightFactor = (Integer) atts.get("heightPercentage")/100; + proposedHeightFactor = (Integer) atts.get("heightPercentage")/100.0; } if (((String) atts.get("width")).endsWith("%")) { - proposedWidthFactor = (Integer) atts.get("widthPercentage")/100; + proposedWidthFactor = (Integer) atts.get("widthPercentage")/100.0; } AccessController.doPrivileged(new PrivilegedAction() { @@ -390,8 +390,8 @@ import sun.misc.Ref; String[] dimMsg = message.split(" "); // 0 => width, 1=> width_value, 2 => height, 3=> height_value - int height = proposedHeightFactor*Integer.parseInt(dimMsg[3]); - int width = proposedWidthFactor*Integer.parseInt(dimMsg[1]); + int height = (int) (proposedHeightFactor*Integer.parseInt(dimMsg[3])); + int width = (int) (proposedWidthFactor*Integer.parseInt(dimMsg[1])); if (panel instanceof NetxPanel) ((NetxPanel) panel).updateSizeInAtts(height, width); From gnu_andrew at member.fsf.org Sat Oct 18 16:48:46 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 00:48:46 +0100 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48F8D4E1.4000604@sun.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> <48F8D4E1.4000604@sun.com> Message-ID: <17c6771e0810181648j704a0ed7ud6baf641b8abe5df@mail.gmail.com> 2008/10/17 David Herron : > Mark Wielaard wrote: >> >> Hi Dalibor, >> >> On Fri, 2008-10-17 at 00:15 +0200, Dalibor Topic wrote: >> >>> >>> Andrew John Hughes wrote: >>> >>>> >>>> Only if you want to regress to a non-Free build, as I presume this is >>>> the proprietary JDK i.e. >>>> the exact opposite of OpenJDK. >>>> >>> >>> I'm not aware of a way to build OpenJDK on sparc using non-free tools >>> somewhere in the build process. >>> Yet. ;) >>> >> >> It is coming along nicely: >> http://weblogs.java.net/blog/editors/archives/2008/10/one_on_one.html >> http://www.advogato.org/person/twisti/diary.html?start=19 >> >> I agree with Andrew. These DLJ bundles seem inappropriate for this list. >> Not only is it a proprietary fork of what we are all working so hard on >> to fully liberate. It is distributed under a very controversial license >> that was explicitly written to divide the community that wants to work >> collaboratively on free alternatives like GNU Classpath, gcj, cacao, >> jamvm, kaffe and now icedtea/openjdk. >> >> DLJ 2.c says: "you do not combine, configure or distribute the Software >> to run in conjunction with any additional software that implements the >> same or similar functionality or APIs as the Software" >> >> The DLJ FAQ explains: "you can't use pieces of the JDK configured in >> conjunction with any alternative technologies to create hybrid >> implementations, or mingle the code from the JDK with non-JDK components >> of any kind so that they run together." >> >> Which is precisely the core value of IcedTea and friends... >> >> So, lets see if we can somehow get the DLJ license fixed and make it >> possible to intermingle the code of these projects. Then I think it >> would be much more appropriate for all. Currently however it is of >> little use to anybody on this list since even configuring or running it >> together with our projects is disallowed. >> >> Cheers, >> >> Mark >> > > I suppose you're requesting that I stop sending the DLJ announcements to > this list? > > As I said yesterday, I've been forwarding DLJ announcements to this list > because some of the people here are also packaging DLJ bundles for Linux > distros in addition to the OpenJDK derived bundles. If I recall correctly > the origination of this list it was in part to discuss packaging of DLJ > bundles, not just OpenJDK bundles. But even if I'm remembering the origin > correctly, clearly the vast majority of the conversation on this list is > focused on the IcedTea team efforts for building OpenJDK. > > As for fixing the DLJ license it's more likely that we'll simply drop the > DLJ project altogether. As the OpenJDK/IcedTea is improving all the time > the DLJ has less reason to exist. I think we would all agree that long term > the goal is to end the reason for the existence of the DLJ project. Since > we mean to end the DLJ project there's little cause to spend the legal > effort to rewrite the DLJ license. > > My reason to work on the DLJ project (since its beginning) was to support > broadening the availability of 'Java' on more operating systems, especially > on Linux. Clearly the success of the OpenJDK has outstripped the > distribution of the DLJ bundles and the OpenJDK is a much better vehicle to > achieve the end of broader availability of 'Java'. > - David Herron, > DLJ Project tech lead (among several other hats) > > > I'm not aware of the origins of this list, but I've only ever known it as the IcedTea list since I joined it sometime last June-July. The 'openjdk' suffix was what mainly promoted my initial comment as I don't see how this is remotely related. I've never used a DLJ bundle and don't plan to, but I'm very interested in OpenJDK. I would have thought there were already appropriate mailing lists for those with such interests, and clearly this was where the mail was forwarded from anyway. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From langel at redhat.com Sat Oct 18 21:23:12 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:12 +0000 Subject: changeset in /hg/icedtea: 2008-09-10 Lillian Angel changeset aacc3e8a8e16 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=aacc3e8a8e16 description: 2008-09-10 Lillian Angel * patches/icedtea-lc_ctype.patch: New patch to fix this issue: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=497666 * Makefile.am: Added patch to list. diffstat: 3 files changed, 19 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ Makefile.am | 3 ++- patches/icedtea-lc_ctype.patch | 11 +++++++++++ diffs (41 lines): diff -r 4c642bbb2285 -r aacc3e8a8e16 ChangeLog --- a/ChangeLog Fri Sep 05 12:11:57 2008 -0400 +++ b/ChangeLog Wed Sep 10 13:37:08 2008 -0400 @@ -1,3 +1,9 @@ 2008-08-26 Deepak Bhole + + * patches/icedtea-lc_ctype.patch: New patch to fix this issue: + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=497666 + * Makefile.am: Added patch to list. + 2008-08-26 Deepak Bhole * IcedTeaPlugin.cc: Support for multiple simultaneous applet load. diff -r 4c642bbb2285 -r aacc3e8a8e16 Makefile.am --- a/Makefile.am Fri Sep 05 12:11:57 2008 -0400 +++ b/Makefile.am Wed Sep 10 13:37:08 2008 -0400 @@ -507,7 +507,8 @@ ICEDTEA_PATCHES = \ patches/icedtea-clean-crypto.patch \ $(SHARK_PATCH) \ $(GCC_PATCH) \ - patches/icedtea-arch.patch + patches/icedtea-arch.patch \ + patches/icedtea-lc_ctype.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 4c642bbb2285 -r aacc3e8a8e16 patches/icedtea-lc_ctype.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-lc_ctype.patch Wed Sep 10 13:37:08 2008 -0400 @@ -0,0 +1,11 @@ +--- java_props_md.c 2008-09-10 12:36:05.000000000 -0400 ++++ openjdk/jdk/src/solaris/native/java/lang/java_props_md.c 2008-09-10 12:36:13.000000000 -0400 +@@ -211,7 +211,7 @@ + * _.@ + * , , and are optional. + */ +- char temp[64]; ++ char temp[strlen(lc)]; + char *language = NULL, *country = NULL, *variant = NULL, + *encoding = NULL; + char *std_language = NULL, *std_country = NULL, *std_variant = NULL, From mark at klomp.org Sat Oct 18 21:23:12 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:12 +0000 Subject: changeset in /hg/icedtea: Updated Gervill from upstream CVS (Sep... Message-ID: changeset 8b0e11483252 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8b0e11483252 description: Updated Gervill from upstream CVS (September 1, 2008) 2008-09-11 Mark Wielaard * patches/icedtea-gervill.patch: Updated patch for old tests. * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/*: New Gervill files (sept 1). - Add: More JTreg tests added: EmergencySoundbank SoftFilter AudioFloatConverter.ToFloatArray (improved) - Change: SoftReverb optimized, about 2 times faster. - Fix: ModelByteBuffer.skip called super.skip instead to call to RandomAccessFile directly. JTreg tests added: ModelByteBuffer/RandomFileInputStream/*.java - Fix: ModelByteBuffer.len was being modified in inner class RandomFileInputStream. The variable was made final and RandomFileInputStream.read methods where fixed. - Fix: ArrayOutOfException error in ModelInstrument.getKeys(), Keys array was to small, it couldn't hold all possible midi notes (0..127). Version 1.0.1 - Fix: Created dummy SourceDataline so that following jtreg test can be tested without using a real Audio Device SourceDataLine. javax/sound/midi/Gervill/SoftAudioSynthesizer/Open.java javax/sound/midi/Gervill/SoftSynthesizer/GetLatency.java javax/sound/midi/Gervill/SoftSynthesizer/GetReceiver.java javax/sound/midi/Gervill/SoftSynthesizer/GetReceiver2.java javax/sound/midi/Gervill/SoftSynthesizer/GetReceivers.java javax/sound/midi/Gervill/SoftSynthesizer/GetTransmitter.java javax/sound/midi/Gervill/SoftSynthesizer/GetTransmitters.java javax/sound/midi/Gervill/SoftSynthesizer/ImplicitOpenClose.java javax/sound/midi/Gervill/SoftSynthesizer/Open.java - Fix: Make open SoftSynthesizer garbage-collectable when user don't have reference to it and it is not producing any sound. - Fix: SoftReverb silent detection improved. - Added: SoftSynthesizer.getPropertyInfo returns current properties values if it is open. - Fix: Restrict input values in SoftChannel to 7 and 14 bit in these methods: noteOn noteOff setPolyPressure setChannelPressure controlChange programChange(program) programChange(bank, program) setPitchBend - Fix: Store generated soundbank to disk for faster future use. diffstat: 21 files changed, 727 insertions(+), 218 deletions(-) ChangeLog | 6 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/CHANGES.txt | 44 + overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelByteBuffer.java | 26 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelInstrument.java | 4 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftChannel.java | 52 + overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftCubicResampler.java | 2 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMainMixer.java | 51 + overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMixingMixer.java | 56 + overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftReverb.java | 341 +++++----- overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftSynthesizer.java | 220 +++++- overlays/openjdk/jdk/test/com/sun/media/sound/AudioFloatConverter/ToFloatArray.java | 29 overlays/openjdk/jdk/test/com/sun/media/sound/SoftAudioSynthesizer/Open.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetLatency.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceiver.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceiver2.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceivers.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetTransmitter.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetTransmitters.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/ImplicitOpenClose.java | 6 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/Open.java | 6 patches/icedtea-gervill.patch | 88 ++ diffs (truncated from 1627 to 500 lines): diff -r aacc3e8a8e16 -r 8b0e11483252 ChangeLog --- a/ChangeLog Wed Sep 10 13:37:08 2008 -0400 +++ b/ChangeLog Thu Sep 11 20:47:50 2008 +0200 @@ -1,3 +1,9 @@ 2008-09-10 Lillian Angel + + * patches/icedtea-gervill.patch: Updated patch for old tests. + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/*: + New Gervill files (sept 1). + 2008-09-10 Lillian Angel * patches/icedtea-lc_ctype.patch: New patch to fix this issue: diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/CHANGES.txt --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/CHANGES.txt Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/CHANGES.txt Thu Sep 11 20:47:50 2008 +0200 @@ -1,3 +1,47 @@ + - Add: More JTreg tests added: + EmergencySoundbank + SoftFilter + AudioFloatConverter.ToFloatArray (improved) + - Change: SoftReverb optimized, about 2 times faster. + - Fix: ModelByteBuffer.skip called super.skip + instead to call to RandomAccessFile directly. + JTreg tests added: ModelByteBuffer/RandomFileInputStream/*.java + - Fix: ModelByteBuffer.len was being modified in inner + class RandomFileInputStream. The variable was made final + and RandomFileInputStream.read methods where fixed. + - Fix: ArrayOutOfException error in ModelInstrument.getKeys(), + Keys array was to small, it couldn't + hold all possible midi notes (0..127). + +Version 1.0.1 + - Fix: Created dummy SourceDataline so that following + jtreg test can be tested without using + a real Audio Device SourceDataLine. + javax/sound/midi/Gervill/SoftAudioSynthesizer/Open.java + javax/sound/midi/Gervill/SoftSynthesizer/GetLatency.java + javax/sound/midi/Gervill/SoftSynthesizer/GetReceiver.java + javax/sound/midi/Gervill/SoftSynthesizer/GetReceiver2.java + javax/sound/midi/Gervill/SoftSynthesizer/GetReceivers.java + javax/sound/midi/Gervill/SoftSynthesizer/GetTransmitter.java + javax/sound/midi/Gervill/SoftSynthesizer/GetTransmitters.java + javax/sound/midi/Gervill/SoftSynthesizer/ImplicitOpenClose.java + javax/sound/midi/Gervill/SoftSynthesizer/Open.java + - Fix: Make open SoftSynthesizer garbage-collectable + when user don't have reference to it and it is not + producing any sound. + - Fix: SoftReverb silent detection improved. + - Added: SoftSynthesizer.getPropertyInfo returns + current properties values if it is open. + - Fix: Restrict input values in SoftChannel to 7 and 14 bit in these methods: + noteOn + noteOff + setPolyPressure + setChannelPressure + controlChange + programChange(program) + programChange(bank, program) + setPitchBend + - Fix: Store generated soundbank to disk for faster future use. - Cleanup: Make inner classes static AudioFloatFormatConverter.AudioFloatFormatConverterInputStream AudioFloatFormatConverter.AudioFloatInputStreamChannelMixer diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelByteBuffer.java --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelByteBuffer.java Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelByteBuffer.java Thu Sep 11 20:47:50 2008 +0200 @@ -45,7 +45,7 @@ public class ModelByteBuffer { private long fileoffset; private byte[] buffer; private long offset; - private long len; + private final long len; private class RandomFileInputStream extends InputStream { @@ -85,11 +85,12 @@ public class ModelByteBuffer { } public long skip(long n) throws IOException { + if( n < 0) + return 0; if (n > left) n = left; - n = super.skip(n); - if (n == -1) - return -1; + long p = raf.getFilePointer(); + raf.seek(p + n); left -= n; return n; } @@ -107,11 +108,12 @@ public class ModelByteBuffer { } public int read(byte[] b) throws IOException { + int len = b.length; if (len > left) len = (int)left; if (left == 0) return -1; - int len = raf.read(b); + len = raf.read(b, 0, len); if (len == -1) return -1; left -= len; @@ -119,12 +121,12 @@ public class ModelByteBuffer { } public int read() throws IOException { - if (len == 0) + if (left == 0) return -1; int b = raf.read(); if (b == -1) return -1; - len--; + left--; return b; } @@ -137,15 +139,15 @@ public class ModelByteBuffer { long beginIndex, long endIndex, boolean independent) { this.root = parent.root; this.offset = 0; - this.len = parent.len; + long parent_len = parent.len; if (beginIndex < 0) beginIndex = 0; - if (beginIndex > len) - beginIndex = len; + if (beginIndex > parent_len) + beginIndex = parent_len; if (endIndex < 0) endIndex = 0; - if (endIndex > len) - endIndex = len; + if (endIndex > parent_len) + endIndex = parent_len; if (beginIndex > endIndex) beginIndex = endIndex; offset = beginIndex; diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelInstrument.java --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelInstrument.java Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelInstrument.java Thu Sep 11 20:47:50 2008 +0200 @@ -88,10 +88,10 @@ public abstract class ModelInstrument ex // This information is generated from ModelPerformer.getName() // returned from getPerformers(). public String[] getKeys() { - String[] keys = new String[127]; + String[] keys = new String[128]; for (ModelPerformer performer : getPerformers()) { for (int k = performer.getKeyFrom(); k <= performer.getKeyTo(); k++) { - if (keys[k] == null) { + if (k >= 0 && k < 128 && keys[k] == null) { String name = performer.getName(); if (name == null) name = "untitled"; diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftChannel.java --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftChannel.java Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftChannel.java Thu Sep 11 20:47:50 2008 +0200 @@ -194,6 +194,20 @@ public class SoftChannel implements Midi return v; } }; + + private static int restrict7Bit(int value) + { + if(value < 0) return 0; + if(value > 127) return 127; + return value; + } + + private static int restrict14Bit(int value) + { + if(value < 0) return 0; + if(value > 16256) return 16256; + return value; + } public SoftChannel(SoftSynthesizer synth, int channel) { this.channel = channel; @@ -386,8 +400,8 @@ public class SoftChannel implements Midi } public void noteOn(int noteNumber, int velocity) { - - if(noteNumber < 0 || noteNumber > 127) return; + noteNumber = restrict7Bit(noteNumber); + velocity = restrict7Bit(velocity); noteOn_internal(noteNumber, velocity); if (current_mixer != null) current_mixer.noteOn(noteNumber, velocity); @@ -415,7 +429,7 @@ public class SoftChannel implements Midi sustain = true; } - mainmixer.msec_last_activity = mainmixer.msec_pos; + mainmixer.activity(); if (mono) { if (portamento) { @@ -515,7 +529,8 @@ public class SoftChannel implements Midi } public void noteOff(int noteNumber, int velocity) { - if(noteNumber < 0 || noteNumber > 127) return; + noteNumber = restrict7Bit(noteNumber); + velocity = restrict7Bit(velocity); noteOff_internal(noteNumber, velocity); if (current_mixer != null) @@ -534,7 +549,7 @@ public class SoftChannel implements Midi } } - mainmixer.msec_last_activity = mainmixer.msec_pos; + mainmixer.activity(); for (int i = 0; i < voices.length; i++) { if (voices[i].on && voices[i].channel == channel && voices[i].note == noteNumber @@ -617,11 +632,14 @@ public class SoftChannel implements Midi } public void setPolyPressure(int noteNumber, int pressure) { + noteNumber = restrict7Bit(noteNumber); + pressure = restrict7Bit(pressure); + if (current_mixer != null) current_mixer.setPolyPressure(noteNumber, pressure); synchronized (control_mutex) { - mainmixer.msec_last_activity = mainmixer.msec_pos; + mainmixer.activity(); co_midi[noteNumber].get(0, "poly_pressure")[0] = pressure*(1.0/128.0); polypressure[noteNumber] = pressure; for (int i = 0; i < voices.length; i++) { @@ -637,11 +655,12 @@ public class SoftChannel implements Midi } } - public void setChannelPressure(int pressure) { + public void setChannelPressure(int pressure) { + pressure = restrict7Bit(pressure); if (current_mixer != null) current_mixer.setChannelPressure(pressure); synchronized (control_mutex) { - mainmixer.msec_last_activity = mainmixer.msec_pos; + mainmixer.activity(); co_midi_channel_pressure[0] = pressure * (1.0 / 128.0); channelpressure = pressure; for (int i = 0; i < voices.length; i++) { @@ -1006,6 +1025,8 @@ 121 |79H |**Coarse Tuning |0 } public void controlChange(int controller, int value) { + controller = restrict7Bit(controller); + value = restrict7Bit(value); if (current_mixer != null) current_mixer.controlChange(controller, value); @@ -1210,13 +1231,15 @@ 121 |79H |**Coarse Tuning |0 } } - public void programChange(int program) { + public void programChange(int program) { programChange(bank, program); } public void programChange(int bank, int program) { - synchronized (control_mutex) { - mainmixer.msec_last_activity = mainmixer.msec_pos; + bank = restrict7Bit(bank); + program = restrict7Bit(program); + synchronized (control_mutex) { + mainmixer.activity(); this.bank = bank; this.program = program; current_instrument = null; @@ -1230,10 +1253,11 @@ 121 |79H |**Coarse Tuning |0 } public void setPitchBend(int bend) { - if (current_mixer != null) + bend = restrict14Bit(bend); + if (current_mixer != null) current_mixer.setPitchBend(bend); synchronized (control_mutex) { - mainmixer.msec_last_activity = mainmixer.msec_pos; + mainmixer.activity(); co_midi_pitch[0] = bend * (1.0 / 16384.0); pitchbend = bend; for (int i = 0; i < voices.length; i++) @@ -1349,7 +1373,7 @@ 121 |79H |**Coarse Tuning |0 public void resetAllControllers(boolean allControls) { synchronized (control_mutex) { - mainmixer.msec_last_activity = mainmixer.msec_pos; + mainmixer.activity(); for (int i = 0; i < 128; i++) { setPolyPressure(i, 0); diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftCubicResampler.java --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftCubicResampler.java Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftCubicResampler.java Thu Sep 11 20:47:50 2008 +0200 @@ -5,7 +5,7 @@ * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Sun designates this - * particular file as suabject to the "Classpath" exception as provided + * particular file as subject to the "Classpath" exception as provided * by Sun in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMainMixer.java --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMainMixer.java Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMainMixer.java Thu Sep 11 20:47:50 2008 +0200 @@ -59,15 +59,17 @@ public class SoftMainMixer { public final static int CHANNEL_CHANNELMIXER_LEFT = 14; public final static int CHANNEL_CHANNELMIXER_RIGHT = 15; protected boolean active_sensing_on = false; - protected long msec_last_activity = -1; - protected long msec_pos = 0; + private long msec_last_activity = -1; + private boolean pusher_silent = false; + private int pusher_silent_count = 0; + private long msec_pos = 0; protected boolean readfully = true; private Object control_mutex; private SoftSynthesizer synth; private int nrofchannels = 2; private SoftVoice[] voicestatus = null; private SoftAudioBuffer[] buffers; - private SoftAudioProcessor reverb; + private SoftReverb reverb; private SoftAudioProcessor chorus; private SoftAudioProcessor agc; private long msec_buffer_len = 0; @@ -106,7 +108,7 @@ public class SoftMainMixer { private void processSystemExclusiveMessage(byte[] data) { synchronized (synth.control_mutex) { - msec_last_activity = msec_pos; + activity(); // Universal Non-Real-Time SysEx if ((data[1] & 0xFF) == 0x7E) { @@ -597,10 +599,39 @@ public class SoftMainMixer { } } + + if(buffers[CHANNEL_LEFT].isSilent() + && buffers[CHANNEL_RIGHT].isSilent()) + { + pusher_silent_count++; + if(pusher_silent_count > 5) + { + pusher_silent_count = 0; + synchronized (control_mutex) { + pusher_silent = true; + if(synth.weakstream != null) + synth.weakstream.setInputStream(null); + } + } + } + else + pusher_silent_count = 0; if (synth.agc_on) agc.processAudio(); + } + + // Must only we called within control_mutex synchronization + public void activity() + { + msec_last_activity = msec_pos; + if(pusher_silent) + { + pusher_silent = false; + if(synth.weakstream != null) + synth.weakstream.setInputStream(ais); + } } public void stopMixer(ModelChannelMixer mixer) { @@ -650,6 +681,8 @@ public class SoftMainMixer { chorus.init(samplerate, controlrate); agc.init(samplerate, controlrate); + reverb.setLightMode(synth.reverb_light); + reverb.setMixMode(true); chorus.setMixMode(true); agc.setMixMode(false); @@ -686,7 +719,13 @@ public class SoftMainMixer { private byte[] single = new byte[1]; public void fillBuffer() { - processAudioBuffers(); + /* + boolean pusher_silent2; + synchronized (control_mutex) { + pusher_silent2 = pusher_silent; + } + if(!pusher_silent2)*/ + processAudioBuffers(); for (int i = 0; i < nrofchannels; i++) buffers[i].get(bbuffer, i); bbuffer_pos = 0; @@ -884,7 +923,7 @@ public class SoftMainMixer { public void processMessage(int ch, int cmd, int data1, int data2) { synchronized (synth.control_mutex) { - msec_last_activity = msec_pos; + activity(); } if (cmd == 0xF0) { diff -r aacc3e8a8e16 -r 8b0e11483252 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMixingMixer.java --- a/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMixingMixer.java Wed Sep 10 13:37:08 2008 -0400 +++ b/overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMixingMixer.java Thu Sep 11 20:47:50 2008 +0200 @@ -62,7 +62,7 @@ public class SoftMixingMixer implements protected static final String INFO_DESCRIPTION = "Software Sound Mixer"; - protected static final String INFO_VERSION = "0.9"; + protected static final String INFO_VERSION = "1.0"; protected final static Mixer.Info info = new Info(); @@ -354,9 +354,6 @@ public class SoftMixingMixer implements AudioInputStream ais = openStream(getFormat()); if (line == null) { - DataLine.Info info = new DataLine.Info( - SourceDataLine.class, format); - synchronized (SoftMixingMixerProvider.mutex) { SoftMixingMixerProvider.lockthread = Thread .currentThread(); @@ -365,8 +362,55 @@ public class SoftMixingMixer implements try { Mixer defaultmixer = AudioSystem.getMixer(null); if (defaultmixer != null) - line = (SourceDataLine) defaultmixer.getLine(info); - else + { + // Search for suitable line + + DataLine.Info idealinfo = null; + AudioFormat idealformat = null; + + Line.Info[] lineinfos = defaultmixer.getSourceLineInfo(); + idealFound: + for (int i = 0; i < lineinfos.length; i++) { + if(lineinfos[i].getLineClass() == SourceDataLine.class) + { + DataLine.Info info = (DataLine.Info)lineinfos[i]; + AudioFormat[] formats = info.getFormats(); + for (int j = 0; j < formats.length; j++) { + AudioFormat format = formats[j]; + if(format.getChannels() == 2 || + format.getChannels() == AudioSystem.NOT_SPECIFIED) + if(format.getEncoding().equals(Encoding.PCM_SIGNED) || + format.getEncoding().equals(Encoding.PCM_UNSIGNED)) + if(format.getSampleRate() == AudioSystem.NOT_SPECIFIED || + format.getSampleRate() == 48000.0) + if(format.getSampleSizeInBits() == AudioSystem.NOT_SPECIFIED || + format.getSampleSizeInBits() == 16) + { + idealinfo = info; + int ideal_channels = format.getChannels(); + boolean ideal_signed = format.getEncoding().equals(Encoding.PCM_SIGNED); + float ideal_rate = format.getSampleRate(); + boolean ideal_endian = format.isBigEndian(); + int ideal_bits = format.getSampleSizeInBits(); + if(ideal_bits == AudioSystem.NOT_SPECIFIED) ideal_bits = 16; + if(ideal_channels == AudioSystem.NOT_SPECIFIED) ideal_channels = 2; + if(ideal_rate == AudioSystem.NOT_SPECIFIED) ideal_rate = 48000; + idealformat = new AudioFormat(ideal_rate, ideal_bits, + ideal_channels, ideal_signed, ideal_endian); + break idealFound; + } + } + } + } + + if(idealformat != null) + { + format = idealformat; + line = (SourceDataLine) defaultmixer.getLine(idealinfo); + } + } + + if(line == null) line = AudioSystem.getSourceDataLine(format); } finally { From gbenson at redhat.com Sat Oct 18 21:23:12 2008 From: gbenson at redhat.com (Gary Benson) Date: Sun, 19 Oct 2008 04:23:12 +0000 Subject: changeset in /hg/icedtea: 2008-09-12 Gary Benson changeset 8306580ee906 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8306580ee906 description: 2008-09-12 Gary Benson Xerxes R?nby * ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp (__m68k_cmpxchg): New function. (m68k_compare_and_swap): Likewise. (m68k_add_and_fetch): Likewise. (m68k_lock_test_and_set): Likewise. (Atomic::add): Use the above on m68k. (Atomic::add_ptr): Likewise. (Atomic::xchg): Likewise. (Atomic::xchg_ptr): Likewise. (Atomic::cmpxchg): Likewise. (Atomic::cmpxchg_ptr): Likewise. diffstat: 2 files changed, 114 insertions(+) ChangeLog | 15 + ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp | 99 ++++++++++ diffs (184 lines): diff -r 8b0e11483252 -r 8306580ee906 ChangeLog --- a/ChangeLog Thu Sep 11 20:47:50 2008 +0200 +++ b/ChangeLog Fri Sep 12 15:20:06 2008 +0100 @@ -1,3 +1,18 @@ 2008-09-11 Mark Wielaard + Xerxes R??nby + + * ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp + (__m68k_cmpxchg): New function. + (m68k_compare_and_swap): Likewise. + (m68k_add_and_fetch): Likewise. + (m68k_lock_test_and_set): Likewise. + (Atomic::add): Use the above on m68k. + (Atomic::add_ptr): Likewise. + (Atomic::xchg): Likewise. + (Atomic::xchg_ptr): Likewise. + (Atomic::cmpxchg): Likewise. + (Atomic::cmpxchg_ptr): Likewise. + 2008-09-11 Mark Wielaard * patches/icedtea-gervill.patch: Updated patch for old tests. diff -r 8b0e11483252 -r 8306580ee906 ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp --- a/ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp Thu Sep 11 20:47:50 2008 +0200 +++ b/ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp Fri Sep 12 15:20:06 2008 +0100 @@ -24,6 +24,81 @@ */ // Implementation of class atomic + +#ifdef M68K + +/* + * __m68k_cmpxchg + * + * Atomically store newval in *ptr if *ptr is equal to oldval for user space. + * Returns newval on success and oldval if no exchange happened. + * This implementation is processor specific and works on + * 68020 68030 68040 and 68060. + * + * It will not work on ColdFire, 68000 and 68010 since they lack the CAS + * instruction. + * Using a kernelhelper would be better for arch complete implementation. + * + */ + +static inline int __m68k_cmpxchg(int oldval, int newval, volatile int *ptr) +{ + int ret; + __asm __volatile ("cas%.l %0,%2,%1" + : "=d" (ret), "+m" (*(ptr)) + : "d" (newval), "0" (oldval)); + return ret; +} + +/* Perform an atomic compare and swap: if the current value of `*PTR' + is OLDVAL, then write NEWVAL into `*PTR'. Return the contents of + `*PTR' before the operation.*/ +static inline int m68k_compare_and_swap(volatile int *ptr, + int oldval, + int newval) +{ + for (;;) + { + int prev = *ptr; + if (prev != oldval) + return prev; + + if (__m68k_cmpxchg (prev, newval, ptr) == newval) + // Success. + return prev; + + // We failed even though prev == oldval. Try again. + } +} + +/* Atomically add an int to memory. */ +static inline int m68k_add_and_fetch(volatile int *ptr, int add_value) +{ + for (;;) + { + // Loop until success. + + int prev = *ptr; + + if (__m68k_cmpxchg (prev, prev + add_value, ptr) == prev + add_value) + return prev + add_value; + } +} + +/* Atomically write VALUE into `*PTR' and returns the previous + contents of `*PTR'. */ +static inline int m68k_lock_test_and_set(volatile int *ptr, int newval) +{ + for (;;) + { + // Loop until success. + int prev = *ptr; + + if (__m68k_cmpxchg (prev, newval, ptr) == prev) + return prev; + } +} +#endif // M68K #ifdef ARM @@ -107,7 +182,11 @@ inline jint Atomic::add(jint add_value, #ifdef ARM return arm_add_and_fetch(dest, add_value); #else +#ifdef M68K + return m68k_add_and_fetch(dest, add_value); +#else return __sync_add_and_fetch(dest, add_value); +#endif // M68K #endif // ARM } @@ -116,7 +195,11 @@ inline intptr_t Atomic::add_ptr(intptr_t #ifdef ARM return arm_add_and_fetch(dest, add_value); #else +#ifdef M68K + return m68k_add_and_fetch(dest, add_value); +#else return __sync_add_and_fetch(dest, add_value); +#endif // M68K #endif // ARM } @@ -159,12 +242,16 @@ inline jint Atomic::xchg(jint exchange_v { #ifdef ARM return arm_lock_test_and_set(dest, exchange_value); +#else +#ifdef M68K + return m68k_lock_test_and_set(dest, exchange_value); #else // __sync_lock_test_and_set is a bizarrely named atomic exchange // operation. Note that some platforms only support this with the // limitation that the only valid value to store is the immediate // constant 1. There is a test for this in JNI_CreateJavaVM(). return __sync_lock_test_and_set (dest, exchange_value); +#endif // M68K #endif // ARM } @@ -173,7 +260,11 @@ inline intptr_t Atomic::xchg_ptr(intptr_ #ifdef ARM return arm_lock_test_and_set(dest, exchange_value); #else +#ifdef M68K + return m68k_lock_test_and_set(dest, exchange_value); +#else return __sync_lock_test_and_set (dest, exchange_value); +#endif // M68K #endif // ARM } @@ -189,7 +280,11 @@ inline jint Atomic::cmpxchg(jint exchang #ifdef ARM return arm_compare_and_swap(dest, compare_value, exchange_value); #else +#ifdef M68K + return m68k_compare_and_swap(dest, compare_value, exchange_value); +#else return __sync_val_compare_and_swap(dest, compare_value, exchange_value); +#endif // M68K #endif // ARM } @@ -206,7 +301,11 @@ inline intptr_t Atomic::cmpxchg_ptr(intp #ifdef ARM return arm_compare_and_swap(dest, compare_value, exchange_value); #else +#ifdef M68K + return m68k_compare_and_swap(dest, compare_value, exchange_value); +#else return __sync_val_compare_and_swap(dest, compare_value, exchange_value); +#endif // M68K #endif // ARM } From dbhole at redhat.com Sat Oct 18 21:23:11 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:11 +0000 Subject: changeset in /hg/icedtea: - Added support for multiple simultane... Message-ID: changeset 4c642bbb2285 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=4c642bbb2285 description: - Added support for multiple simultaneous applet load (same tab or different) - http://www.w3.org/People/mimasa/test/object/java/clock - Added support for load via object/embed/applet tags with "classid" - i.e. everything here http://www.w3.org/People/mimasa/test/object/java/ - Improved shutdown subroutine for clean (er) exit - Added support for applets that specify height/width as %'s of window size - Fixed a couple of minor race condition issues diffstat: 6 files changed, 594 insertions(+), 282 deletions(-) ChangeLog | 12 IcedTeaPlugin.cc | 412 +++++++++++++--------- patches/icedtea-liveconnect.patch | 154 +++++--- patches/icedtea-webstart.patch | 275 +++++++++++--- rt/net/sourceforge/jnlp/NetxPanel.java | 16 rt/net/sourceforge/jnlp/runtime/JNLPRuntime.java | 7 diffs (truncated from 1442 to 500 lines): diff -r 2cfd464ee271 -r 4c642bbb2285 ChangeLog --- a/ChangeLog Mon Sep 01 10:36:56 2008 +0200 +++ b/ChangeLog Fri Sep 05 12:11:57 2008 -0400 @@ -1,3 +1,15 @@ 2008-08-28 Mark Wielaard + + * IcedTeaPlugin.cc: Support for multiple simultaneous applet load. + * patches/icedtea-liveconnect.patch: Support for multiple simultaneous + applet load. Improved shutdown. + * patches/icedtea-webstart.patch: Added support for applets that specify + height/width as factor of window size. + * rt/net/sourceforge/jnlp/NetxPanel.java: Added synchronization for + JNLPRuntime initialization. + * rt/net/sourceforge/jnlp/runtime/JNLPRuntime.java: Added mutex object + around which initialization can be synchronized. + 2008-08-28 Mark Wielaard * patches/icedtea-clean-crypto.patch: New patch. diff -r 2cfd464ee271 -r 4c642bbb2285 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Sep 01 10:36:56 2008 +0200 +++ b/IcedTeaPlugin.cc Fri Sep 05 12:11:57 2008 -0400 @@ -246,6 +246,11 @@ static char* appletviewer_executable = N static char* appletviewer_executable = NULL; static char* libjvm_so = NULL; +class IcedTeaPluginFactory; + +static PRBool factory_created = PR_FALSE; +static IcedTeaPluginFactory* factory = NULL; + #include #include @@ -375,6 +380,26 @@ char const* TYPES[10] = { "Object", #define MESSAGE_SEND() \ factory->SendMessageToAppletViewer (message); +// FIXME: Right now, the macro below will exit only +// if error occured and we are in the middle of a +// shutdown (so that the permanent loop does not block +// proper exit). We need better error handling + +#define PROCESS_PENDING_EVENTS_REF(reference) \ + if (factory->shutting_down == PR_TRUE && \ + factory->resultMap[reference]->errorOccured == PR_TRUE) \ + { \ + printf("Error occured. Exiting function\n"); \ + return NS_ERROR_FAILURE; \ + } \ + PRBool hasPending; \ + factory->current->HasPendingEvents(&hasPending); \ + if (hasPending == PR_TRUE) { \ + PRBool processed = PR_FALSE; \ + factory->current->ProcessNextEvent(PR_TRUE, &processed); \ + } else { \ + PR_Sleep(PR_INTERVAL_NO_WAIT); \ + } #define PROCESS_PENDING_EVENTS \ PRBool hasPending; \ @@ -391,7 +416,7 @@ char const* TYPES[10] = { "Object", printf ("RECEIVE 1\n"); \ while (factory->resultMap[reference]->returnIdentifier == -1) \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ if (factory->resultMap[reference]->returnIdentifier == 0) \ @@ -412,7 +437,7 @@ char const* TYPES[10] = { "Object", printf("RECEIVE ID 1\n"); \ while (factory->resultMap[reference]->returnIdentifier == -1) \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ *id = reinterpret_cast \ @@ -426,7 +451,7 @@ char const* TYPES[10] = { "Object", printf("RECEIVE VALUE 1\n"); \ while (factory->resultMap[reference]->returnValue == "") \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ *result = ParseValue (type, factory->resultMap[reference]->returnValue); // \ @@ -442,7 +467,7 @@ char const* TYPES[10] = { "Object", printf("RECEIVE SIZE 1\n"); \ while (factory->resultMap[reference]->returnValue == "") \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ *result = factory->resultMap[reference]->returnValue.ToInteger (&conversionResult); \ @@ -458,7 +483,7 @@ char const* TYPES[10] = { "Object", printf("RECEIVE STRING 1\n"); \ while (factory->resultMap[reference]->returnValue == "") \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf("Setting result to: %s\n", strdup (factory->resultMap[reference]->returnValue.get ())); \ *result = reinterpret_cast \ @@ -474,7 +499,7 @@ char const* TYPES[10] = { "Object", printf("RECEIVE STRING UCS 1\n"); \ while (factory->resultMap[reference]->returnValueUCS.IsEmpty()) \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ int length = factory->resultMap[reference]->returnValueUCS.Length (); \ jchar* newstring = static_cast (PR_Malloc (length)); \ @@ -493,7 +518,7 @@ char const* TYPES[10] = { "Object", printf("RECEIVE BOOLEAN 1\n"); \ while (factory->resultMap[reference]->returnIdentifier == -1) \ { \ - PROCESS_PENDING_EVENTS; \ + PROCESS_PENDING_EVENTS_REF (reference); \ } \ *result = factory->resultMap[reference]->returnIdentifier; // res = factory->current->ProcessNextEvent (PR_TRUE, \ @@ -651,6 +676,7 @@ class ResultContainer PRUint32 returnIdentifier; nsCString returnValue; nsString returnValueUCS; + PRBool errorOccured; }; @@ -661,6 +687,7 @@ ResultContainer::ResultContainer () returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); + errorOccured = PR_FALSE; } ResultContainer::~ResultContainer () @@ -680,6 +707,7 @@ ResultContainer::Clear() returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); + errorOccured = PR_FALSE; } #include @@ -732,7 +760,10 @@ public: PRBool IsConnected (); nsCOMPtr async; nsCOMPtr current; + nsCOMPtr input; + nsCOMPtr output; ReferenceHashtable references; + PRBool shutting_down; // FIXME: make private? JNIEnv* proxyEnv; nsISecureEnv* secureEnv; @@ -755,11 +786,10 @@ private: nsresult StartAppletviewer (); void ProcessMessage(); void ConsumeMsgFromJVM(); + void CreateSocket(); nsCOMPtr processThread; nsCOMPtr sink; nsCOMPtr transport; - nsCOMPtr input; - nsCOMPtr output; nsCOMPtr applet_viewer_process; PRBool connected; PRUint32 next_instance_identifier; @@ -774,7 +804,6 @@ private: int string_identifier; int slot_index; int value_identifier; - PRBool shutting_down; /** * JNI I/O related code @@ -1113,6 +1142,77 @@ private: int contextCounter; }; + +#include +#include +#include +#include +#include +#include + +class IcedTeaRunnable : public nsIRunnable +{ +public: + NS_DECL_ISUPPORTS + NS_DECL_NSIRUNNABLE + + IcedTeaRunnable (); + + ~IcedTeaRunnable (); +}; + +NS_IMPL_ISUPPORTS1 (IcedTeaRunnable, nsIRunnable) + +IcedTeaRunnable::IcedTeaRunnable () +{ +} + +IcedTeaRunnable::~IcedTeaRunnable () +{ +} + +NS_IMETHODIMP +IcedTeaRunnable::Run () +{ + return NS_ERROR_NOT_IMPLEMENTED; +} + +template +class IcedTeaRunnableMethod : public IcedTeaRunnable +{ +public: + typedef void (T::*Method) (); + + IcedTeaRunnableMethod (T* object, Method method); + NS_IMETHOD Run (); + + ~IcedTeaRunnableMethod (); + + T* object; + Method method; +}; + +template +IcedTeaRunnableMethod::IcedTeaRunnableMethod (T* object, Method method) +: object (object), + method (method) +{ + NS_ADDREF (object); +} + +template +IcedTeaRunnableMethod::~IcedTeaRunnableMethod () +{ + NS_RELEASE (object); +} + +template NS_IMETHODIMP +IcedTeaRunnableMethod::Run () +{ + (object->*method) (); + return NS_OK; +} + NS_IMPL_ISUPPORTS6 (IcedTeaPluginFactory, nsIFactory, nsIPlugin, nsIJVMManager, nsIJVMPrefsWindow, nsIJVMPlugin, nsIInputStreamCallback) @@ -1141,6 +1241,8 @@ IcedTeaPluginFactory::~IcedTeaPluginFact // FIXME: why did this crash with threadManager == 0x0 on shutdown? PLUGIN_TRACE_FACTORY (); secureEnv = 0; + factory_created = PR_FALSE; + factory = NULL; printf ("DECONSTRUCTING FACTORY\n"); } @@ -1189,16 +1291,83 @@ IcedTeaPluginFactory::Initialize () PLUGIN_DEBUG_TWO ("Factory::Initialize: using", appletviewer_executable); + nsCOMPtr manager; + result = NS_GetComponentManager (getter_AddRefs (manager)); + +/** + * JNI I/O code + + // Initialize mutex to control access to the jvm + jvmPRMonitor = PR_NewMonitor(); +*/ + jvmMsgQueuePRMonitor = PR_NewMonitor(); + + nsCOMPtr threadManager; + result = manager->CreateInstanceByContractID + (NS_THREADMANAGER_CONTRACTID, nsnull, NS_GET_IID (nsIThreadManager), + getter_AddRefs (threadManager)); + PLUGIN_CHECK_RETURN ("thread manager", result); + + result = threadManager->GetCurrentThread (getter_AddRefs (current)); + PLUGIN_CHECK_RETURN ("current thread", result); + +/* + * + * Socket related code for TCP/IP communication + * + */ + + nsCOMPtr socketCreationThread; + nsCOMPtr socketCreationEvent = + new IcedTeaRunnableMethod + (this, &IcedTeaPluginFactory::IcedTeaPluginFactory::CreateSocket); + + NS_NewThread(getter_AddRefs(socketCreationThread), socketCreationEvent); + + PLUGIN_DEBUG ("Instance::Initialize: awaiting connection from appletviewer"); + PRBool processed; + + // FIXME: move this somewhere applet-window specific so it doesn't block page + // display. + // FIXME: this doesn't work with thisiscool.com. + while (!IsConnected ()) + { +// result = socketCreationThread->ProcessNextEvent (PR_TRUE, &processed); +// PLUGIN_CHECK_RETURN ("wait for connection: process next event", result); + } + PLUGIN_DEBUG ("Instance::Initialize:" + " got confirmation that appletviewer is running."); + + return NS_OK; +} + +void +IcedTeaPluginFactory::CreateSocket () +{ + + PRBool processed; + nsresult result; + // Start appletviewer process for this plugin instance. nsCOMPtr manager; result = NS_GetComponentManager (getter_AddRefs (manager)); - PLUGIN_CHECK_RETURN ("get component manager", result); + PLUGIN_CHECK ("get component manager", result); result = manager->CreateInstance (nsILiveconnect::GetCID (), nsnull, NS_GET_IID (nsILiveconnect), getter_AddRefs (liveconnect)); - PLUGIN_CHECK_RETURN ("liveconnect", result); + PLUGIN_CHECK ("liveconnect", result); + + nsCOMPtr threadManager; + nsCOMPtr curr_thread; + result = manager->CreateInstanceByContractID + (NS_THREADMANAGER_CONTRACTID, nsnull, NS_GET_IID (nsIThreadManager), + getter_AddRefs (threadManager)); + PLUGIN_CHECK ("thread manager", result); + + result = threadManager->GetCurrentThread (getter_AddRefs (curr_thread)); + /* * Socket initialization code for TCP/IP communication @@ -1210,73 +1379,27 @@ IcedTeaPluginFactory::Initialize () nsnull, NS_GET_IID (nsIServerSocket), getter_AddRefs (socket)); - PLUGIN_CHECK_RETURN ("create server socket", result); + PLUGIN_CHECK ("create server socket", result); // FIXME: hard-coded port result = socket->Init (50007, PR_TRUE, -1); - PLUGIN_CHECK_RETURN ("socket init", result); + PLUGIN_CHECK ("socket init", result); nsCOMPtr listener = new IcedTeaSocketListener (this); result = socket->AsyncListen (listener); - PLUGIN_CHECK_RETURN ("add socket listener", result); - -/** - * JNI I/O code - - // Initialize mutex to control access to the jvm - jvmPRMonitor = PR_NewMonitor(); -*/ - jvmMsgQueuePRMonitor = PR_NewMonitor(); + PLUGIN_CHECK ("add socket listener", result); result = StartAppletviewer (); - PLUGIN_CHECK_RETURN ("started appletviewer", result); - - nsCOMPtr threadManager; - result = manager->CreateInstanceByContractID - (NS_THREADMANAGER_CONTRACTID, nsnull, NS_GET_IID (nsIThreadManager), - getter_AddRefs (threadManager)); - PLUGIN_CHECK_RETURN ("thread manager", result); - - result = threadManager->GetCurrentThread (getter_AddRefs (current)); - PLUGIN_CHECK_RETURN ("current thread", result); - -/* - * - * Socket related code for TCP/IP communication - * - */ - - PLUGIN_DEBUG ("Instance::Initialize: awaiting connection from appletviewer"); - PRBool processed; - // FIXME: move this somewhere applet-window specific so it doesn't block page - // display. - // FIXME: this doesn't work with thisiscool.com. - while (!IsConnected ()) - { - result = current->ProcessNextEvent (PR_TRUE, &processed); - PLUGIN_CHECK_RETURN ("wait for connection: process next event", result); - } - PLUGIN_DEBUG ("Instance::Initialize:" - " got confirmation that appletviewer is running."); - - result = transport->OpenOutputStream (nsITransport::OPEN_BLOCKING, - nsnull, nsnull, - getter_AddRefs (output)); - PLUGIN_CHECK_RETURN ("output stream", result); - - result = transport->OpenInputStream (0, nsnull, nsnull, - getter_AddRefs (input)); - PLUGIN_CHECK_RETURN ("input stream", result); - - async = do_QueryInterface (input, &result); - PLUGIN_CHECK_RETURN ("async input stream", result); - - result = async->AsyncWait (this, 0, 0, current); - PLUGIN_CHECK_RETURN ("add async wait", result); - - return NS_OK; + PLUGIN_CHECK ("started appletviewer", result); + + while (!IsConnected()) + { + result = curr_thread->ProcessNextEvent (PR_TRUE, &processed); + PLUGIN_CHECK ("wait for connection: process next event", result); + } + } NS_IMETHODIMP @@ -1297,6 +1420,7 @@ IcedTeaPluginFactory::Shutdown () PRInt32 exitVal; applet_viewer_process->GetExitValue(&exitVal); +/* PRUint32 max_sleep_time = 2000; PRUint32 sleep_time = 0; while ((sleep_time < max_sleep_time) && (exitVal == -1)) { @@ -1312,6 +1436,7 @@ IcedTeaPluginFactory::Shutdown () printf("Appletviewer still appears to be running. Trying to kill it...\n"); applet_viewer_process->Kill(); } +*/ return NS_OK; } @@ -1949,6 +2074,15 @@ NS_IMETHODIMP NS_IMETHODIMP IcedTeaPluginInstance::GetPeer (nsIPluginInstancePeer** aPeer) { + + PRBool processed; + nsresult result; + while (!peer) + { + result = factory->current->ProcessNextEvent(PR_TRUE, &processed); + PLUGIN_CHECK_RETURN ("wait for peer: process next event", result); + } + printf ("GETTING PEER!!!: %p\n", peer); *aPeer = peer; // FIXME: where is this unref'd? @@ -2258,76 +2392,6 @@ IcedTeaPluginFactory::OnInputStreamReady nsresult result = async->AsyncWait (this, 0, 0, current); PLUGIN_CHECK_RETURN ("re-add async wait", result); - return NS_OK; -} - -#include -#include -#include -#include -#include -#include - -class IcedTeaRunnable : public nsIRunnable -{ -public: - NS_DECL_ISUPPORTS - NS_DECL_NSIRUNNABLE - - IcedTeaRunnable (); - - ~IcedTeaRunnable (); -}; - -NS_IMPL_ISUPPORTS1 (IcedTeaRunnable, nsIRunnable) - -IcedTeaRunnable::IcedTeaRunnable () -{ -} From doko at ubuntu.com Sat Oct 18 21:23:13 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:13 +0000 Subject: changeset in /hg/icedtea: 2008-09-12 Matthias Klose changeset 16c322628d9f in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=16c322628d9f description: 2008-09-12 Matthias Klose * fsg.sh: Update for b12 code drop. * Makefile.am, NEWS: Update for b12. * patches/icedtea-LCMS-setTagData.patch: Remove, applied upstream. * patches/icedtea-color-createcontext.patch: Likewise. * patches/icedtea-hotspot-citypeflow.patch: Likewise. * patches/icedtea-hotspot-gcc-pr36917.patch: Likewise. * patches/icedtea-lcms-leak.patch: Likewise. * patches/icedtea-corba.patch: Likewise. * patches/icedtea-gervill.patch: Likewise. * patches/icedtea-directaudio-close-trick.patch: Likewise. * patches/icedtea-generated.patch: Remove, obsolete. * patches/icedtea-version.patch: Update. * patches/icedtea-ecj.patch: Update. * patches/icedtea-javafiles.patch: Regenerate. * HACKING: Update for b12. diffstat: 17 files changed, 71 insertions(+), 768 deletions(-) ChangeLog | 18 + HACKING | 7 Makefile.am | 15 - NEWS | 2 fsg.sh | 4 patches/icedtea-LCMS-setTagData.patch | 296 ------------------------- patches/icedtea-color-createcontext.patch | 36 --- patches/icedtea-corba.patch | 14 - patches/icedtea-directaudio-close-trick.patch | 193 ---------------- patches/icedtea-ecj.patch | 5 patches/icedtea-generated.patch | 10 patches/icedtea-gervill.patch | 99 -------- patches/icedtea-hotspot-citypeflow.patch | 11 patches/icedtea-hotspot-gcc-pr36917.patch | 9 patches/icedtea-javafiles.patch | 78 +++--- patches/icedtea-lcms-leak.patch | 11 patches/icedtea-version.patch | 31 -- diffs (truncated from 1027 to 500 lines): diff -r 8306580ee906 -r 16c322628d9f ChangeLog --- a/ChangeLog Fri Sep 12 15:20:06 2008 +0100 +++ b/ChangeLog Fri Sep 12 22:35:46 2008 +0200 @@ -1,3 +1,21 @@ 2008-09-12 Gary Benson + + * fsg.sh: Update for b12 code drop. + * Makefile.am, NEWS: Update for b12. + * patches/icedtea-LCMS-setTagData.patch: Remove, applied upstream. + * patches/icedtea-color-createcontext.patch: Likewise. + * patches/icedtea-hotspot-citypeflow.patch: Likewise. + * patches/icedtea-hotspot-gcc-pr36917.patch: Likewise. + * patches/icedtea-lcms-leak.patch: Likewise. + * patches/icedtea-corba.patch: Likewise. + * patches/icedtea-gervill.patch: Likewise. + * patches/icedtea-directaudio-close-trick.patch: Likewise. + * patches/icedtea-generated.patch: Remove, obsolete. + * patches/icedtea-version.patch: Update. + * patches/icedtea-ecj.patch: Update. + * patches/icedtea-javafiles.patch: Regenerate. + * HACKING: Update for b12. + 2008-09-12 Gary Benson Xerxes R??nby diff -r 8306580ee906 -r 16c322628d9f HACKING --- a/HACKING Fri Sep 12 15:20:06 2008 +0100 +++ b/HACKING Fri Sep 12 22:35:46 2008 +0200 @@ -17,21 +17,16 @@ The following patches are currently appl * icedtea-ant.patch: Remove use of $(ANT_HOME). * icedtea-uname.patch: Handle output of uname on arm and mips{,el}. * icedtea-bytebuffer-compact.patch: Add clearMark() method to java.nio.Buffer (PR60). -* icedtea-color-createcontext.patch: Add support for a PaintContext to java.awt.Color. * icedtea-copy-plugs.patch: Add IcedTea's 'plugs' for Java WebStart support, add cast to getAnnotation and trapAuthenticationFailure variable to com.sun.jmx.snmp.SnmpPduTrap. -* icedtea-corba.patch: Adds additional files to org.omg.CORBA Makefile. * icedtea-core-build.patch: Add support for building IcedTea core VM. * icedtea-debuginfo.patch: Add -g option to build to generate debugging information. * icedtea-demos.patch: Fix building of JVMTI demo. -* icedtea-directaudio-close-trick.patch: Allow hardware sound device to be reopened. * icedtea-enum-bug-181.patch: Fixes class type check (PR181/S6736248) * icedtea-float-double-trailing-zeros.patch: Remove trailing zeros from Double/Float (PR29/30) * icedtea-fonts.patch: Add Fedora fontconfig. * icedtea-gcc-4.3.patch: Fix code to compile with GCC 4.3 and turn off -Werror. * icedtea-gcc-suffix.patch: Append $(GCC_SUFFIX) to end of 'gcc' binary name. -* icedtea-generated.patch: Force use of /bin/bash. -* icedtea-gervill.patch: Add support for Gervill from the overlay. * icedtea-graphics.patch: Fix word wrap in JTextArea (PR57/S6593649) * icedtea-ia64-fdlibm.patch: Fix name of ia64 architecture from _M_IA64 to ia64. * icedtea-javafiles.patch: Add missing Java files to list. @@ -61,8 +56,6 @@ The following patches are currently appl * icedtea-webservices.patch: Add applet support. * icedtea-zero-build.patch: Add support for the zero assembler build. * icedtea-shark-build.patch: Add support for building the Shark JIT. -* icedtea-hotspot-gcc-pr36917.patch: Work around miscompilation with GCC 4.3 (PR 36917). -* icedtea-hotspot-citypeflow.patch: Fix hotspot miscompilation with GCC 4.3 on x86. * icedtea-alpha-fixes.patch: Fix build issues on alpha-linux. * icedtea-arch.patch: Add support for additional architectures. * icedtea-alt-jar.patch: Add support for using an alternate jar tool in JDK building. diff -r 8306580ee906 -r 16c322628d9f Makefile.am --- a/Makefile.am Fri Sep 12 15:20:06 2008 +0100 +++ b/Makefile.am Fri Sep 12 22:35:46 2008 +0200 @@ -1,6 +1,6 @@ OPENJDK_DATE = 10_jul_2008 -OPENJDK_DATE = 10_jul_2008 -OPENJDK_MD5SUM = 8e60cdac02ec1b2d8ddb9d7369be69df -OPENJDK_VERSION = b11 +OPENJDK_DATE = 28_aug_2008 +OPENJDK_MD5SUM = b53e1ef643909ce82721ee4c970d958b +OPENJDK_VERSION = b12 CACAO_VERSION = 0.99.3 CACAO_MD5SUM = 80de3ad344c1a20c086ec5f1390bd1b8 @@ -467,24 +467,17 @@ ICEDTEA_PATCHES = \ patches/icedtea-sunsrc.patch \ patches/icedtea-libraries.patch \ patches/icedtea-javafiles.patch \ - patches/icedtea-corba.patch \ patches/icedtea-core-build.patch \ patches/icedtea-linker-options.patch \ patches/icedtea-static-libstdc++.patch \ - patches/icedtea-lcms-leak.patch \ patches/icedtea-timerqueue.patch \ - patches/icedtea-generated.patch \ patches/icedtea-lib64.patch \ patches/icedtea-zero-build.patch \ patches/icedtea-print-lsb-release.patch \ patches/icedtea-jpegclasses.patch \ patches/icedtea-uname.patch \ patches/icedtea-ia64-fdlibm.patch \ - patches/icedtea-LCMS-setTagData.patch \ - patches/icedtea-color-createcontext.patch \ patches/icedtea-fonts.patch \ - patches/icedtea-gervill.patch \ - patches/icedtea-directaudio-close-trick.patch \ patches/icedtea-sparc.patch \ patches/icedtea-sparc64-linux.patch \ patches/icedtea-sparc-ptracefix.patch \ @@ -496,8 +489,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-jdk-docs-target.patch \ patches/icedtea-nomotif-6706121.patch \ patches/icedtea-nomotif.patch \ - patches/icedtea-hotspot-gcc-pr36917.patch \ - patches/icedtea-hotspot-citypeflow.patch \ patches/icedtea-alpha-fixes.patch \ patches/icedtea-alt-jar.patch \ patches/icedtea-enum-bug-181.patch \ diff -r 8306580ee906 -r 16c322628d9f NEWS --- a/NEWS Fri Sep 12 15:20:06 2008 +0100 +++ b/NEWS Fri Sep 12 22:35:46 2008 +0200 @@ -1,6 +1,6 @@ New in release UNRELEASED (2008-xx-xx) New in release UNRELEASED (2008-xx-xx) -- Updated to b11 build. +- Updated to b12 build. New in release 1.2 (2008-05-28) diff -r 8306580ee906 -r 16c322628d9f fsg.sh --- a/fsg.sh Fri Sep 12 15:20:06 2008 +0100 +++ b/fsg.sh Fri Sep 12 22:35:46 2008 +0200 @@ -87,9 +87,5 @@ rm -f \ openjdk/jdk/test/javax/xml/crypto/dsig/data/xml-stylesheet \ openjdk/jdk/test/javax/xml/crypto/dsig/data/xml-stylesheet.b64 -# PR157, S6713083 -rm -f \ - openjdk/jdk/src/share/classes/java/lang/instrument/package.html - # END Debian/Ubuntu additions diff -r 8306580ee906 -r 16c322628d9f patches/icedtea-LCMS-setTagData.patch --- a/patches/icedtea-LCMS-setTagData.patch Fri Sep 12 15:20:06 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,296 +0,0 @@ -*** openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/lcms.h.orig 2008-04-11 19:17:54.000000000 -0700 ---- openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/lcms.h 2008-04-11 19:19:48.000000000 -0700 -*************** LCMSAPI BOOL LCMSEXPORT _cmsSaveProfile( -*** 1244,1250 **** - LCMSAPI BOOL LCMSEXPORT _cmsSaveProfileToMem(cmsHPROFILE hProfile, void *MemPtr, - size_t* BytesNeeded); - -! - - // PostScript ColorRenderingDictionary and ColorSpaceArray - ---- 1244,1251 ---- - LCMSAPI BOOL LCMSEXPORT _cmsSaveProfileToMem(cmsHPROFILE hProfile, void *MemPtr, - size_t* BytesNeeded); - -! // Modify data for a tag in a profile -! LCMSAPI BOOL LCMSEXPORT _cmsModifyTagData(cmsHPROFILE hProfile, icTagSignature sig, void *data, size_t size); - - // PostScript ColorRenderingDictionary and ColorSpaceArray - -*************** typedef struct _lcms_iccprofile_struct { -*** 1838,1843 **** ---- 1839,1845 ---- - BOOL (* Seek)(struct _lcms_iccprofile_struct* Icc, size_t offset); - BOOL (* Close)(struct _lcms_iccprofile_struct* Icc); - size_t (* Tell)(struct _lcms_iccprofile_struct* Icc); -+ BOOL (* Grow)(struct _lcms_iccprofile_struct* Icc, size_t amount); - - // Writting - -*** openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c.orig 2008-04-11 19:18:43.000000000 -0700 ---- openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c 2008-04-11 19:19:48.000000000 -0700 -*************** JNIEXPORT void JNICALL Java_sun_java2d_c -*** 347,353 **** - JNIEXPORT void JNICALL Java_sun_java2d_cmm_lcms_LCMS_setTagData - (JNIEnv *env, jobject obj, jlong id, jint tagSig, jbyteArray data) - { -! fprintf(stderr, "setTagData operation is not implemented"); - } - - void* getILData (JNIEnv *env, jobject img, jint* pDataType, ---- 347,368 ---- - JNIEXPORT void JNICALL Java_sun_java2d_cmm_lcms_LCMS_setTagData - (JNIEnv *env, jobject obj, jlong id, jint tagSig, jbyteArray data) - { -! cmsHPROFILE profile; -! storeID_t sProf; -! jbyte* dataArray; -! int tagSize; -! -! if (tagSig == SigHead) { -! fprintf(stderr, "setTagData on icSigHead not permitted"); -! return; -! } -! -! sProf.j = id; -! profile = (cmsHPROFILE) sProf.pf; -! dataArray = (*env)->GetByteArrayElements(env, data, 0); -! tagSize =(*env)->GetArrayLength(env, data); -! _cmsModifyTagData(profile, (icTagSignature) tagSig, dataArray, tagSize); -! (*env)->ReleaseByteArrayElements(env, data, dataArray, 0); - } - - void* getILData (JNIEnv *env, jobject img, jint* pDataType, -*** openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/cmsio0.c.orig 2008-04-11 19:17:54.000000000 -0700 ---- openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/cmsio0.c 2008-04-11 19:19:48.000000000 -0700 -*************** BOOL MemoryWrite(struct _lcms_iccprofile -*** 157,164 **** - if (size == 0) return TRUE; - - if (ResData != NULL) -! CopyMemory(ResData ->Block + Icc ->UsedSpace, Ptr, size); - - Icc->UsedSpace += size; - - return TRUE; ---- 157,165 ---- - if (size == 0) return TRUE; - - if (ResData != NULL) -! CopyMemory(ResData ->Block + ResData ->Pointer, Ptr, size); - -+ ResData->Pointer += size; - Icc->UsedSpace += size; - - return TRUE; -*************** BOOL MemoryWrite(struct _lcms_iccprofile -*** 166,171 **** ---- 167,184 ---- - - - static -+ BOOL MemoryGrow(struct _lcms_iccprofile_struct* Icc, size_t size) -+ { -+ FILEMEM* ResData = (FILEMEM*) Icc->stream; -+ ResData->Size += size; -+ ResData->Block = realloc(ResData->Block, ResData->Size); -+ if (!ResData->Block) -+ return FALSE; -+ return TRUE; -+ } -+ -+ -+ static - BOOL MemoryClose(struct _lcms_iccprofile_struct* Icc) - { - FILEMEM* ResData = (FILEMEM*) Icc ->stream; -*************** BOOL FileWrite(struct _lcms_iccprofile_s -*** 239,244 **** ---- 252,264 ---- - - - static -+ BOOL FileGrow(struct _lcms_iccprofile_struct* Icc, size_t size) -+ { -+ return TRUE; -+ } -+ -+ -+ static - BOOL FileClose(struct _lcms_iccprofile_struct* Icc) - { - return fclose((FILE*) Icc ->stream); -*************** LPLCMSICCPROFILE _cmsCreateProfileFromFi -*** 382,387 **** ---- 402,408 ---- - NewIcc ->Seek = FileSeek; - NewIcc ->Tell = FileTell; - NewIcc ->Close = FileClose; -+ NewIcc ->Grow = FileGrow; - NewIcc ->Write = NULL; - - NewIcc ->IsWrite = FALSE; -*************** LPLCMSICCPROFILE _cmsCreateProfileFromMe -*** 419,425 **** - NewIcc ->Seek = MemorySeek; - NewIcc ->Tell = MemoryTell; - NewIcc ->Close = MemoryClose; -! NewIcc ->Write = NULL; - - NewIcc ->IsWrite = FALSE; - ---- 440,447 ---- - NewIcc ->Seek = MemorySeek; - NewIcc ->Tell = MemoryTell; - NewIcc ->Close = MemoryClose; -! NewIcc ->Grow = MemoryGrow; -! NewIcc ->Write = MemoryWrite; - - NewIcc ->IsWrite = FALSE; - -*** openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/cmsio1.c.orig 2008-04-11 19:17:54.000000000 -0700 ---- openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/cmsio1.c 2008-04-11 19:19:48.000000000 -0700 -*************** CleanUp: -*** 3661,3663 **** ---- 3661,3800 ---- - CopyMemory(Icc, &Keep, sizeof(LCMSICCPROFILE)); - return FALSE; - } -+ -+ BOOL LCMSEXPORT _cmsModifyTagData(cmsHPROFILE hProfile, icTagSignature sig, -+ void *data, size_t size) -+ { -+ BOOL isNew; -+ int i, idx, delta, count; -+ LPBYTE padChars[3] = {0, 0, 0}; -+ LPBYTE beforeBuf, afterBuf, ptr; -+ size_t beforeSize, afterSize; -+ icUInt32Number profileSize, temp; -+ LPLCMSICCPROFILE Icc = (LPLCMSICCPROFILE) (LPSTR) hProfile; -+ -+ isNew = FALSE; -+ idx = _cmsSearchTag(Icc, sig, FALSE); -+ if (idx < 0) -+ { -+ isNew = TRUE; -+ idx = Icc->TagCount++; -+ if (Icc->TagCount >= MAX_TABLE_TAG) -+ { -+ fprintf(stderr, "Too many tags (%d)\n", Icc->TagCount); -+ Icc->TagCount = MAX_TABLE_TAG-1; -+ return FALSE; -+ } -+ } -+ -+ /* Read in size from header */ -+ Icc->Seek(Icc, 0); -+ Icc->Read(&profileSize, sizeof(icUInt32Number), 1, Icc); -+ AdjustEndianess32((LPBYTE) &profileSize); -+ -+ /* Compute the change in profile size */ -+ if (isNew) -+ delta = sizeof(icTag) + ALIGNLONG(size); -+ else -+ delta = ALIGNLONG(size) - ALIGNLONG(Icc->TagSizes[idx]); -+ -+ /* Add tag to internal structures */ -+ ptr = malloc(size); -+ CopyMemory(ptr, data, size); -+ Icc->TagSizes[idx] = size; -+ Icc->TagNames[idx] = sig; -+ if (Icc->TagPtrs[idx]) -+ free(Icc->TagPtrs[idx]); -+ Icc->TagPtrs[idx] = ptr; -+ if (isNew) -+ Icc->TagOffsets[idx] = profileSize; -+ -+ /* Compute size of tag data before/after the modified tag */ -+ beforeSize = Icc->TagOffsets[idx] - Icc->TagOffsets[0]; -+ if (Icc->TagCount == (idx + 1)) -+ afterSize = 0; -+ else -+ afterSize = profileSize - Icc->TagOffsets[idx+1]; -+ -+ /* Make copies of the data before/after the modified tag */ -+ if (beforeSize > 0) -+ { -+ beforeBuf = malloc(beforeSize); -+ Icc->Seek(Icc, Icc->TagOffsets[0]); -+ Icc->Read(beforeBuf, beforeSize, 1, Icc); -+ } -+ -+ if (afterSize > 0) -+ { -+ afterBuf = malloc(afterSize); -+ Icc->Seek(Icc, Icc->TagOffsets[idx+1]); -+ Icc->Read(afterBuf, afterSize, 1, Icc); -+ } -+ -+ /* Update the profile size in the header */ -+ profileSize += delta; -+ Icc->Seek(Icc, 0); -+ temp = TransportValue32(profileSize); -+ Icc->Write(Icc, sizeof(icUInt32Number), &temp); -+ -+ Icc->Grow(Icc, delta); -+ -+ /* Adjust tag offsets: if the tag is new, we must account -+ for the new tag table entry; otherwise, only those tags after -+ the modified tag are changed (by delta) */ -+ if (isNew) -+ { -+ for (i = 0; i < Icc->TagCount; ++i) -+ Icc->TagOffsets[i] += sizeof(icTag); -+ } -+ else -+ { -+ for (i = idx+1; i < Icc->TagCount; ++i) -+ Icc->TagOffsets[i] += delta; -+ } -+ -+ /* Write out a new tag table */ -+ count = 0; -+ for (i = 0; i < Icc->TagCount; ++i) -+ { -+ if (Icc->TagNames[i] != 0) -+ ++count; -+ } -+ Icc->Seek(Icc, sizeof(icHeader)); -+ temp = TransportValue32(count); -+ Icc->Write(Icc, sizeof(icUInt32Number), &temp); -+ -+ for (i = 0; i < Icc->TagCount; ++i) -+ { -+ if (Icc->TagNames[i] != 0) -+ { -+ icTag tag; -+ tag.sig = TransportValue32(Icc->TagNames[i]); -+ tag.offset = TransportValue32((icInt32Number) Icc->TagOffsets[i]); -+ tag.size = TransportValue32((icInt32Number) Icc->TagSizes[i]); -+ Icc->Write(Icc, sizeof(icTag), &tag); -+ } -+ } -+ -+ /* Write unchanged data before the modified tag */ -+ if (beforeSize > 0) -+ { -+ Icc->Write(Icc, beforeSize, beforeBuf); -+ free(beforeBuf); -+ } -+ -+ /* Write modified tag data */ -+ Icc->Write(Icc, size, data); -+ if (size % 4) -+ Icc->Write(Icc, 4 - (size % 4), padChars); -+ -+ /* Write unchanged data after the modified tag */ -+ if (afterSize > 0) -+ { -+ Icc->Write(Icc, afterSize, afterBuf); -+ free(afterBuf); -+ } -+ -+ return TRUE; -+ } -+ diff -r 8306580ee906 -r 16c322628d9f patches/icedtea-color-createcontext.patch --- a/patches/icedtea-color-createcontext.patch Fri Sep 12 15:20:06 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -*** openjdk/jdk/src/share/classes/java/awt/Color.java.orig 2008-04-02 17:12:00.000000000 -0700 ---- openjdk/jdk/src/share/classes/java/awt/Color.java 2008-04-02 17:29:29.000000000 -0700 -*************** public class Color implements Paint, jav -*** 251,256 **** ---- 251,262 ---- - */ - private ColorSpace cs = null; - -+ /** -+ * The PaintContext for this solid color. -+ * @see #createContext -+ */ -+ private transient PaintContext context; -+ - /* - * JDK 1.1 serialVersionUID - */ -*************** public class Color implements Paint, jav -*** 1205,1211 **** - Rectangle2D r2d, - AffineTransform xform, - RenderingHints hints) { -! return new ColorPaintContext(getRGB(), cm); - } - - /** ---- 1211,1219 ---- - Rectangle2D r2d, - AffineTransform xform, - RenderingHints hints) { -! if (context == null || !context.getColorModel().equals(cm)) -! context = new ColorPaintContext(getRGB(), cm); -! return context; - } - - /** diff -r 8306580ee906 -r 16c322628d9f patches/icedtea-corba.patch --- a/patches/icedtea-corba.patch Fri Sep 12 15:20:06 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ ---- openjdk.old/corba/make/org/omg/CORBA/Makefile 2007-10-12 03:49:14.000000000 -0400 -+++ openjdk/corba/make/org/omg/CORBA/Makefile 2007-11-06 13:57:24.000000000 -0500 -@@ -49,7 +49,10 @@ - FILES_java = \ - $(ORG_OMG_SENDINGCONTEXT_java) \ - $(ORG_OMG_CORBA_2_3_java) \ -- $(ORG_OMG_CORBA_java) -+ $(ORG_OMG_CORBA_java) \ -+ $(org_omg_SENDINGCONTEXT_java) \ -+ $(org_omg_CORBA_2_3_java) \ -+ $(org_omg_CORBA_java) - - # - # Include diff -r 8306580ee906 -r 16c322628d9f patches/icedtea-directaudio-close-trick.patch --- a/patches/icedtea-directaudio-close-trick.patch Fri Sep 12 15:20:06 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,193 +0,0 @@ ---- /home/mark/src/openjdk/jdk/src/share/classes/com/sun/media/sound/DirectAudioDevice.java 2008-04-13 01:05:30.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/media/sound/DirectAudioDevice.java 2008-05-09 02:18:21.000000000 +0200 -@@ -394,7 +394,12 @@ - private float leftGain, rightGain; - protected volatile boolean noService = false; // do not run the nService method - -+ // Guards all native calls. - protected Object lockNative = new Object(); From doko at ubuntu.com Sat Oct 18 21:23:13 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:13 +0000 Subject: changeset in /hg/icedtea: 2008-09-12 Matthias Klose changeset a26c5e78d8f4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=a26c5e78d8f4 description: 2008-09-12 Matthias Klose * generated/com/sun/corba/se/impl/logging/*: Regenerate. diffstat: 11 files changed, 39 insertions(+), 8 deletions(-) ChangeLog | 1 generated/com/sun/corba/se/impl/logging/ActivationSystemException.java | 2 generated/com/sun/corba/se/impl/logging/IORSystemException.java | 2 generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java | 2 generated/com/sun/corba/se/impl/logging/LogStrings.properties | 1 generated/com/sun/corba/se/impl/logging/NamingSystemException.java | 2 generated/com/sun/corba/se/impl/logging/OMGSystemException.java | 2 generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java | 30 +++++++++- generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource | 1 generated/com/sun/corba/se/impl/logging/POASystemException.java | 2 generated/com/sun/corba/se/impl/logging/UtilSystemException.java | 2 diffs (164 lines): diff -r 16c322628d9f -r a26c5e78d8f4 ChangeLog --- a/ChangeLog Fri Sep 12 22:35:46 2008 +0200 +++ b/ChangeLog Fri Sep 12 23:25:49 2008 +0200 @@ -15,6 +15,7 @@ 2008-09-12 Matthias Klose Xerxes R??nby diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/ActivationSystemException.java --- a/generated/com/sun/corba/se/impl/logging/ActivationSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/ActivationSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group ACTIVATION // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Activation.mc on Sun Jun 22 23:48:17 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Activation.mc on Fri Sep 12 21:18:58 GMT 2008 package com.sun.corba.se.impl.logging ; diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/IORSystemException.java --- a/generated/com/sun/corba/se/impl/logging/IORSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/IORSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group IOR // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/IOR.mc on Sun Jun 22 23:48:17 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/IOR.mc on Fri Sep 12 21:18:58 GMT 2008 package com.sun.corba.se.impl.logging ; diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java --- a/generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group INTERCEPTORS // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Interceptors.mc on Sun Jun 22 23:48:17 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Interceptors.mc on Fri Sep 12 21:18:58 GMT 2008 package com.sun.corba.se.impl.logging ; diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/LogStrings.properties --- a/generated/com/sun/corba/se/impl/logging/LogStrings.properties Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/LogStrings.properties Fri Sep 12 23:25:49 2008 +0200 @@ -294,6 +294,7 @@ ORBUTIL.securityExceptionInAccept="IOP00 ORBUTIL.securityExceptionInAccept="IOP00410214: (COMM_FAILURE) Unexpected {0}, has permissions {1}" ORBUTIL.transportReadTimeoutExceeded="IOP00410215: (COMM_FAILURE) Read of full message failed : bytes requested = {0} bytes read = {1} max wait time = {2} total time spent waiting = {3}" ORBUTIL.createListenerFailed="IOP00410216: (COMM_FAILURE) Unable to create listener thread on the specified port: {0}" +ORBUTIL.bufferReadManagerTimeout="IOP00410217: (COMM_FAILURE) Timeout while reading data in buffer manager" ORBUTIL.badStringifiedIorLen="IOP02410201: (DATA_CONVERSION) A character did not map to the transmission code set" ORBUTIL.badStringifiedIor="IOP02410202: (DATA_CONVERSION) Bad stringified IOR" ORBUTIL.badModifier="IOP02410203: (DATA_CONVERSION) Unable to perform resolve_initial_references due to bad host or port configuration" diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/NamingSystemException.java --- a/generated/com/sun/corba/se/impl/logging/NamingSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/NamingSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group NAMING // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Naming.mc on Sun Jun 22 23:48:18 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Naming.mc on Fri Sep 12 21:18:58 GMT 2008 package com.sun.corba.se.impl.logging ; diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/OMGSystemException.java --- a/generated/com/sun/corba/se/impl/logging/OMGSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/OMGSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for standard exceptions // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/OMG.mc on Sun Jun 22 23:48:18 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/OMG.mc on Fri Sep 12 21:18:59 GMT 2008 package com.sun.corba.se.impl.logging ; diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java --- a/generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group ORBUTIL // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/ORBUtil.mc on Sun Jun 22 23:48:18 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/ORBUtil.mc on Fri Sep 12 21:18:59 GMT 2008 package com.sun.corba.se.impl.logging ; @@ -2627,6 +2627,34 @@ public class ORBUtilSystemException exte return createListenerFailed( CompletionStatus.COMPLETED_NO, null, arg0 ) ; } + public static final int BUFFER_READ_MANAGER_TIMEOUT = SUNVMCID.value + 217 ; + + public COMM_FAILURE bufferReadManagerTimeout( CompletionStatus cs, Throwable t ) { + COMM_FAILURE exc = new COMM_FAILURE( BUFFER_READ_MANAGER_TIMEOUT, cs ) ; + if (t != null) + exc.initCause( t ) ; + + if (logger.isLoggable( Level.WARNING )) { + Object[] parameters = null ; + doLog( Level.WARNING, "ORBUTIL.bufferReadManagerTimeout", + parameters, ORBUtilSystemException.class, exc ) ; + } + + return exc ; + } + + public COMM_FAILURE bufferReadManagerTimeout( CompletionStatus cs ) { + return bufferReadManagerTimeout( cs, null ) ; + } + + public COMM_FAILURE bufferReadManagerTimeout( Throwable t ) { + return bufferReadManagerTimeout( CompletionStatus.COMPLETED_NO, t ) ; + } + + public COMM_FAILURE bufferReadManagerTimeout( ) { + return bufferReadManagerTimeout( CompletionStatus.COMPLETED_NO, null ) ; + } + /////////////////////////////////////////////////////////// // DATA_CONVERSION /////////////////////////////////////////////////////////// diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource --- a/generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource Fri Sep 12 23:25:49 2008 +0200 @@ -87,6 +87,7 @@ ORBUTIL.securityExceptionInAccept="IOP00 ORBUTIL.securityExceptionInAccept="IOP00410214: (COMM_FAILURE) Unexpected {0}, has permissions {1}" ORBUTIL.transportReadTimeoutExceeded="IOP00410215: (COMM_FAILURE) Read of full message failed : bytes requested = {0} bytes read = {1} max wait time = {2} total time spent waiting = {3}" ORBUTIL.createListenerFailed="IOP00410216: (COMM_FAILURE) Unable to create listener thread on the specified port: {0}" +ORBUTIL.bufferReadManagerTimeout="IOP00410217: (COMM_FAILURE) Timeout while reading data in buffer manager" ORBUTIL.badStringifiedIorLen="IOP02410201: (DATA_CONVERSION) A character did not map to the transmission code set" ORBUTIL.badStringifiedIor="IOP02410202: (DATA_CONVERSION) Bad stringified IOR" ORBUTIL.badModifier="IOP02410203: (DATA_CONVERSION) Unable to perform resolve_initial_references due to bad host or port configuration" diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/POASystemException.java --- a/generated/com/sun/corba/se/impl/logging/POASystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/POASystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group POA // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/POA.mc on Sun Jun 22 23:48:19 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/POA.mc on Fri Sep 12 21:18:59 GMT 2008 package com.sun.corba.se.impl.logging ; diff -r 16c322628d9f -r a26c5e78d8f4 generated/com/sun/corba/se/impl/logging/UtilSystemException.java --- a/generated/com/sun/corba/se/impl/logging/UtilSystemException.java Fri Sep 12 22:35:46 2008 +0200 +++ b/generated/com/sun/corba/se/impl/logging/UtilSystemException.java Fri Sep 12 23:25:49 2008 +0200 @@ -1,7 +1,7 @@ // Log wrapper class for Sun private system exceptions in group UTIL // // Generated by MC.java version 1.0, DO NOT EDIT BY HAND! -// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Util.mc on Sun Jun 22 23:48:19 BST 2008 +// Generated from input file ../../../../src/share/classes/com/sun/corba/se/spi/logging/data/Util.mc on Fri Sep 12 21:18:59 GMT 2008 package com.sun.corba.se.impl.logging ; From doko at ubuntu.com Sat Oct 18 21:23:14 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:14 +0000 Subject: changeset in /hg/icedtea: 2008-09-12 Matthias Klose changeset c46e727121a8 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=c46e727121a8 description: 2008-09-12 Matthias Klose * Makefile.am, HACKING: Update for b12 zero patch. * patches/icedtea-hotspot-6b11-7b24.patch: Remove. * patches/icedtea-hotspot-6b12-7b24.patch: New. diffstat: 4 files changed, 56987 insertions(+), 2 deletions(-) ChangeLog | 6 HACKING | 2 Makefile.am | 2 patches/icedtea-hotspot-6b12-7b24.patch |56979 +++++++++++++++++++++++++++++++ diffs (truncated from 57020 to 500 lines): diff -r f2a1e7f88c53 -r c46e727121a8 ChangeLog --- a/ChangeLog Fri Sep 12 23:30:45 2008 +0100 +++ b/ChangeLog Sat Sep 13 09:32:12 2008 +0200 @@ -1,3 +1,9 @@ 2008-09-12 Andrew John Hughes + + * Makefile.am, HACKING: Update for b12 zero patch. + * patches/icedtea-hotspot-6b11-7b24.patch: Remove. + * patches/icedtea-hotspot-6b12-7b24.patch: New. + 2008-09-12 Andrew John Hughes * Makefile.am: diff -r f2a1e7f88c53 -r c46e727121a8 HACKING --- a/HACKING Fri Sep 12 23:30:45 2008 +0100 +++ b/HACKING Sat Sep 13 09:32:12 2008 +0200 @@ -83,7 +83,7 @@ The following patches are only applied f * icedtea-bytecodeInterpreter.patch: Replace fast opcodes with opc_default. * icedtea-bytecodeInterpreterWithChecks.patch: Same as icedtea-xslfix.patch (OpenJDK6 only, S6707485). * icedtea-eclipse-hotspot-6614100-7b24.patch: Fix Eclipse crash (S6614100). Fixed in OpenJDK7 b29/hs13. -* icedtea-hotspot-6b11-7b24.patch: Upgrade to HotSpot from OpenJDK b24 (OpenJDK6 only). +* icedtea-hotspot-6b12-7b24.patch: Upgrade to HotSpot from OpenJDK b24 (OpenJDK6 only). - Never edit this patch. It should be regenerated by unzipping the openjdk6 build you're using into openjdk6, and the openjdk7 build you want to use into openjdk, then running: diff -r f2a1e7f88c53 -r c46e727121a8 Makefile.am --- a/Makefile.am Fri Sep 12 23:30:45 2008 +0100 +++ b/Makefile.am Sat Sep 13 09:32:12 2008 +0200 @@ -415,7 +415,7 @@ endif # If ZERO_BUILD is set then we are building zero and need # to patch up to OpenJDK 7 HotSpot for the C++ interpreter. ZERO_PATCHES = \ - patches/icedtea-hotspot-6b11-7b24.patch \ + patches/icedtea-hotspot-6b12-7b24.patch \ patches/icedtea-hotspot7-build-fixes.patch \ patches/icedtea-bytecodeInterpreter.patch \ patches/icedtea-bytecodeInterpreterWithChecks.patch \ diff -r f2a1e7f88c53 -r c46e727121a8 patches/icedtea-hotspot-6b12-7b24.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-hotspot-6b12-7b24.patch Sat Sep 13 09:32:12 2008 +0200 @@ -0,0 +1,56979 @@ +diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/BuildConfig.java openjdk/hotspot/src/share/tools/MakeDeps/BuildConfig.java +--- openjdk6/hotspot/src/share/tools/MakeDeps/BuildConfig.java 2008-08-28 10:23:06.000000000 +0200 ++++ openjdk/hotspot/src/share/tools/MakeDeps/BuildConfig.java 2007-12-14 08:57:02.000000000 +0100 +@@ -704,6 +704,3 @@ + receiver.add(attr); receiver.add(value); + } + } +- +- +- +diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/Macro.java openjdk/hotspot/src/share/tools/MakeDeps/Macro.java +--- openjdk6/hotspot/src/share/tools/MakeDeps/Macro.java 2008-08-28 10:23:06.000000000 +0200 ++++ openjdk/hotspot/src/share/tools/MakeDeps/Macro.java 2007-12-14 08:57:02.000000000 +0100 +@@ -26,4 +26,3 @@ + public String name; + public String contents; + } +- +diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/Platform.java openjdk/hotspot/src/share/tools/MakeDeps/Platform.java +--- openjdk6/hotspot/src/share/tools/MakeDeps/Platform.java 2008-08-28 10:23:06.000000000 +0200 ++++ openjdk/hotspot/src/share/tools/MakeDeps/Platform.java 2007-12-14 08:57:02.000000000 +0100 +@@ -169,7 +169,7 @@ + + /** max is 31 on mac, so warn */ + public int fileNameLengthLimit() { +- return 40; ++ return 45; + } + + public int defaultGrandIncludeThreshold() { +diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java +--- openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java 2008-08-28 10:23:06.000000000 +0200 ++++ openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java 2007-12-14 08:57:02.000000000 +0100 +@@ -236,7 +236,7 @@ + " /nologo /base:\"0x8000000\" /subsystem:windows /dll" + + " /export:JNI_GetDefaultJavaVMInitArgs /export:JNI_CreateJavaVM /export:JNI_GetCreatedJavaVMs "+ + " /export:jio_snprintf /export:jio_printf /export:jio_fprintf /export:jio_vfprintf "+ +- " /export:jio_vsnprintf /export:JVM_EnqueueOperation "); ++ " /export:jio_vsnprintf "); + rv.add("SUBTRACT LINK32 /pdb:none /map"); + + return rv; +diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java +--- openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java 2008-08-28 10:23:06.000000000 +0200 ++++ openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java 2007-12-14 08:57:02.000000000 +0100 +@@ -262,6 +262,8 @@ + + rv.add(new SpecificNameFilter("JVMTI Generated", new String[] {"^jvmti.+"})); + ++ rv.add(new SpecificNameFilter("C++ Interpreter Generated", new String[] {"^bytecodeInterpreterWithChecks.+"})); ++ + rv.add(new SpecificNameFilter("Include DBs", new String[] {"^includeDB_.+"})); + + // this one is to catch files not caught by other filters +@@ -574,8 +576,7 @@ + "/export:JNI_GetCreatedJavaVMs "+ + "/export:jio_snprintf /export:jio_printf "+ + "/export:jio_fprintf /export:jio_vfprintf "+ +- "/export:jio_vsnprintf "+ +- "/export:JVM_EnqueueOperation "); ++ "/export:jio_vsnprintf "); + addAttr(rv, "AdditionalDependencies", "Wsock32.lib winmm.lib"); + addAttr(rv, "OutputFile", outDll); + addAttr(rv, "LinkIncremental", "1"); +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlc.hpp openjdk/hotspot/src/share/vm/adlc/adlc.hpp +--- openjdk6/hotspot/src/share/vm/adlc/adlc.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/adlc.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)adlc.hpp 1.28 07/05/05 17:04:59 JVM" +-#endif + /* + * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlparse.cpp openjdk/hotspot/src/share/vm/adlc/adlparse.cpp +--- openjdk6/hotspot/src/share/vm/adlc/adlparse.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/adlparse.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)adlparse.cpp 1.205 07/05/05 17:05:00 JVM" +-#endif + /* + * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlparse.hpp openjdk/hotspot/src/share/vm/adlc/adlparse.hpp +--- openjdk6/hotspot/src/share/vm/adlc/adlparse.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/adlparse.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)adlparse.hpp 1.79 07/05/05 17:05:00 JVM" +-#endif + /* + * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -273,5 +270,3 @@ + static bool is_int_token(const char* token, int& intval); + static void trim(char* &token); // trim leading & trailing spaces + }; +- +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/archDesc.cpp openjdk/hotspot/src/share/vm/adlc/archDesc.cpp +--- openjdk6/hotspot/src/share/vm/adlc/archDesc.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/archDesc.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -22,6 +22,7 @@ + // + // + ++ + // archDesc.cpp - Internal format for architecture definition + #include "adlc.hpp" + +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/arena.cpp openjdk/hotspot/src/share/vm/adlc/arena.cpp +--- openjdk6/hotspot/src/share/vm/adlc/arena.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/arena.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)arena.cpp 1.16 07/05/05 17:05:00 JVM" +-#endif + /* + * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -173,4 +170,3 @@ + void CHeapObj::operator delete(void* p){ + free(p); + } +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/arena.hpp openjdk/hotspot/src/share/vm/adlc/arena.hpp +--- openjdk6/hotspot/src/share/vm/adlc/arena.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/arena.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)arena.hpp 1.17 07/05/05 17:05:00 JVM" +-#endif + /* + * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -158,4 +155,3 @@ + size_t size_in_bytes() const { return _size_in_bytes; } + void set_size_in_bytes(size_t size) { _size_in_bytes = size; } + }; +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dfa.cpp openjdk/hotspot/src/share/vm/adlc/dfa.cpp +--- openjdk6/hotspot/src/share/vm/adlc/dfa.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/dfa.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)dfa.cpp 1.83 07/05/05 17:04:59 JVM" +-#endif + /* + * Copyright 1997-2004 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -1022,4 +1019,3 @@ + void ProductionState::print() { + _production.print(print_key, print_production); + } +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dict2.cpp openjdk/hotspot/src/share/vm/adlc/dict2.cpp +--- openjdk6/hotspot/src/share/vm/adlc/dict2.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/dict2.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)dict2.cpp 1.19 07/05/05 17:04:59 JVM" +-#endif + /* + * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -354,5 +351,3 @@ + } + _key = _value = NULL; + } +- +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dict2.hpp openjdk/hotspot/src/share/vm/adlc/dict2.hpp +--- openjdk6/hotspot/src/share/vm/adlc/dict2.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/dict2.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)dict2.hpp 1.16 07/05/05 17:05:01 JVM" +-#endif + /* + * Copyright 1998-2000 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -121,5 +118,3 @@ + }; + + #endif // _DICT_ +- +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/filebuff.cpp openjdk/hotspot/src/share/vm/adlc/filebuff.cpp +--- openjdk6/hotspot/src/share/vm/adlc/filebuff.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/filebuff.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)filebuff.cpp 1.30 07/05/05 17:05:01 JVM" +-#endif + /* + * Copyright 1997-2002 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -297,4 +294,3 @@ + va_end(args); + _AD._no_output = 1; + } +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/filebuff.hpp openjdk/hotspot/src/share/vm/adlc/filebuff.hpp +--- openjdk6/hotspot/src/share/vm/adlc/filebuff.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/filebuff.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)filebuff.hpp 1.27 07/05/05 17:05:01 JVM" +-#endif + /* + * Copyright 1997-2004 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/forms.cpp openjdk/hotspot/src/share/vm/adlc/forms.cpp +--- openjdk6/hotspot/src/share/vm/adlc/forms.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/forms.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)forms.cpp 1.161 07/05/05 17:04:59 JVM" +-#endif + /* + * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -386,4 +383,3 @@ + void SourceForm::output(FILE *fp) { + fprintf(fp,"\n//%s\n%s\n",classname(),(_code?_code:"")); + } +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/forms.hpp openjdk/hotspot/src/share/vm/adlc/forms.hpp +--- openjdk6/hotspot/src/share/vm/adlc/forms.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/forms.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)forms.hpp 1.150 07/05/05 17:05:00 JVM" +-#endif + /* + * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -587,6 +584,3 @@ + void print_asserts(FILE *fp); + void dump(); + }; +- +- +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formsopt.cpp openjdk/hotspot/src/share/vm/adlc/formsopt.cpp +--- openjdk6/hotspot/src/share/vm/adlc/formsopt.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/formsopt.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)formsopt.cpp 1.53 07/05/05 17:05:01 JVM" +-#endif + /* + * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -725,4 +722,3 @@ + void PeepReplace::output(FILE *fp) { // Write info to output files + fprintf(fp,"PeepReplace:\n"); + } +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formsopt.hpp openjdk/hotspot/src/share/vm/adlc/formsopt.hpp +--- openjdk6/hotspot/src/share/vm/adlc/formsopt.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/formsopt.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)formsopt.hpp 1.54 07/05/05 17:05:01 JVM" +-#endif + /* + * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -549,4 +546,3 @@ + void dump(); + void output(FILE *fp); + }; +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formssel.cpp openjdk/hotspot/src/share/vm/adlc/formssel.cpp +--- openjdk6/hotspot/src/share/vm/adlc/formssel.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/formssel.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)formssel.cpp 1.183 07/09/06 15:24:29 JVM" +-#endif + /* + * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -236,23 +233,58 @@ + return _matrule ? _matrule->is_ideal_copy() : 0; + } + +-// Return 'true' if this instruction matches an ideal 'CosD' node ++// Return 'true' if this instruction is too complex to rematerialize. + int InstructForm::is_expensive() const { +- if (_matrule == NULL) return 0; + // We can prove it is cheap if it has an empty encoding. + // This helps with platform-specific nops like ThreadLocal and RoundFloat. ++ if (is_empty_encoding()) ++ return 0; ++ ++ if (is_tls_instruction()) ++ return 1; ++ ++ if (_matrule == NULL) return 0; ++ ++ return _matrule->is_expensive(); ++} ++ ++// Has an empty encoding if _size is a constant zero or there ++// are no ins_encode tokens. ++int InstructForm::is_empty_encoding() const { + if (_insencode != NULL) { + _insencode->reset(); + if (_insencode->encode_class_iter() == NULL) { +- return 0; ++ return 1; + } + } + if (_size != NULL && strcmp(_size, "0") == 0) { ++ return 1; ++ } + return 0; ++} ++ ++int InstructForm::is_tls_instruction() const { ++ if (_ident != NULL && ++ ( ! strcmp( _ident,"tlsLoadP") || ++ ! strncmp(_ident,"tlsLoadP_",9)) ) { ++ return 1; + } +- return _matrule->is_expensive(); ++ ++ if (_matrule != NULL && _insencode != NULL) { ++ const char* opType = _matrule->_opType; ++ if (strcmp(opType, "Set")==0) ++ opType = _matrule->_rChild->_opType; ++ if (strcmp(opType,"ThreadLocal")==0) { ++ fprintf(stderr, "Warning: ThreadLocal instruction %s should be named 'tlsLoadP_*'\n", ++ (_ident == NULL ? "NULL" : _ident)); ++ return 1; ++ } ++ } ++ ++ return 0; + } + ++ + // Return 'true' if this instruction matches an ideal 'Copy*' node + bool InstructForm::is_ideal_unlock() const { + return _matrule ? _matrule->is_ideal_unlock() : false; +@@ -492,6 +524,10 @@ + if( _components.count() == 1 && _components[0]->is(Component::USE_DEF) ) + rematerialize = true; + ++ // Pseudo-constants (values easily available to the runtime) ++ if (is_empty_encoding() && is_tls_instruction()) ++ rematerialize = true; ++ + // 1-input, 1-output, such as copies or increments. + if( _components.count() == 2 && + _components[0]->is(Component::DEF) && +@@ -1171,9 +1207,9 @@ + // Output the format call for this operand + fprintf(fp,"opnd_array(%d)->",idx); + if (idx == 0) +- fprintf(fp,"int_format(ra, this); // %s\n", rep_var); ++ fprintf(fp,"int_format(ra, this, st); // %s\n", rep_var); + else +- fprintf(fp,"ext_format(ra, this,idx%d); // %s\n", idx, rep_var ); ++ fprintf(fp,"ext_format(ra, this,idx%d, st); // %s\n", idx, rep_var ); + } + } + +@@ -2329,11 +2365,11 @@ + + void OperandForm::format_constant(FILE *fp, uint const_index, uint const_type) { + switch(const_type) { +- case Form::idealI: fprintf(fp,"tty->print(\"#%%d\", _c%d);\n", const_index); break; +- case Form::idealP: fprintf(fp,"_c%d->dump();\n", const_index); break; +- case Form::idealL: fprintf(fp,"tty->print(\"#%%lld\", _c%d);\n", const_index); break; +- case Form::idealF: fprintf(fp,"tty->print(\"#%%f\", _c%d);\n", const_index); break; +- case Form::idealD: fprintf(fp,"tty->print(\"#%%f\", _c%d);\n", const_index); break; ++ case Form::idealI: fprintf(fp,"st->print(\"#%%d\", _c%d);\n", const_index); break; ++ case Form::idealP: fprintf(fp,"_c%d->dump_on(st);\n", const_index); break; ++ case Form::idealL: fprintf(fp,"st->print(\"#%%lld\", _c%d);\n", const_index); break; ++ case Form::idealF: fprintf(fp,"st->print(\"#%%f\", _c%d);\n", const_index); break; ++ case Form::idealD: fprintf(fp,"st->print(\"#%%f\", _c%d);\n", const_index); break; + default: + assert( false, "ShouldNotReachHere()"); + } +@@ -3725,6 +3761,17 @@ + int MatchRule::is_ideal_copy() const { + if( _rChild ) { + const char *opType = _rChild->_opType; ++ if( strcmp(opType,"CastII")==0 ) ++ return 1; ++ // Do not treat *CastPP this way, because it ++ // may transfer a raw pointer to an oop. ++ // If the register allocator were to coalesce this ++ // into a single LRG, the GC maps would be incorrect. ++ //if( strcmp(opType,"CastPP")==0 ) ++ // return 1; ++ //if( strcmp(opType,"CheckCastPP")==0 ) ++ // return 1; ++ // + // Do not treat CastX2P or CastP2X this way, because + // raw pointers and int types are treated differently + // when saving local & stack info for safepoints in +@@ -3773,7 +3820,6 @@ + strcmp(opType,"ConvL2I")==0 || + strcmp(opType,"RoundDouble")==0 || + strcmp(opType,"RoundFloat")==0 || +- strcmp(opType,"ThreadLocal")==0 || + strcmp(opType,"ReverseBytesI")==0 || + strcmp(opType,"ReverseBytesL")==0 || + strcmp(opType,"Replicate16B")==0 || +@@ -3951,4 +3997,3 @@ + fprintf(fp,"\nFormat Rule: \n%s", (_temp?_temp:"")); + fprintf(fp,"\n"); + } +- +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formssel.hpp openjdk/hotspot/src/share/vm/adlc/formssel.hpp +--- openjdk6/hotspot/src/share/vm/adlc/formssel.hpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/formssel.hpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_HDR +-#pragma ident "@(#)formssel.hpp 1.76 07/05/17 15:49:19 JVM" +-#endif + /* + * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -139,6 +136,8 @@ + // ideal opcode enumeration + virtual const char *ideal_Opcode(FormDict &globals) const; + virtual int is_expensive() const; // node matches ideal 'CosD' ++ virtual int is_empty_encoding() const; // _size=0 and/or _insencode empty ++ virtual int is_tls_instruction() const; // tlsLoadP rule or ideal ThreadLocal + virtual int is_ideal_copy() const; // node matches ideal 'Copy*' + virtual bool is_ideal_unlock() const; // node matches ideal 'Unlock' + virtual bool is_ideal_call_leaf() const; // node matches ideal 'CallLeaf' +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/output_c.cpp openjdk/hotspot/src/share/vm/adlc/output_c.cpp +--- openjdk6/hotspot/src/share/vm/adlc/output_c.cpp 2008-08-28 10:23:07.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/adlc/output_c.cpp 2007-12-14 08:57:02.000000000 +0100 +@@ -1,6 +1,3 @@ +-#ifdef USE_PRAGMA_IDENT_SRC +-#pragma ident "@(#)output_c.cpp 1.184 07/05/17 15:49:23 JVM" +-#endif + /* + * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +@@ -2199,7 +2196,7 @@ + const char* reg_conversion(const char* rep_var) { + if (strcmp(rep_var,"$Register") == 0) return "as_Register"; + if (strcmp(rep_var,"$FloatRegister") == 0) return "as_FloatRegister"; +-#if defined(IA32) ++#if defined(IA32) || defined(AMD64) + if (strcmp(rep_var,"$XMMRegister") == 0) return "as_XMMRegister"; + #endif + return NULL; +diff -ruNb openjdk6/hotspot/src/share/vm/adlc/output_h.cpp openjdk/hotspot/src/share/vm/adlc/output_h.cpp +--- openjdk6/hotspot/src/share/vm/adlc/output_h.cpp 2008-08-28 10:23:07.000000000 +0200 From dbhole at redhat.com Sat Oct 18 21:23:17 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:17 +0000 Subject: changeset in /hg/icedtea: - Refactor java-side of icedtea code f... Message-ID: changeset 5cf4df1bc010 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=5cf4df1bc010 description: - Refactor java-side of icedtea code for proper security management - Remove most new files from iced tea plugin patch, and move it to a directory diffstat: 62 files changed, 7629 insertions(+), 2758 deletions(-) Makefile.am | 22 plugin/icedtea/java/src/main/netscape/javascript/JSException.java | 140 + plugin/icedtea/java/src/main/netscape/javascript/JSObject.java | 258 + plugin/icedtea/java/src/main/netscape/javascript/JSProxy.java | 58 plugin/icedtea/java/src/main/netscape/javascript/JSRunnable.java | 70 plugin/icedtea/java/src/main/netscape/javascript/JSUtil.java | 59 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 ++++++ plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginMain.java | 193 + plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 ++ plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/TestEnv.java | 172 + plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/java/src/main/sun/applet/AppletAudioClip.java | 151 + plugin/icedtea/java/src/main/sun/applet/AppletClassLoader.java | 861 ++++++ plugin/icedtea/java/src/main/sun/applet/AppletEvent.java | 65 plugin/icedtea/java/src/main/sun/applet/AppletEventMulticaster.java | 127 plugin/icedtea/java/src/main/sun/applet/AppletIOException.java | 59 plugin/icedtea/java/src/main/sun/applet/AppletIllegalArgumentException.java | 48 plugin/icedtea/java/src/main/sun/applet/AppletImageRef.java | 54 plugin/icedtea/java/src/main/sun/applet/AppletListener.java | 39 plugin/icedtea/java/src/main/sun/applet/AppletMessageHandler.java | 113 plugin/icedtea/java/src/main/sun/applet/AppletObjectInputStream.java | 106 plugin/icedtea/java/src/main/sun/applet/AppletPanel.java | 1334 ++++++++++ plugin/icedtea/java/src/main/sun/applet/AppletProps.java | 221 + plugin/icedtea/java/src/main/sun/applet/AppletResourceLoader.java | 48 plugin/icedtea/java/src/main/sun/applet/AppletSecurity.java | 371 ++ plugin/icedtea/java/src/main/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/java/src/main/sun/applet/AppletSecurityContextManager.java | 27 plugin/icedtea/java/src/main/sun/applet/AppletSecurityException.java | 65 plugin/icedtea/java/src/main/sun/applet/AppletThreadGroup.java | 64 plugin/icedtea/java/src/main/sun/applet/AppletViewerFactory.java | 41 plugin/icedtea/java/src/main/sun/applet/AppletViewerPanel.java | 254 + plugin/icedtea/java/src/main/sun/applet/GetMemberPluginCallRequest.java | 72 plugin/icedtea/java/src/main/sun/applet/GetWindowPluginCallRequest.java | 66 plugin/icedtea/java/src/main/sun/applet/Main.java | 533 +++ plugin/icedtea/java/src/main/sun/applet/PluginAppletSecurityContext.java | 847 ------ plugin/icedtea/java/src/main/sun/applet/PluginAppletViewer.java | 384 +- plugin/icedtea/java/src/main/sun/applet/PluginCallRequest.java | 31 plugin/icedtea/java/src/main/sun/applet/PluginCallRequestFactory.java | 7 plugin/icedtea/java/src/main/sun/applet/PluginClassLoader.java | 13 plugin/icedtea/java/src/main/sun/applet/PluginDebug.java | 2 plugin/icedtea/java/src/main/sun/applet/PluginException.java | 7 plugin/icedtea/java/src/main/sun/applet/PluginMain.java | 533 --- plugin/icedtea/java/src/main/sun/applet/PluginMessageConsumer.java | 49 plugin/icedtea/java/src/main/sun/applet/PluginMessageHandlerWorker.java | 59 plugin/icedtea/java/src/main/sun/applet/PluginObjectStore.java | 119 plugin/icedtea/java/src/main/sun/applet/PluginStreamHandler.java | 20 plugin/icedtea/java/src/main/sun/applet/TestEnv.java | 172 - plugin/icedtea/java/src/main/sun/applet/VoidPluginCallRequest.java | 62 rt/net/sourceforge/jnlp/Launcher.java | 1 rt/net/sourceforge/jnlp/runtime/JNLPRuntime.java | 4 rt/netscape/javascript/JSException.java | 140 - rt/netscape/javascript/JSObject.java | 258 - rt/netscape/javascript/JSProxy.java | 58 rt/netscape/javascript/JSRunnable.java | 70 rt/netscape/javascript/JSUtil.java | 59 diffs (truncated from 11003 to 500 lines): diff -r 30b1dbd707d5 -r 5cf4df1bc010 Makefile.am --- a/Makefile.am Sun Sep 21 15:58:46 2008 -0400 +++ b/Makefile.am Tue Sep 23 16:33:17 2008 -0400 @@ -16,11 +16,13 @@ ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch +LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/java/src/main else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = ICEDTEAPLUGIN_JAR = PLUGIN_PATCH = patches/icedtea-plugin.patch +LIVECONNECT = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -578,7 +580,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta else \ test x$${all_patches_ok} = "xyes" && all_patches_ok=$$p ; \ fi ; \ - done ; + done ; \ mv stamps/patch.stamp.tmp stamps/patch.stamp ; \ if ! test x$${all_patches_ok} = "xyes"; then \ echo ERROR patch $${all_patches_ok} FAILED! ; \ @@ -909,12 +911,6 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ cp -pPRf IcedTeaPlugin.jar \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/ - - $(JAR) uf $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/rt.jar \ - -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun - - $(JAR) uf $(BUILD_OUTPUT_DIR)/j2re-image/lib/rt.jar \ - -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -970,12 +966,6 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ cp -pPRf IcedTeaPlugin.jar \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ - - $(JAR) uf $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/rt.jar \ - -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun - - $(JAR) uf $(BUILD_OUTPUT_DIR)/j2re-image/lib/rt.jar \ - -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -1207,8 +1197,8 @@ bootstrap/jdk1.7.0/jre/lib/tools.jar: st # rt-closed.jar class files. rt-source-files.txt: stamps/extract.stamp stamps/copy-source-files.stamp - find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt -name '*.java' \ - $(EXCLUDE_LIVECONNECT) \ + find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT) -name '*.java' \ + $(EXCLUDE_LIVECONNECT) \ | sort -u > $@ stamps/rt-class-files.stamp: rt-source-files.txt @@ -1337,7 +1327,7 @@ IcedTeaPlugin.jar: $(ICEDTEA_BOOT_DIR)/bin/javac -g \ -d ../../../../../$(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ -bootclasspath $(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar \ - sun/applet/*.java netscape/javascript/*.java org/classpath/icedtea/plugin/*.java \ + netscape/javascript/*.java org/classpath/icedtea/plugin/*.java \ ) $(JAR) cf $@ \ diff -r 30b1dbd707d5 -r 5cf4df1bc010 plugin/icedtea/java/src/main/netscape/javascript/JSException.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugin/icedtea/java/src/main/netscape/javascript/JSException.java Tue Sep 23 16:33:17 2008 -0400 @@ -0,0 +1,140 @@ +/* -*- Mode: Java; tab-width: 8; c-basic-offset: 4 -*- + * + * ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code, released + * March 31, 1998. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either of the GNU General Public License Version 2 or later (the "GPL"), + * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +package netscape.javascript; + +/** + * JSException is an exception which is thrown when JavaScript code + * returns an error. + */ + +public +class JSException extends RuntimeException { + public static final int EXCEPTION_TYPE_EMPTY = -1; + public static final int EXCEPTION_TYPE_VOID = 0; + public static final int EXCEPTION_TYPE_OBJECT = 1; + public static final int EXCEPTION_TYPE_FUNCTION = 2; + public static final int EXCEPTION_TYPE_STRING = 3; + public static final int EXCEPTION_TYPE_NUMBER = 4; + public static final int EXCEPTION_TYPE_BOOLEAN = 5; + public static final int EXCEPTION_TYPE_ERROR = 6; + + public String filename; + public int lineno; + public String source; + public int tokenIndex; + public int wrappedExceptionType; + public Object wrappedException; + + /** + * Constructs a JSException without a detail message. + * A detail message is a String that describes this particular exception. + * + * @deprecated Not for public use in future versions. + */ + public JSException() { + super(); + filename = "unknown"; + lineno = 0; + source = ""; + tokenIndex = 0; + wrappedExceptionType = EXCEPTION_TYPE_EMPTY; + } + + /** + * Constructs a JSException with a detail message. + * A detail message is a String that describes this particular exception. + * @param s the detail message + * + * @deprecated Not for public use in future versions. + */ + public JSException(String s) { + super(s); + filename = "unknown"; + lineno = 0; + source = ""; + tokenIndex = 0; + wrappedExceptionType = EXCEPTION_TYPE_EMPTY; + } + + /** + * Constructs a JSException with a wrapped JavaScript exception object. + * This constructor needs to be public so that Java users can throw + * exceptions to JS cleanly. + */ + public JSException(int wrappedExceptionType, Object wrappedException) { + super(); + this.wrappedExceptionType = wrappedExceptionType; + this.wrappedException = wrappedException; + } + + /** + * Constructs a JSException with a detail message and all the + * other info that usually comes with a JavaScript error. + * @param s the detail message + * + * @deprecated Not for public use in future versions. + */ + public JSException(String s, String filename, int lineno, + String source, int tokenIndex) { + super(s); + this.filename = filename; + this.lineno = lineno; + this.source = source; + this.tokenIndex = tokenIndex; + wrappedExceptionType = EXCEPTION_TYPE_EMPTY; + } + + /** + * Instance method getWrappedExceptionType returns the int mapping of the + * type of the wrappedException Object. + */ + public int getWrappedExceptionType() { + return wrappedExceptionType; + } + + /** + * Instance method getWrappedException. + */ + public Object getWrappedException() { + return wrappedException; + } + +} + diff -r 30b1dbd707d5 -r 5cf4df1bc010 plugin/icedtea/java/src/main/netscape/javascript/JSObject.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugin/icedtea/java/src/main/netscape/javascript/JSObject.java Tue Sep 23 16:33:17 2008 -0400 @@ -0,0 +1,258 @@ +/* -*- Mode: Java; tab-width: 8; c-basic-offset: 4 -*- + * + * ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code, released + * March 31, 1998. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either of the GNU General Public License Version 2 or later (the "GPL"), + * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +/* more doc todo: + * threads + * gc + * + * + */ + +package netscape.javascript; + +import java.applet.Applet; +import java.io.IOException; +import sun.applet.PluginAppletViewer; + +/** + * JSObject allows Java to manipulate objects that are + * defined in JavaScript. + * Values passed from Java to JavaScript are converted as + * follows:
    + *
  • JSObject is converted to the original JavaScript object + *
  • Any other Java object is converted to a JavaScript wrapper, + * which can be used to access methods and fields of the java object. + * Converting this wrapper to a string will call the toString method + * on the original object, converting to a number will call the + * doubleValue method if possible and fail otherwise. Converting + * to a boolean will try to call the booleanValue method in the + * same way. + *
  • Java arrays are wrapped with a JavaScript object that understands + * array.length and array[index] + *
  • A Java boolean is converted to a JavaScript boolean + *
  • Java byte, char, short, int, long, float, and double are converted + * to JavaScript numbers + *
+ * Values passed from JavaScript to Java are converted as follows:
    + *
  • objects which are wrappers around java objects are unwrapped + *
  • other objects are wrapped with a JSObject + *
  • strings, numbers and booleans are converted to String, Double, + * and Boolean objects respectively + *
+ * This means that all JavaScript values show up as some kind + * of java.lang.Object in Java. In order to make much use of them, + * you will have to cast them to the appropriate subclass of Object, + * e.g. (String) window.getMember("name"); or + * (JSObject) window.getMember("document");. + */ +public final class JSObject { + /* the internal object data */ + private int internal; + private long long_internal; + + /** + * initialize + */ + private static void initClass() { + System.err.println ("JSObject.initClass"); + } + + static { + System.err.println ("JSObject INITIALIZER"); + } + + /** + * it is illegal to construct a JSObject manually + */ + // FIXME: make private! + public JSObject(int jsobj_addr) { + System.err.println ("JSObject int CONSTRUCTOR"); + internal = jsobj_addr; + } + + private JSObject(long jsobj_addr) { + System.err.println ("JSObject long CONSTRUCTOR"); + long_internal = jsobj_addr; + } + + /** + * Retrieves a named member of a JavaScript object. + * Equivalent to "this.name" in JavaScript. + */ + public Object getMember(String name) + { + System.err.println ("JSObject.getMember " + name); + + Object o = PluginAppletViewer.getMember(internal, name); + System.out.println ("JSObject.getMember GOT " + o); + return o; + } + + + /** + * Retrieves an indexed member of a JavaScript object. + * Equivalent to "this[index]" in JavaScript. + */ + // public Object getMember(int index) { return getSlot(index); } + public Object getSlot(int index) + { + System.err.println ("JSObject.getSlot " + index); + + return PluginAppletViewer.getSlot(internal, index); + } + + + /** + * Sets a named member of a JavaScript object. + * Equivalent to "this.name = value" in JavaScript. + */ + public void setMember(String name, Object value) + { + System.err.println ("JSObject.setMember " + name + " " + value); + + PluginAppletViewer.setMember(internal, name, value); + } + + /** + * Sets an indexed member of a JavaScript object. + * Equivalent to "this[index] = value" in JavaScript. + */ + // public void setMember(int index, Object value) { + // setSlot(index, value); + // } + public void setSlot(int index, Object value) + { + System.err.println ("JSObject.setSlot " + index + " " + value); + + PluginAppletViewer.setSlot(internal, index, value); + } + + + // TODO: toString, finalize. + + /** + * Removes a named member of a JavaScript object. + */ + public void removeMember(String name) + { + System.err.println ("JSObject.removeMember " + name); + + PluginAppletViewer.removeMember(internal, name); + } + + + /** + * Calls a JavaScript method. + * Equivalent to "this.methodName(args[0], args[1], ...)" in JavaScript. + */ + public Object call(String methodName, Object args[]) + { + System.err.print ("JSObject.call " + methodName); + for (int i = 0; i < args.length; i++) + System.err.print (" " + args[i]); + System.err.println(""); + return PluginAppletViewer.call(internal, methodName, args); + } + + + /** + * Evaluates a JavaScript expression. The expression is a string + * of JavaScript source code which will be evaluated in the context + * given by "this". + */ + public Object eval(String s) + { + System.err.println("JSObject.eval " + s); + return PluginAppletViewer.eval(internal, s); + } + + + /** + * Converts a JSObject to a String. + */ + public String toString() + { + System.err.println("JSObject.toString"); + return PluginAppletViewer.javascriptToString(internal); + } + + + // should use some sort of identifier rather than String + // is "property" the right word? + // native String[] listProperties(); + + + /** + * get a JSObject for the window containing the given applet + */ + public static JSObject getWindow(Applet applet) + { + System.err.println("JSObject.getWindow"); + // FIXME: handle long case as well. + int internal = 0; + internal = ((PluginAppletViewer) + applet.getAppletContext()).getWindow(); + System.out.println ("GOT IT: " + internal); + return new JSObject(internal); + } + + + /** + * Finalization decrements the reference count on the corresponding + * JavaScript object. + */ + protected void finalize() + { + System.err.println("JSObject.finalize "); + PluginAppletViewer.JavaScriptFinalize(internal); + } + + + /** + * Override java.lang.Object.equals() because identity is not preserved + * with instances of JSObject. + */ + public boolean equals(Object obj) + { + System.err.println("JSObject.equals " + obj); + + return false; + } + +} diff -r 30b1dbd707d5 -r 5cf4df1bc010 plugin/icedtea/java/src/main/netscape/javascript/JSProxy.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugin/icedtea/java/src/main/netscape/javascript/JSProxy.java Tue Sep 23 16:33:17 2008 -0400 @@ -0,0 +1,58 @@ +/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code, released + * March 31, 1998. + * From langel at redhat.com Sat Oct 18 21:23:15 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:15 +0000 Subject: changeset in /hg/icedtea: 2008-09-18 Lillian Angel changeset 8e3089767a4a in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8e3089767a4a description: 2008-09-18 Lillian Angel * AUTHORS: Added Marc Schoenefeld. 2008-09-18 Marc Schoenefeld * patches/icedtea-messageutils.patch: New patch fixes JVM crashes when calling on sun.misc.MessageUtils.toStderr(null) and sun.misc.MessageUtils.toStdout(null) . It now prompts the string "null" to the console. * Makefile.am: Added patch above. diffstat: 4 files changed, 28 insertions(+), 2 deletions(-) AUTHORS | 1 + ChangeLog | 14 +++++++++++++- Makefile.am | 3 ++- patches/icedtea-messageutils.patch | 12 ++++++++++++ diffs (61 lines): diff -r 1c7da2861925 -r 8e3089767a4a AUTHORS --- a/AUTHORS Mon Sep 15 17:21:14 2008 -0400 +++ b/AUTHORS Thu Sep 18 11:31:59 2008 -0400 @@ -15,6 +15,7 @@ Dan Munckton Dan Munckton Raif Naffah Bernhard Rosenkr??nzer +Marc Schoenefeld Keith Seitz Joshua Sumali Christian Thalinger diff -r 1c7da2861925 -r 8e3089767a4a ChangeLog --- a/ChangeLog Mon Sep 15 17:21:14 2008 -0400 +++ b/ChangeLog Thu Sep 18 11:31:59 2008 -0400 @@ -1,4 +1,16 @@ 2008-08-26 Deepak Bhole +2008-09-18 Lillian Angel + + * AUTHORS: Added Marc Schoenefeld. + +2008-09-18 Marc Schoenefeld + + * patches/icedtea-messageutils.patch: New patch fixes JVM crashes + when calling on sun.misc.MessageUtils.toStderr(null) and + sun.misc.MessageUtils.toStdout(null) . It now prompts + the string "null" to the console. + * Makefile.am: Added patch above. + +2008-09-16 Deepak Bhole * IcedTeaPlugin.cc: Allow access to applet classloader from JS on that site. Fix right-click lag by temporarily disabling status messages. diff -r 1c7da2861925 -r 8e3089767a4a Makefile.am --- a/Makefile.am Mon Sep 15 17:21:14 2008 -0400 +++ b/Makefile.am Thu Sep 18 11:31:59 2008 -0400 @@ -499,7 +499,8 @@ ICEDTEA_PATCHES = \ $(SHARK_PATCH) \ $(GCC_PATCH) \ patches/icedtea-arch.patch \ - patches/icedtea-lc_ctype.patch + patches/icedtea-lc_ctype.patch \ + patches/icedtea-messageutils.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 1c7da2861925 -r 8e3089767a4a patches/icedtea-messageutils.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-messageutils.patch Thu Sep 18 11:31:59 2008 -0400 @@ -0,0 +1,12 @@ +--- openjdk/jdk/src/share/native/sun/misc/MessageUtils.c.orig 2008-09-17 15:17:02.000000000 +0200 ++++ openjdk/jdk/src/share/native/sun/misc/MessageUtils.c 2008-09-17 15:56:07.000000000 +0200 +@@ -39,6 +39,9 @@ printToFile(JNIEnv *env, jstring s, FILE + int i; + const jchar *sAsArray; + ++ if (s == NULL) { ++ s = (*env)->NewStringUTF(env, "null\0"); ++ } + sAsArray = (*env)->GetStringChars(env, s, NULL); + length = (*env)->GetStringLength(env, s); + sConverted = (char *) malloc(length + 1); From dbhole at redhat.com Sat Oct 18 21:23:17 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:17 +0000 Subject: changeset in /hg/icedtea: More refactoring. Moved classes to a s... Message-ID: changeset abdb5c94757d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=abdb5c94757d description: More refactoring. Moved classes to a shorter path, removed classes provided by the JDK tarball (they were there by mistake). diffstat: 76 files changed, 5756 insertions(+), 10252 deletions(-) ChangeLog | 50 Makefile.am | 4 patches/icedtea-plugin.patch | 1294 ++++++++ plugin/gcj/java/src/main/sun/applet/PluginAppletViewer.java | 1008 ------ plugin/gcj/java/src/main/sun/applet/PluginMain.java | 274 - plugin/icedtea/java/src/main/netscape/javascript/JSException.java | 140 plugin/icedtea/java/src/main/netscape/javascript/JSObject.java | 258 - plugin/icedtea/java/src/main/netscape/javascript/JSProxy.java | 58 plugin/icedtea/java/src/main/netscape/javascript/JSRunnable.java | 70 plugin/icedtea/java/src/main/netscape/javascript/JSUtil.java | 59 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 ----- plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginMain.java | 193 - plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 -- plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/TestEnv.java | 172 - plugin/icedtea/java/src/main/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/java/src/main/sun/applet/AppletAudioClip.java | 151 - plugin/icedtea/java/src/main/sun/applet/AppletClassLoader.java | 861 ----- plugin/icedtea/java/src/main/sun/applet/AppletEvent.java | 65 plugin/icedtea/java/src/main/sun/applet/AppletEventMulticaster.java | 127 plugin/icedtea/java/src/main/sun/applet/AppletIOException.java | 59 plugin/icedtea/java/src/main/sun/applet/AppletIllegalArgumentException.java | 48 plugin/icedtea/java/src/main/sun/applet/AppletImageRef.java | 54 plugin/icedtea/java/src/main/sun/applet/AppletListener.java | 39 plugin/icedtea/java/src/main/sun/applet/AppletMessageHandler.java | 113 plugin/icedtea/java/src/main/sun/applet/AppletObjectInputStream.java | 106 plugin/icedtea/java/src/main/sun/applet/AppletPanel.java | 1334 --------- plugin/icedtea/java/src/main/sun/applet/AppletProps.java | 221 - plugin/icedtea/java/src/main/sun/applet/AppletResourceLoader.java | 48 plugin/icedtea/java/src/main/sun/applet/AppletSecurity.java | 371 -- plugin/icedtea/java/src/main/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/java/src/main/sun/applet/AppletSecurityContextManager.java | 27 plugin/icedtea/java/src/main/sun/applet/AppletSecurityException.java | 65 plugin/icedtea/java/src/main/sun/applet/AppletThreadGroup.java | 64 plugin/icedtea/java/src/main/sun/applet/AppletViewerFactory.java | 41 plugin/icedtea/java/src/main/sun/applet/AppletViewerPanel.java | 254 - plugin/icedtea/java/src/main/sun/applet/Main.java | 533 --- plugin/icedtea/java/src/main/sun/applet/PluginAppletViewer.java | 1481 ---------- plugin/icedtea/java/src/main/sun/applet/PluginCallRequest.java | 85 plugin/icedtea/java/src/main/sun/applet/PluginCallRequestFactory.java | 7 plugin/icedtea/java/src/main/sun/applet/PluginClassLoader.java | 13 plugin/icedtea/java/src/main/sun/applet/PluginDebug.java | 13 plugin/icedtea/java/src/main/sun/applet/PluginException.java | 15 plugin/icedtea/java/src/main/sun/applet/PluginStreamHandler.java | 20 plugin/icedtea/netscape/javascript/JSException.java | 140 plugin/icedtea/netscape/javascript/JSObject.java | 258 + plugin/icedtea/netscape/javascript/JSProxy.java | 58 plugin/icedtea/netscape/javascript/JSRunnable.java | 70 plugin/icedtea/netscape/javascript/JSUtil.java | 59 plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 +++++ plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java | 193 + plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 ++ plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java | 172 + plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 27 plugin/icedtea/sun/applet/PluginAppletViewer.java | 1481 ++++++++++ plugin/icedtea/sun/applet/PluginCallRequest.java | 85 plugin/icedtea/sun/applet/PluginCallRequestFactory.java | 7 plugin/icedtea/sun/applet/PluginClassLoader.java | 13 plugin/icedtea/sun/applet/PluginDebug.java | 13 plugin/icedtea/sun/applet/PluginException.java | 15 plugin/icedtea/sun/applet/PluginStreamHandler.java | 20 diffs (truncated from 16340 to 500 lines): diff -r 5cf4df1bc010 -r abdb5c94757d ChangeLog --- a/ChangeLog Tue Sep 23 16:33:17 2008 -0400 +++ b/ChangeLog Tue Sep 23 16:52:24 2008 -0400 @@ -1,3 +1,53 @@ 2008-09-18 Lillian Angel + * Makefile.am: Update to create new IcedTeaPlugin.jar + * patches/icedtea-liveconnect.patch: Update patch and remove all new .java + files + * plugin/icedtea/java/src/main/netscape/javascript/JSException.java: Moved + out of rt/ overlay. + * plugin/icedtea/java/src/main/netscape/javascript/JSObject.java: Same. + * plugin/icedtea/java/src/main/netscape/javascript/JSProxy.java: Same. + * plugin/icedtea/java/src/main/netscape/javascript/JSRunnable.java: Same. + * plugin/icedtea/java/src/main/netscape/javascript/JSUtil.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java: + Moved out of icedtea-liveconnect.patch and refactored. + * plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java: + Same. + * plugin/icedtea/sun/applet/AppletSecurityContext.java: Same. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Same. + * plugin/icedtea/sun/applet/PluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/PluginCallRequestFactory.java: Same. + * plugin/icedtea/sun/applet/PluginClassLoader.java: Same. + * plugin/icedtea/sun/applet/PluginDebug.java: Same. + * plugin/icedtea/sun/applet/PluginException.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Same. + * rt/net/sourceforge/jnlp/Launcher.java: Print exception trace if launch + fails. + * rt/net/sourceforge/jnlp/runtime/JNLPRuntime.java: Set ServiceManagerStub + before SecurityManager is set. + * rt/netscape/javascript/JSException.java: Move to plugin/icedtea dir. + * rt/netscape/javascript/JSObject.java: Same. + * rt/netscape/javascript/JSProxy.java: Same. + * rt/netscape/javascript/JSRunnable.java: Same. + * rt/netscape/javascript/JSUtil.java: Same. + 2008-09-18 Lillian Angel * AUTHORS: Added Marc Schoenefeld. diff -r 5cf4df1bc010 -r abdb5c94757d Makefile.am --- a/Makefile.am Tue Sep 23 16:33:17 2008 -0400 +++ b/Makefile.am Tue Sep 23 16:52:24 2008 -0400 @@ -16,7 +16,7 @@ ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch -LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/java/src/main +LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = @@ -1323,7 +1323,7 @@ IcedTeaPlugin.so: IcedTeaPlugin.o # icedtea plugin jar for java-side classes IcedTeaPlugin.jar: mkdir -p $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes - (cd plugin/icedtea/java/src/main/; \ + (cd plugin/icedtea/; \ $(ICEDTEA_BOOT_DIR)/bin/javac -g \ -d ../../../../../$(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ -bootclasspath $(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar \ diff -r 5cf4df1bc010 -r abdb5c94757d patches/icedtea-plugin.patch --- a/patches/icedtea-plugin.patch Tue Sep 23 16:33:17 2008 -0400 +++ b/patches/icedtea-plugin.patch Tue Sep 23 16:52:24 2008 -0400 @@ -1,6 +1,6 @@ diff -urN openjdk.orig/jdk/make/launcher diff -urN openjdk.orig/jdk/make/launchers/Makefile openjdk/jdk/make/launchers/Makefile ---- openjdk.orig/jdk/make/launchers/Makefile 2008-07-10 15:54:41.000000000 -0400 -+++ openjdk/jdk/make/launchers/Makefile 2008-09-18 14:21:46.000000000 -0400 +--- openjdk.orig/jdk/make/launchers/Makefile 2008-06-29 09:40:07.000000000 -0400 ++++ openjdk/jdk/make/launchers/Makefile 2008-06-29 09:40:16.000000000 -0400 @@ -92,6 +92,7 @@ -J-Dcom.sun.CORBA.activation.Port=1049 \ -J-Dcom.sun.CORBA.POA.ORBServerId=1, ) @@ -9,3 +9,1293 @@ diff -urN openjdk.orig/jdk/make/launcher $(call make-launcher, policytool, sun.security.tools.PolicyTool, , ) $(call make-launcher, rmic, sun.rmi.rmic.Main, , ) $(call make-launcher, rmid, sun.rmi.server.Activation, , ) +diff -urN openjdk.orig/jdk/src/share/classes/sun/applet/PluginMain.java openjdk/jdk/src/share/classes/sun/applet/PluginMain.java +--- openjdk.orig/jdk/src/share/classes/sun/applet/PluginMain.java 1969-12-31 19:00:00.000000000 -0500 ++++ openjdk/jdk/src/share/classes/sun/applet/PluginMain.java 2008-01-14 14:18:53.000000000 -0500 +@@ -0,0 +1,274 @@ ++/* ++ * Copyright 1999-2006 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. Sun designates this ++ * particular file as subject to the "Classpath" exception as provided ++ * by Sun in the LICENSE file that accompanied this code. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++package sun.applet; ++ ++import java.io.*; ++import java.lang.reflect.Method; ++import java.lang.reflect.InvocationTargetException; ++import java.net.*; ++import java.nio.charset.Charset; ++import java.util.*; ++import sun.net.www.ParseUtil; ++ ++class PluginParseRequest ++{ ++ long handle; ++ String tag; ++ String documentbase; ++ boolean alreadySent; ++} ++ ++/** ++ * The main entry point into PluginAppletViewer. ++ */ ++public class PluginMain ++{ ++ // A mapping of instance IDs to PluginAppletViewers. ++ private static HashMap appletWindows = new HashMap(); ++ private static HashMap parseRequests = new HashMap(); ++ private static String currentKey; ++ private static PluginAppletViewer currentWindow; ++ private static PluginParseRequest currentRequest; ++ private static BufferedReader pluginInputStream; ++ private static BufferedWriter pluginOutputStream; ++ // This is used in init(). Getting rid of this is desirable but depends ++ // on whether the property that uses it is necessary/standard. ++ public static final String theVersion = System.getProperty("java.version"); ++ ++ /** ++ * The main entry point into AppletViewer. ++ */ ++ public static void main(String args[]) ++ throws IOException ++ { ++ if(args.length != 2) { ++ // Indicate to plugin that appletviewer is installed correctly. ++ System.exit(0); ++ } ++ // INSTALL THE SECURITY MANAGER ++ init(); ++ start(new FileInputStream(args[0]), new FileOutputStream(args[1])); ++ System.exit(0); ++ } ++ ++ private static void init() { ++ Properties avProps = new Properties(); ++ ++ // ADD OTHER RANDOM PROPERTIES ++ // XXX 5/18 need to revisit why these are here, is there some ++ // standard for what is available? ++ ++ // Standard browser properties ++ avProps.put("browser", "sun.applet.AppletViewer"); ++ avProps.put("browser.version", "1.06"); ++ avProps.put("browser.vendor", "Sun Microsystems Inc."); ++ avProps.put("http.agent", "Java(tm) 2 SDK, Standard Edition v" + theVersion); ++ ++ // Define which packages can be extended by applets ++ // XXX 5/19 probably not needed, not checked in AppletSecurity ++ avProps.put("package.restrict.definition.java", "true"); ++ avProps.put("package.restrict.definition.sun", "true"); ++ ++ // Define which properties can be read by applets. ++ // A property named by "key" can be read only when its twin ++ // property "key.applet" is true. The following ten properties ++ // are open by default. Any other property can be explicitly ++ // opened up by the browser user by calling appletviewer with ++ // -J-Dkey.applet=true ++ avProps.put("java.version.applet", "true"); ++ avProps.put("java.vendor.applet", "true"); ++ avProps.put("java.vendor.url.applet", "true"); ++ avProps.put("java.class.version.applet", "true"); ++ avProps.put("os.name.applet", "true"); ++ avProps.put("os.version.applet", "true"); ++ avProps.put("os.arch.applet", "true"); ++ avProps.put("file.separator.applet", "true"); ++ avProps.put("path.separator.applet", "true"); ++ avProps.put("line.separator.applet", "true"); ++ ++ // Read in the System properties. If something is going to be ++ // over-written, warn about it. ++ Properties sysProps = System.getProperties(); ++ for (Enumeration e = sysProps.propertyNames(); e.hasMoreElements(); ) { ++ String key = (String) e.nextElement(); ++ String val = (String) sysProps.getProperty(key); ++ avProps.setProperty(key, val); ++ } ++ ++ // INSTALL THE PROPERTY LIST ++ System.setProperties(avProps); ++ ++ // Create and install the security manager ++ System.setSecurityManager(new AppletSecurity()); ++ ++ // REMIND: Create and install a socket factory! ++ } ++ ++ static void registerWindow(PluginAppletViewer pluginappletviewer) ++ { ++ appletWindows.put(currentKey, pluginappletviewer); ++ currentWindow = (PluginAppletViewer)appletWindows.get(currentKey); ++ } ++ ++ private static void deregisterWindow(PluginAppletViewer pluginappletviewer) ++ { ++ appletWindows.remove(currentWindow); ++ currentWindow.dispose(); ++ currentWindow = null; ++ } ++ ++ static void start(InputStream inputstream, OutputStream outputstream) ++ throws MalformedURLException, IOException ++ { ++ // Set up input and output pipes. Use UTF-8 encoding. ++ pluginInputStream = ++ new BufferedReader(new InputStreamReader(inputstream, ++ Charset.forName("UTF-8"))); ++ pluginOutputStream = ++ new BufferedWriter(new OutputStreamWriter ++ (outputstream, Charset.forName("UTF-8"))); ++ ++ write("running"); ++ ++ // Read first message. ++ String message = read(); ++ ++ while(true) { ++ if (message.startsWith("instance")) { ++ // Read applet instance identifier. ++ currentKey = message.substring("instance".length() + 1); ++ currentWindow = ++ (PluginAppletViewer)appletWindows.get(currentKey); ++ currentRequest = null; ++ if (currentWindow == null) { ++ if (!parseRequests.containsKey(currentKey)) ++ parseRequests.put(currentKey, new PluginParseRequest()); ++ currentRequest = ++ (PluginParseRequest)parseRequests.get(currentKey); ++ } ++ } else if (message.startsWith("tag")) { ++ if (currentRequest != null) { ++ int index = message.indexOf(' ', "tag".length() + 1); ++ currentRequest.documentbase = ++ message.substring("tag".length() + 1, index); ++ currentRequest.tag = message.substring(index + 1); ++ if (currentRequest.handle != 0 ++ && !currentRequest.alreadySent) { ++ PluginAppletViewer.parse ++ (currentRequest.handle, 1, 1, ++ new StringReader(currentRequest.tag), ++ new URL(currentRequest.documentbase)); ++ parseRequests.remove(currentKey); ++ } ++ } ++ } else if (message.startsWith("handle")) { ++ if (currentRequest != null) { ++ currentRequest.handle = Long.parseLong ++ (message.substring("handle".length() + 1, ++ message.indexOf("width") - 1)); ++ int width = Integer.parseInt(message.substring ++ (message.indexOf("width") + ++ "width".length() + 1, ++ message.indexOf("height") - 1)); ++ int height = Integer.parseInt(message.substring( ++ message.indexOf("height") + ++ "height".length() + 1)); ++ if (currentRequest.tag != null ++ && !currentRequest.alreadySent) { ++ PluginAppletViewer.parse ++ (currentRequest.handle, width, height, ++ new StringReader(currentRequest.tag), ++ new URL(currentRequest.documentbase)); ++ parseRequests.remove(currentKey); ++ } ++ } ++ } else if (message.startsWith("width")) { ++ int width = ++ Integer.parseInt(message.substring("width".length() + 1)); ++ int height = currentWindow.getHeight(); ++ currentWindow.updateAtts(width, height); ++ currentWindow.setSize(width, height); ++ } else if (message.startsWith("height")) { ++ int height = ++ Integer.parseInt(message.substring("height".length() + 1)); ++ int width = currentWindow.getWidth(); ++ currentWindow.updateAtts(width, height); ++ currentWindow.setSize(width, height); ++ } else if (message.startsWith("destroy") ++ && currentWindow != null) { ++ deregisterWindow(currentWindow); ++ } ++ ++ // Read next message. ++ message = read(); ++ } ++ } ++ ++ /** ++ * Write string to plugin. ++ * ++ * @param message the message to write ++ * ++ * @exception IOException if an error occurs ++ */ ++ static void write(String message) ++ throws IOException ++ { ++ pluginOutputStream.write(message, 0, message.length()); ++ pluginOutputStream.newLine(); ++ pluginOutputStream.flush(); ++ ++ System.err.println(" PIPE: appletviewer wrote: " + message); ++ } ++ ++ /** ++ * Read string from plugin. ++ * ++ * @return the read string ++ * ++ * @exception IOException if an error occurs ++ */ ++ static String read() ++ throws IOException ++ { ++ String message = pluginInputStream.readLine(); ++ System.err.println(" PIPE: appletviewer read: " + message); ++ if (message == null || message.equals("shutdown")) { ++ try { ++ // Close input/output channels to plugin. ++ pluginInputStream.close(); ++ pluginOutputStream.close(); ++ } catch (IOException exception) { ++ // Deliberately ignore IOException caused by broken ++ // pipe since plugin may have already detached. ++ } ++ ++ System.err.println("APPLETVIEWER: exiting appletviewer"); ++ System.exit(0); ++ } ++ return message; ++ } ++} +diff -urN openjdk.orig/jdk/src/share/classes/sun/applet/PluginAppletViewer.java openjdk/jdk/src/share/classes/sun/applet/PluginAppletViewer.java +--- openjdk.orig/jdk/src/share/classes/sun/applet/PluginAppletViewer.java 2008-06-24 22:55:57.286013713 -0400 ++++ openjdk/jdk/src/share/classes/sun/applet/PluginAppletViewer.java 2008-06-29 10:34:07.000000000 -0400 +@@ -0,0 +1,1008 @@ ++/* ++ * Copyright 1995-2004 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. Sun designates this ++ * particular file as subject to the "Classpath" exception as provided ++ * by Sun in the LICENSE file that accompanied this code. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++package sun.applet; ++ ++import java.util.*; ++import java.io.*; ++import java.awt.*; ++import java.awt.event.*; ++import java.awt.print.*; ++import javax.print.attribute.*; ++import java.applet.*; ++import java.net.URL; ++import java.net.MalformedURLException; ++import java.net.SocketPermission; ++import sun.misc.Ref; ++import java.security.AccessController; ++import java.security.PrivilegedAction; ++import java.lang.reflect.InvocationTargetException; ++import java.lang.reflect.Method; ++import sun.awt.SunToolkit; ++import sun.awt.AppContext; ++import sun.awt.X11.*; ++import java.lang.ref.WeakReference; ++import net.sourceforge.jnlp.NetxPanel; ++ ++/** ++ * Lets us construct one using unix-style one shot behaviors ++ */ ++ ++class PluginAppletViewerFactory ++{ ++ public PluginAppletViewer createAppletViewer(long handle, int x, int y, ++ URL doc, Hashtable atts) { ++ PluginAppletViewer pluginappletviewer = new PluginAppletViewer(handle, x, y, doc, atts, System.out, this); ++ PluginMain.registerWindow(pluginappletviewer); ++ return pluginappletviewer; ++ } ++ ++ public boolean isStandalone() ++ { ++ return false; ++ } ++} ++ ++/* ++ */ ++public class PluginAppletViewer extends XEmbeddedFrame ++ implements AppletContext, Printable { ++ /** ++ * Some constants... ++ */ ++ private static String defaultSaveFile = "Applet.ser"; ++ ++ /** ++ * The panel in which the applet is being displayed. ++ */ ++ AppletViewerPanel panel; ++ ++ /** ++ * The status line. ++ */ ++ Label label; ++ ++ /** ++ * output status messages to this stream ++ */ ++ ++ PrintStream statusMsgStream; ++ ++ /** ++ * For cloning ++ */ ++ PluginAppletViewerFactory factory; ++ ++ /** ++ * Create the applet viewer ++ */ ++ public PluginAppletViewer(long handle, int x, int y, final URL doc, ++ final Hashtable atts, PrintStream statusMsgStream, ++ PluginAppletViewerFactory factory) { ++ super(handle, true); ++ this.factory = factory; ++ this.statusMsgStream = statusMsgStream; ++ ++ try { ++ panel = new NetxPanel(doc, atts); ++ AppletViewerPanel.debug("Using NetX panel"); ++ } catch (Exception ex) { ++ AppletViewerPanel.debug("Unable to start NetX applet - defaulting to Sun applet", ex); ++ panel = new AppletViewerPanel(doc, atts); ++ } ++ add("Center", panel); ++ panel.init(); ++ appletPanels.addElement(panel); ++ ++ pack(); ++ setVisible(true); ++ ++ WindowListener windowEventListener = new WindowAdapter() { ++ ++ public void windowClosing(WindowEvent evt) { From dbhole at redhat.com Sat Oct 18 21:23:15 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:15 +0000 Subject: changeset in /hg/icedtea: - Allow access to applet classloader f... Message-ID: changeset adaf3f0d6262 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=adaf3f0d6262 description: - Allow access to applet classloader from JS on that site (http://czateria.interia.pl/czat,room,70,Warszawa). - Fix right-click lag by temporarily disabling status messages (any page with an applet...). - Fix it so that applets with no height/width specifications can load. - Fix hangs caused when Java->JS calls happened rapidly (http://www.rgagnon.com/examples/testcookie.html) diffstat: 3 files changed, 590 insertions(+), 355 deletions(-) ChangeLog | 8 IcedTeaPlugin.cc | 163 +++++-- patches/icedtea-liveconnect.patch | 774 ++++++++++++++++++++++--------------- diffs (truncated from 1730 to 500 lines): diff -r 02fc4b7ada3d -r adaf3f0d6262 ChangeLog --- a/ChangeLog Mon Sep 15 11:20:54 2008 -0400 +++ b/ChangeLog Mon Sep 15 17:11:17 2008 -0400 @@ -1,3 +1,11 @@ 2008-09-15 Lillian Angel + + * IcedTeaPlugin.cc: Allow access to applet classloader from JS on that + site. Fix right-click lag by temporarily disabling status messages. + * patches/icedtea-liveconnect.patch: Allow access to applet classloader + from JS on that site. Fix it so that applets with no height/width + specifications can load. + 2008-09-15 Lillian Angel * patches/icedtea-lc_ctype.patch: Fixed array size and diff -r 02fc4b7ada3d -r adaf3f0d6262 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Sep 15 11:20:54 2008 -0400 +++ b/IcedTeaPlugin.cc Mon Sep 15 17:11:17 2008 -0400 @@ -308,20 +308,30 @@ char const* TYPES[10] = { "Object", "double", "void" }; +#include + // FIXME: create index from security context. #define MESSAGE_CREATE(reference) \ + const char* addr; \ + GetCurrentPageAddress(&addr); \ +\ nsCString message ("context "); \ message.AppendInt (0); \ message += " reference "; \ message.AppendInt (reference); \ + if (factory->codebase_map.find(nsCString(addr)) != factory->codebase_map.end()) \ + { \ + message += " src "; \ + message += factory->codebase_map[nsCString(addr)];\ + } \ message += " "; \ message += __func__; \ - if (factory->resultMap[reference] == NULL) { \ - factory->resultMap[reference] = new ResultContainer(); \ - printf("ResultMap created -- %p %d\n", factory->resultMap[reference], factory->resultMap[reference]->returnIdentifier); \ + if (factory->result_map[reference] == NULL) { \ + factory->result_map[reference] = new ResultContainer(); \ + printf("ResultMap created -- %p %d\n", factory->result_map[reference], factory->result_map[reference]->returnIdentifier); \ } \ else \ - factory->resultMap[reference]->Clear(); + factory->result_map[reference]->Clear(); #define MESSAGE_ADD_STRING(name) \ @@ -387,7 +397,7 @@ char const* TYPES[10] = { "Object", #define PROCESS_PENDING_EVENTS_REF(reference) \ if (factory->shutting_down == PR_TRUE && \ - factory->resultMap[reference]->errorOccured == PR_TRUE) \ + factory->result_map[reference]->errorOccured == PR_TRUE) \ { \ printf("Error occured. Exiting function\n"); \ return NS_ERROR_FAILURE; \ @@ -414,46 +424,46 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_REFERENCE(reference, cast, name) \ nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ - while (factory->resultMap[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ - if (factory->resultMap[reference]->returnIdentifier == 0) \ + if (factory->result_map[reference]->returnIdentifier == 0) \ { \ *name = NULL; \ } else { \ *name = \ reinterpret_cast \ - (factory->references.ReferenceObject (factory->resultMap[reference]->returnIdentifier)); \ + (factory->references.ReferenceObject (factory->result_map[reference]->returnIdentifier)); \ } \ printf ("RECEIVE_REFERENCE: %s result: %x = %d\n", \ - __func__, *name, factory->resultMap[reference]->returnIdentifier); + __func__, *name, factory->result_map[reference]->returnIdentifier); // FIXME: track and free JNIIDs. #define MESSAGE_RECEIVE_ID(reference, cast, id, signature) \ PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ - while (factory->resultMap[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ *id = reinterpret_cast \ - (new JNIID (factory->resultMap[reference]->returnIdentifier, signature)); \ + (new JNIID (factory->result_map[reference]->returnIdentifier, signature)); \ printf ("RECEIVE_ID: %s result: %x = %d, %s\n", \ - __func__, *id, factory->resultMap[reference]->returnIdentifier, \ + __func__, *id, factory->result_map[reference]->returnIdentifier, \ signature); #define MESSAGE_RECEIVE_VALUE(reference, ctype, result) \ nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ - while (factory->resultMap[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "") \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = ParseValue (type, factory->resultMap[reference]->returnValue); + *result = ParseValue (type, factory->result_map[reference]->returnValue); // \ // char* valueString = ValueString (type, *result); \ // printf ("RECEIVE_VALUE: %s result: %x = %s\n", \ @@ -465,12 +475,12 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ - while (factory->resultMap[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "") \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - *result = factory->resultMap[reference]->returnValue.ToInteger (&conversionResult); \ + *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ PLUGIN_CHECK ("parse integer", conversionResult); // \ // printf ("RECEIVE_SIZE: %s result: %x = %d\n", \ @@ -481,13 +491,13 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ - while (factory->resultMap[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "") \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - printf("Setting result to: %s\n", strdup (factory->resultMap[reference]->returnValue.get ())); \ + printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ *result = reinterpret_cast \ - (strdup (factory->resultMap[reference]->returnValue.get ())); + (strdup (factory->result_map[reference]->returnValue.get ())); // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ // __func__, result, *result); @@ -497,15 +507,15 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ - while (factory->resultMap[reference]->returnValueUCS.IsEmpty()) \ + while (factory->result_map[reference]->returnValueUCS.IsEmpty()) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - int length = factory->resultMap[reference]->returnValueUCS.Length (); \ + int length = factory->result_map[reference]->returnValueUCS.Length (); \ jchar* newstring = static_cast (PR_Malloc (length)); \ memset (newstring, 0, length); \ - memcpy (newstring, factory->resultMap[reference]->returnValueUCS.get (), length); \ - std::cout << "Setting result to: " << factory->resultMap[reference]->returnValueUCS.get() << std::endl; \ + memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ + std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ *result = static_cast (newstring); // \ @@ -516,11 +526,11 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ - while (factory->resultMap[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = factory->resultMap[reference]->returnIdentifier; + *result = factory->result_map[reference]->returnIdentifier; // res = factory->current->ProcessNextEvent (PR_TRUE, \ // &processed); \ // PLUGIN_CHECK_RETURN (__func__, res); \ @@ -767,7 +777,7 @@ public: // FIXME: make private? JNIEnv* proxyEnv; nsISecureEnv* secureEnv; - std::map resultMap; + std::map result_map; void GetMember (); void SetMember (); void GetSlot (); @@ -778,6 +788,7 @@ public: void Finalize (); void ToString (); nsCOMPtr liveconnect; + std::map codebase_map; private: ~IcedTeaPluginFactory(); @@ -828,7 +839,6 @@ private: class IcedTeaEventSink; - class IcedTeaPluginInstance : public nsIPluginInstance, public nsIJVMPluginInstance { @@ -1139,6 +1149,7 @@ private: int IncrementContextCounter(); void DecrementContextCounter(); + void GetCurrentPageAddress(const char **addr); int contextCounter; }; @@ -2068,6 +2079,29 @@ IcedTeaPluginInstance::Initialize (nsIPl NS_ADDREF (aPeer); printf ("DONE SETTING PEER!!!: %p\n", aPeer); +// if (factory->codebase_map[nsCString(documentbase)] != NULL) +// { +// printf("Found %s in map and it is %s\n", nsCString(documentbase), factory->codebase_map[nsCString(documentbase)].get()); +// +// } + + nsCString dbase(documentbase); + if (factory->codebase_map.find(dbase) != factory->codebase_map.end()) + { + factory->codebase_map[dbase] += ","; + factory->codebase_map[dbase].AppendInt(instance_identifier); + + printf("Appended: %s to %s\n", factory->codebase_map[dbase].get(), documentbase); + + } else + { + nsCString str; + str.AppendInt(instance_identifier); + factory->codebase_map[dbase] = str; + + printf("Creating and adding %s to %s and we now have: %s\n", str.get(), documentbase, factory->codebase_map.find(dbase)->second.get()); + } + return NS_OK; } @@ -2138,9 +2172,8 @@ IcedTeaPluginInstance::SetWindow (nsPlug printf("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - while (initialized == PR_FALSE) { + while (initialized == PR_FALSE) { PROCESS_PENDING_EVENTS; -// printf("waiting for java object\n"); } printf("Instance %p initialization complete...\n", this); @@ -2308,7 +2341,7 @@ IcedTeaPluginFactory::GetJavaObject (PRU objectMessage.AppendInt (reference); objectMessage += " GetJavaObject"; printf ("Sending object message: %s\n", objectMessage.get()); - resultMap[reference] = new ResultContainer(); + result_map[reference] = new ResultContainer(); SendMessageToAppletViewer (objectMessage); PRBool processed = PR_FALSE; @@ -2439,8 +2472,8 @@ IcedTeaPluginFactory::HandleMessage (nsC { IcedTeaPluginInstance* instance = NULL; instances.Get (identifier, &instance); - if (instance != 0) - instance->peer->ShowStatus (nsCString (rest).get ()); +// if (instance != 0) +// instance->peer->ShowStatus (nsCString (rest).get ()); } else if (command == "initialized") { @@ -2658,7 +2691,7 @@ IcedTeaPluginFactory::HandleMessage (nsC else if (command == "Error") { printf("Error occured. Setting error flag for container @ %d to true\n", reference); - resultMap[reference]->errorOccured = PR_TRUE; + result_map[reference]->errorOccured = PR_TRUE; } } else if (prefix == "context") @@ -2694,9 +2727,9 @@ IcedTeaPluginFactory::HandleMessage (nsC || command == "NewGlobalRef" || command == "NewArray") { - resultMap[reference]->returnIdentifier = rest.ToInteger (&conversionResult); + result_map[reference]->returnIdentifier = rest.ToInteger (&conversionResult); PLUGIN_CHECK ("parse integer", conversionResult); - printf ("GOT RETURN IDENTIFIER %d\n", resultMap[reference]->returnIdentifier); + printf ("GOT RETURN IDENTIFIER %d\n", result_map[reference]->returnIdentifier); } else if (command == "GetField" @@ -2710,8 +2743,8 @@ IcedTeaPluginFactory::HandleMessage (nsC // if (returnValue != "") // PLUGIN_ERROR ("Return value already defined."); - resultMap[reference]->returnValue = rest; - printf ("PLUGIN GOT RETURN VALUE: %s\n", resultMap[reference]->returnValue.get()); + result_map[reference]->returnValue = rest; + printf ("PLUGIN GOT RETURN VALUE: %s\n", result_map[reference]->returnValue.get()); } else if (command == "GetStringUTFChars") { @@ -2739,8 +2772,8 @@ IcedTeaPluginFactory::HandleMessage (nsC offset - previousOffset).ToInteger (&conversionResult, 16)); PLUGIN_CHECK ("parse integer", conversionResult); } - resultMap[reference]->returnValue = returnValue; - printf ("PLUGIN GOT RETURN UTF-8 STRING: %s\n", resultMap[reference]->returnValue.get ()); + result_map[reference]->returnValue = returnValue; + printf ("PLUGIN GOT RETURN UTF-8 STRING: %s\n", result_map[reference]->returnValue.get ()); } else if (command == "GetStringChars") { @@ -2792,7 +2825,7 @@ IcedTeaPluginFactory::HandleMessage (nsC printf ("?"); } printf ("\n"); - resultMap[reference]->returnValueUCS = returnValueUCS; + result_map[reference]->returnValueUCS = returnValueUCS; } // Do nothing for: SetStaticField, SetField, ExceptionClear, @@ -3726,6 +3759,10 @@ NS_IMPL_ISUPPORTS1 (IcedTeaJNIEnv, nsISe #include #include #include +#include +#include +#include +#include IcedTeaJNIEnv::IcedTeaJNIEnv (IcedTeaPluginFactory* factory) : factory (factory) @@ -3762,6 +3799,29 @@ IcedTeaJNIEnv::DecrementContextCounter ( PR_EnterMonitor(contextCounterPRMonitor); contextCounter--; PR_ExitMonitor(contextCounterPRMonitor); +} + +void +IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) +{ + nsIPrincipal *prin; + nsCOMPtr sec_man(do_GetService("@mozilla.org/scriptsecuritymanager;1")); + + sec_man->GetSubjectPrincipal(&prin); + + if (prin) + { + + nsIURI *uri; + prin->GetURI(&uri); + + if (uri) + { + nsCAutoString str; + uri->GetSpec(str); + NS_CStringGetData(str, addr); + } + } } NS_IMETHODIMP @@ -3781,6 +3841,7 @@ IcedTeaJNIEnv::NewObject (jclass clazz, printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_REFERENCE (reference, jobject, result); DecrementContextCounter (); + return NS_OK; } @@ -3803,6 +3864,7 @@ IcedTeaJNIEnv::CallMethod (jni_type type printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_VALUE (reference, type, result); DecrementContextCounter (); + return NS_OK; } @@ -3816,6 +3878,7 @@ IcedTeaJNIEnv::CallNonvirtualMethod (jni jvalue* result, nsISecurityContext* ctx) { + NOT_IMPLEMENTED (); return NS_ERROR_NOT_IMPLEMENTED; } @@ -3975,7 +4038,7 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv i = 1; stopchar = ')'; } - + // Method. int arg = 0; char* fl; @@ -3999,9 +4062,11 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv retstr.AppendInt (args[arg].s); break; case 'I': + printf("Appending (I @ %d) %d\n", arg, args[arg].i); retstr.AppendInt (args[arg].i); break; case 'J': + printf("Appending (J @ %d) %d\n", arg, args[arg].i); retstr.AppendInt (args[arg].j); break; case 'F': @@ -4011,6 +4076,7 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv retstr += IcedTeaPrintfCString ("%g", args[arg].d); break; case 'L': + std::cout << "Appending for L: arg=" << arg << " args[arg].l=" << args[arg].l << std::endl; retstr.AppendInt (ID (args[arg].l)); i++; while (id->signature[i] != ';') @@ -4044,7 +4110,10 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv printf ("FAILED ID: %d\n", id->identifier); break; } + + retstr += " "; i++; + arg++; } // Freed by calling function. @@ -4067,6 +4136,7 @@ IcedTeaJNIEnv::GetField (jni_type type, printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_VALUE (reference, type, result); DecrementContextCounter (); + return NS_OK; } @@ -4084,7 +4154,7 @@ IcedTeaJNIEnv::SetField (jni_type type, MESSAGE_ADD_ID (fieldID); MESSAGE_ADD_VALUE (fieldID, val); MESSAGE_SEND (); - printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); + return NS_OK; } @@ -4106,6 +4176,7 @@ IcedTeaJNIEnv::CallStaticMethod (jni_typ printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_VALUE (reference, type, result); DecrementContextCounter (); + return NS_OK; } @@ -4125,6 +4196,7 @@ IcedTeaJNIEnv::GetStaticField (jni_type printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_VALUE (reference, type, result); DecrementContextCounter (); + return NS_OK; } @@ -4142,7 +4214,7 @@ IcedTeaJNIEnv::SetStaticField (jni_type MESSAGE_ADD_ID (fieldID); MESSAGE_ADD_VALUE (fieldID, val); MESSAGE_SEND (); - printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); + return NS_OK; } @@ -4799,12 +4871,15 @@ NSGetFactory (nsISupports* aServMgr, nsC PLUGIN_DEBUG("Waiting for factory to be created..."); } + + PLUGIN_DEBUG("NSGetFactory: Returning existing factory"); + *aFactory = factory; NS_ADDREF (factory); } else { factory_created = PR_TRUE; - PLUGIN_DEBUG("Creating factory"); + PLUGIN_DEBUG("NSGetFactory: Creating factory"); factory = new IcedTeaPluginFactory (); if (!factory) return NS_ERROR_OUT_OF_MEMORY; diff -r 02fc4b7ada3d -r adaf3f0d6262 patches/icedtea-liveconnect.patch --- a/patches/icedtea-liveconnect.patch Mon Sep 15 11:20:54 2008 -0400 +++ b/patches/icedtea-liveconnect.patch Mon Sep 15 17:11:17 2008 -0400 @@ -1,6 +1,6 @@ diff -urN openjdk.orig/jdk/make/sun/Make diff -urN openjdk.orig/jdk/make/sun/Makefile openjdk/jdk/make/sun/Makefile --- openjdk.orig/jdk/make/sun/Makefile 2008-07-10 15:54:44.000000000 -0400 From langel at redhat.com Sat Oct 18 21:23:14 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:14 +0000 Subject: changeset in /hg/icedtea: 2008-09-15 Lillian Angel changeset 02fc4b7ada3d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=02fc4b7ada3d description: 2008-09-15 Lillian Angel * patches/icedtea-lc_ctype.patch: Fixed array size and changed to use malloc/free. diffstat: 2 files changed, 21 insertions(+), 4 deletions(-) ChangeLog | 5 +++++ patches/icedtea-lc_ctype.patch | 20 ++++++++++++++++---- diffs (43 lines): diff -r c46e727121a8 -r 02fc4b7ada3d ChangeLog --- a/ChangeLog Sat Sep 13 09:32:12 2008 +0200 +++ b/ChangeLog Mon Sep 15 11:20:54 2008 -0400 @@ -1,3 +1,8 @@ 2008-09-12 Matthias Klose + + * patches/icedtea-lc_ctype.patch: Fixed array size and + changed to use malloc/free. + 2008-09-12 Matthias Klose * Makefile.am, HACKING: Update for b12 zero patch. diff -r c46e727121a8 -r 02fc4b7ada3d patches/icedtea-lc_ctype.patch --- a/patches/icedtea-lc_ctype.patch Sat Sep 13 09:32:12 2008 +0200 +++ b/patches/icedtea-lc_ctype.patch Mon Sep 15 11:20:54 2008 -0400 @@ -1,11 +1,23 @@ ---- java_props_md.c 2008-09-10 12:36:05.000000000 -0400 -+++ openjdk/jdk/src/solaris/native/java/lang/java_props_md.c 2008-09-10 12:36:13.000000000 -0400 -@@ -211,7 +211,7 @@ +--- oldopenjdk6/jdk/src/solaris/native/java/lang/java_props_md.c 2008-08-28 04:15:51.000000000 -0400 ++++ openjdk/jdk/src/solaris/native/java/lang/java_props_md.c 2008-09-15 10:37:26.000000000 -0400 +@@ -211,7 +211,9 @@ * _.@ * , , and are optional. */ - char temp[64]; -+ char temp[strlen(lc)]; ++ char * temp; ++ temp = (char*) malloc(strlen(lc)+1); ++ char *language = NULL, *country = NULL, *variant = NULL, *encoding = NULL; char *std_language = NULL, *std_country = NULL, *std_variant = NULL, +@@ -323,6 +325,9 @@ + /* return same result nl_langinfo would return for en_UK, + * in order to use optimizations. */ + std_encoding = (*p != '\0') ? p : "ISO8859-1"; ++ ++ /* Free temp */ ++ free(temp); + + + #ifdef __linux__ From dbhole at redhat.com Sat Oct 18 21:23:17 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:17 +0000 Subject: changeset in /hg/icedtea: - Update makefile to properly include ... Message-ID: changeset 30567fe7d579 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=30567fe7d579 description: - Update makefile to properly include plugin's sun.applet classes in rt.jar - Update .cc file to call new plugin main call (different hierarchy) - Added a couple of functions to the .cc file to properly recognize context diffstat: 3 files changed, 100 insertions(+), 10 deletions(-) ChangeLog | 2 + IcedTeaPlugin.cc | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++---- Makefile.am | 12 ++++-- diffs (240 lines): diff -r abdb5c94757d -r 30567fe7d579 ChangeLog --- a/ChangeLog Tue Sep 23 16:52:24 2008 -0400 +++ b/ChangeLog Wed Sep 24 11:35:01 2008 -0400 @@ -1,4 +1,6 @@ 2008-09-23 Deepak Bhole + * IcedTeaPlugin.cc: Updated to call new plugin main class. Add function to + correctly recognize JS context. * Makefile.am: Update to create new IcedTeaPlugin.jar * patches/icedtea-liveconnect.patch: Update patch and remove all new .java files diff -r abdb5c94757d -r 30567fe7d579 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Tue Sep 23 16:52:24 2008 -0400 +++ b/IcedTeaPlugin.cc Wed Sep 24 11:35:01 2008 -0400 @@ -244,6 +244,7 @@ static GError* channel_error = NULL; static GError* channel_error = NULL; // Fully-qualified appletviewer executable. static char* appletviewer_executable = NULL; +static char* extra_jars = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -313,7 +314,10 @@ char const* TYPES[10] = { "Object", // FIXME: create index from security context. #define MESSAGE_CREATE(reference) \ const char* addr; \ + char context[16]; \ GetCurrentPageAddress(&addr); \ + GetCurrentContextAddr(context); \ + printf("Addr: %s , Context: %s\n", addr, context);\ \ nsCString message ("context "); \ message.AppendInt (0); \ @@ -1149,7 +1153,8 @@ private: int IncrementContextCounter(); void DecrementContextCounter(); - void GetCurrentPageAddress(const char **addr); + nsresult GetCurrentContextAddr(char *addr); + nsresult GetCurrentPageAddress(const char **addr); int contextCounter; }; @@ -3184,9 +3189,9 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_CHECK_RETURN ("init process", result); // FIXME: hard-coded port number. - char const* args[5] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain", "50007" }; + char const* args[8] = { "-classpath", extra_jars, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "org.classpath.icedtea.plugin.PluginMain", "50007" }; // char const* args[2] = { "sun.applet.PluginMain", "50007" }; - result = applet_viewer_process->Run (PR_FALSE, args, 5, nsnull); + result = applet_viewer_process->Run (PR_FALSE, args, 8, nsnull); PLUGIN_CHECK_RETURN ("run process", result); // start processing thread @@ -3763,6 +3768,7 @@ NS_IMPL_ISUPPORTS1 (IcedTeaJNIEnv, nsISe #include #include #include +#include IcedTeaJNIEnv::IcedTeaJNIEnv (IcedTeaPluginFactory* factory) : factory (factory) @@ -3801,17 +3807,69 @@ IcedTeaJNIEnv::DecrementContextCounter ( PR_ExitMonitor(contextCounterPRMonitor); } -void +#include + +nsresult +IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) +{ + PLUGIN_TRACE_JNIENV (); + + // Get JSContext from stack. + nsCOMPtr mJSContextStack(do_GetService("@mozilla.org/js/xpc/ContextStack;1")); + if (mJSContextStack) { + JSContext *cx; + if (NS_FAILED(mJSContextStack->Peek(&cx))) + return NS_ERROR_FAILURE; + + printf("Context1: %p\n", cx); + + // address cannot be more than 8 bytes (8 bytes = 64 bits) + sprintf(addr, "%p", cx); + + printf("Context2: %s\n", addr); + } + + return NS_OK; +} + +nsresult IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) { + + PLUGIN_TRACE_JNIENV (); + nsIPrincipal *prin; nsCOMPtr sec_man(do_GetService("@mozilla.org/scriptsecuritymanager;1")); - sec_man->GetSubjectPrincipal(&prin); + if (sec_man) { + + PRBool isEnabled = PR_FALSE; + sec_man->IsCapabilityEnabled("UniversalBrowserRead", &isEnabled); + + if (isEnabled == PR_FALSE) { + printf("UniversalBrowserRead is NOT enabled\n"); + } else { + printf("UniversalBrowserRead IS enabled\n"); + } + + sec_man->IsCapabilityEnabled("UniversalBrowserWrite", &isEnabled); + + if (isEnabled == PR_FALSE) { + printf("UniversalBrowserWrite is NOT enabled\n"); + } else { + printf("UniversalBrowserWrite IS enabled\n"); + } + } + + if (sec_man) + { + sec_man->GetSubjectPrincipal(&prin); + } else { + return NS_ERROR_FAILURE; + } if (prin) { - nsIURI *uri; prin->GetURI(&uri); @@ -3820,8 +3878,19 @@ IcedTeaJNIEnv::GetCurrentPageAddress(con nsCAutoString str; uri->GetSpec(str); NS_CStringGetData(str, addr); + } else { + return NS_ERROR_FAILURE; } + } else { + return NS_ERROR_FAILURE; } + + + nsCOMPtr js_id(do_GetService("@mozilla.org/js/xpc/ID;1")); + printf("JS ID is: %s\n", js_id->GetID()->ToString()); + + return NS_OK; + } NS_IMETHODIMP @@ -4846,19 +4915,34 @@ NSGetFactory (nsISupports* aServMgr, nsC return NS_ERROR_OUT_OF_MEMORY; } nsCString executable (dirname (filename)); + nsCString jar(dirname (filename)); + nsCString extrajars(""); free (filename); filename = NULL; //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); + extrajars += jar; + extrajars += nsCString("/IcedTeaPlugin.jar"); + extrajars += ":"; + extrajars += jar; + extrajars += nsCString("/rt.jar"); + //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); + extra_jars = strdup (extrajars.get ()); //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); + return NS_ERROR_OUT_OF_MEMORY; + } + + if (!extra_jars) + { + PLUGIN_ERROR ("Failed to create plugin jar name."); return NS_ERROR_OUT_OF_MEMORY; } diff -r abdb5c94757d -r 30567fe7d579 Makefile.am --- a/Makefile.am Tue Sep 23 16:52:24 2008 -0400 +++ b/Makefile.am Wed Sep 24 11:35:01 2008 -0400 @@ -8,8 +8,6 @@ NETBEANS_PLATFORM_MD5SUM = 77c79b3a7d3db NETBEANS_PLATFORM_MD5SUM = 77c79b3a7d3dbe6a8858639f8d564a38 NETBEANS_PROFILER_MD5SUM = ff8e8abc42df6c6749e6b02bcf7bb0a5 VISUALVM_MD5SUM = 4b55bc623418818793392bb233da2927 - -EXCLUDE_LIVECONNECT = | grep -vE "netscape/javascript|org/classpath/icedtea/plugin" if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin @@ -587,6 +585,9 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo WARNING make clean-patch before retrying a fix ; \ false; \ fi +if ENABLE_LIVECONNECT + cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ +endif clean-patch: rm -f stamps/patch.stamp @@ -605,6 +606,10 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi + for file in plugin/icedtea/sun/applet/*java ; \ + do \ + rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ + done ; stamps/patch-fsg.stamp: stamps/extract.stamp mkdir -p stamps ; \ @@ -1198,7 +1203,6 @@ bootstrap/jdk1.7.0/jre/lib/tools.jar: st # rt-closed.jar class files. rt-source-files.txt: stamps/extract.stamp stamps/copy-source-files.stamp find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT) -name '*.java' \ - $(EXCLUDE_LIVECONNECT) \ | sort -u > $@ stamps/rt-class-files.stamp: rt-source-files.txt @@ -1325,7 +1329,7 @@ IcedTeaPlugin.jar: mkdir -p $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes (cd plugin/icedtea/; \ $(ICEDTEA_BOOT_DIR)/bin/javac -g \ - -d ../../../../../$(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ + -d ../../$(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ -bootclasspath $(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar \ netscape/javascript/*.java org/classpath/icedtea/plugin/*.java \ ) From mark at klomp.org Sat Oct 18 21:23:18 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:18 +0000 Subject: changeset in /hg/icedtea: * patches/icedtea-clean-crypto.patch: ... Message-ID: changeset 09fccdb9f333 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=09fccdb9f333 description: * patches/icedtea-clean-crypto.patch: Cleaned up. Remove unneeded classes JarVeridier and JceSecurityManager and remove unneeded methods in JceSecurity class. diffstat: 2 files changed, 553 insertions(+), 59 deletions(-) ChangeLog | 6 patches/icedtea-clean-crypto.patch | 606 ++++++++++++++++++++++++++++++++---- diffs (truncated from 740 to 500 lines): diff -r 098f7819fe90 -r 09fccdb9f333 ChangeLog --- a/ChangeLog Wed Sep 24 13:56:07 2008 -0400 +++ b/ChangeLog Thu Sep 25 20:42:43 2008 +0200 @@ -1,3 +1,9 @@ 2008-09-23 Lillian Angel + + * patches/icedtea-clean-crypto.patch: Cleaned up. + Remove unneeded classes JarVerifier and JceSecurityManager + and remove unneeded methods in JceSecurity class. + 2008-09-23 Lillian Angel * configure.ac: Fixed help string for enable-visualvm. diff -r 098f7819fe90 -r 09fccdb9f333 patches/icedtea-clean-crypto.patch --- a/patches/icedtea-clean-crypto.patch Wed Sep 24 13:56:07 2008 -0400 +++ b/patches/icedtea-clean-crypto.patch Thu Sep 25 20:42:43 2008 +0200 @@ -1,6 +1,6 @@ diff -ur openjdk.orig/jdk/make/javax/cry -diff -ur openjdk.orig/jdk/make/javax/crypto/Makefile openjdk/jdk/make/javax/crypto/Makefile ---- openjdk.orig/jdk/make/javax/crypto/Makefile 2008-08-28 13:10:20.000000000 +0200 -+++ openjdk/jdk/make/javax/crypto/Makefile 2008-08-28 15:17:56.000000000 +0200 +diff -r 4aebfff4f8a2 jdk/make/javax/crypto/Makefile +--- openjdk.orig/jdk/make/javax/crypto/Makefile Mon Sep 15 11:38:34 2008 +0200 ++++ openjdk/jdk/make/javax/crypto/Makefile Thu Sep 25 17:45:37 2008 +0200 @@ -155,7 +155,8 @@ # @@ -11,9 +11,9 @@ diff -ur openjdk.orig/jdk/make/javax/cry else # OPENJDK ifeq ($(strip $(FILES_java)),) all: -diff -ur openjdk.orig/jdk/src/share/classes/javax/crypto/Cipher.java openjdk/jdk/src/share/classes/javax/crypto/Cipher.java ---- openjdk.orig/jdk/src/share/classes/javax/crypto/Cipher.java 2008-08-28 12:06:23.000000000 +0200 -+++ openjdk/jdk/src/share/classes/javax/crypto/Cipher.java 2008-08-28 15:23:41.000000000 +0200 +diff -r 4aebfff4f8a2 jdk/src/share/classes/javax/crypto/Cipher.java +--- openjdk.orig/jdk/src/share/classes/javax/crypto/Cipher.java Mon Sep 15 11:38:34 2008 +0200 ++++ openjdk/jdk/src/share/classes/javax/crypto/Cipher.java Thu Sep 25 17:45:37 2008 +0200 @@ -144,12 +144,6 @@ // The transformation private String transformation; @@ -52,7 +52,44 @@ diff -ur openjdk.orig/jdk/src/share/clas this.lock = null; } -@@ -603,7 +589,6 @@ +@@ -442,9 +428,6 @@ + Exception failure = null; + while (t.hasNext()) { + Service s = (Service)t.next(); +- if (JceSecurity.canUseProvider(s.getProvider()) == false) { +- continue; +- } + Transform tr = getTransform(s, transforms); + if (tr == null) { + // should never happen +@@ -570,26 +553,12 @@ + } + Exception failure = null; + List transforms = getTransforms(transformation); +- boolean providerChecked = false; + String paddingError = null; + for (Iterator t = transforms.iterator(); t.hasNext();) { + Transform tr = (Transform)t.next(); + Service s = provider.getService("Cipher", tr.transform); + if (s == null) { + continue; +- } +- if (providerChecked == false) { +- // for compatibility, first do the lookup and then verify +- // the provider. this makes the difference between a NSAE +- // and a SecurityException if the +- // provider does not support the algorithm. +- Exception ve = JceSecurity.getVerificationResult(provider); +- if (ve != null) { +- String msg = "JCE cannot authenticate the provider " +- + provider.getName(); +- throw new SecurityException(msg, ve); +- } +- providerChecked = true; + } + if (tr.supportsMode(s) == S_NO) { + continue; +@@ -603,7 +572,6 @@ tr.setModePadding(spi); Cipher cipher = new Cipher(spi, transformation); cipher.provider = s.getProvider(); @@ -60,10 +97,12 @@ diff -ur openjdk.orig/jdk/src/share/clas return cipher; } catch (Exception e) { failure = e; -@@ -622,22 +607,6 @@ +@@ -620,22 +588,6 @@ + } + throw new NoSuchAlgorithmException ("No such algorithm: " + transformation, failure); - } - +- } +- - // If the requested crypto service is export-controlled, - // determine the maximum allowable keysize. - private void initCryptoPermission() throws NoSuchAlgorithmException { @@ -78,12 +117,20 @@ diff -ur openjdk.orig/jdk/src/share/clas - if (exmechName != null) { - exmech = ExemptionMechanism.getInstance(exmechName); - } -- } -- + } + // max number of debug warnings to print from chooseFirstProvider() - private static int warnCount = 10; - -@@ -699,7 +668,6 @@ +@@ -679,9 +631,6 @@ + s = (Service)serviceIterator.next(); + thisSpi = null; + } +- if (JceSecurity.canUseProvider(s.getProvider()) == false) { +- continue; +- } + Transform tr = getTransform(s, transforms); + if (tr == null) { + // should never happen +@@ -699,7 +648,6 @@ thisSpi = (CipherSpi)obj; } tr.setModePadding(thisSpi); @@ -91,7 +138,7 @@ diff -ur openjdk.orig/jdk/src/share/clas spi = thisSpi; provider = s.getProvider(); // not needed any more -@@ -731,19 +699,15 @@ +@@ -731,19 +679,15 @@ InvalidAlgorithmParameterException { switch (type) { case I_KEY: @@ -111,7 +158,17 @@ diff -ur openjdk.orig/jdk/src/share/clas thisSpi.engineInit(opmode, key, random); break; default: -@@ -793,7 +757,6 @@ +@@ -777,9 +721,6 @@ + if (s.supportsParameter(key) == false) { + continue; + } +- if (JceSecurity.canUseProvider(s.getProvider()) == false) { +- continue; +- } + Transform tr = getTransform(s, transforms); + if (tr == null) { + // should never happen +@@ -793,7 +734,6 @@ thisSpi = (CipherSpi)s.newInstance(null); } tr.setModePadding(thisSpi); @@ -119,7 +176,7 @@ diff -ur openjdk.orig/jdk/src/share/clas implInit(thisSpi, initType, opmode, key, paramSpec, params, random); provider = s.getProvider(); -@@ -939,107 +902,6 @@ +@@ -939,107 +879,6 @@ return exmech; } @@ -227,7 +284,7 @@ diff -ur openjdk.orig/jdk/src/share/clas // check if opmode is one of the defined constants // throw InvalidParameterExeption if not private static void checkOpmode(int opmode) { -@@ -1144,7 +1006,6 @@ +@@ -1144,7 +983,6 @@ checkOpmode(opmode); if (spi != null) { @@ -235,7 +292,7 @@ diff -ur openjdk.orig/jdk/src/share/clas spi.engineInit(opmode, key, random); } else { try { -@@ -1270,7 +1131,6 @@ +@@ -1270,7 +1108,6 @@ checkOpmode(opmode); if (spi != null) { @@ -243,7 +300,7 @@ diff -ur openjdk.orig/jdk/src/share/clas spi.engineInit(opmode, key, params, random); } else { chooseProvider(I_PARAMSPEC, opmode, key, params, null, random); -@@ -1391,7 +1251,6 @@ +@@ -1391,7 +1228,6 @@ checkOpmode(opmode); if (spi != null) { @@ -251,7 +308,7 @@ diff -ur openjdk.orig/jdk/src/share/clas spi.engineInit(opmode, key, params, random); } else { chooseProvider(I_PARAMS, opmode, key, null, params, random); -@@ -1555,7 +1414,6 @@ +@@ -1555,7 +1391,6 @@ (certificate==null? null:certificate.getPublicKey()); if (spi != null) { @@ -259,21 +316,239 @@ diff -ur openjdk.orig/jdk/src/share/clas spi.engineInit(opmode, publicKey, random); } else { try { -diff -ur openjdk.orig/jdk/src/share/classes/javax/crypto/JceSecurity.java openjdk/jdk/src/share/classes/javax/crypto/JceSecurity.java ---- openjdk.orig/jdk/src/share/classes/javax/crypto/JceSecurity.java 2008-08-28 12:06:23.000000000 +0200 -+++ openjdk/jdk/src/share/classes/javax/crypto/JceSecurity.java 2008-08-28 15:17:56.000000000 +0200 -@@ -63,8 +63,8 @@ - // Map of the providers currently being verified - private final static Map verifyingProviders = new IdentityHashMap(); - +@@ -2361,12 +2196,15 @@ + return null; + } + ++ // Used by getMaxAllowedKeyLength and getMaxAllowedParameterSpec ++ // always returns CryptoAllPermission. Old stuff from bad old days. + private static CryptoPermission getConfiguredPermission( + String transformation) throws NullPointerException, + NoSuchAlgorithmException { + if (transformation == null) throw new NullPointerException(); +- String[] parts = tokenizeTransformation(transformation); +- return JceSecurityManager.INSTANCE.getCryptoPermission(parts[0]); ++ // Called to make sure it is a valid transformation. ++ tokenizeTransformation(transformation); ++ return CryptoAllPermission.INSTANCE; + } + + /** +diff -r 4aebfff4f8a2 jdk/src/share/classes/javax/crypto/JarVerifier.java +--- openjdk/jdk/src/share/classes/javax/crypto/JarVerifier.java Mon Sep 15 11:38:34 2008 +0200 ++++ /dev/null Thu Jan 01 00:00:00 1970 +0000 +@@ -1,170 +0,0 @@ +-/* +- * Copyright 2007 Sun Microsystems, Inc. All Rights Reserved. +- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +- * +- * This code is free software; you can redistribute it and/or modify it +- * under the terms of the GNU General Public License version 2 only, as +- * published by the Free Software Foundation. Sun designates this +- * particular file as subject to the "Classpath" exception as provided +- * by Sun in the LICENSE file that accompanied this code. +- * +- * This code is distributed in the hope that it will be useful, but WITHOUT +- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +- * version 2 for more details (a copy is included in the LICENSE file that +- * accompanied this code). +- * +- * You should have received a copy of the GNU General Public License version +- * 2 along with this work; if not, write to the Free Software Foundation, +- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +- * +- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, +- * CA 95054 USA or visit www.sun.com if you need additional information or +- * have any questions. +- */ +- +-package javax.crypto; +- +-import java.io.*; +-import java.net.*; +-import java.security.*; +-import java.util.*; +-import java.util.jar.*; +-import javax.crypto.CryptoPolicyParser.ParsingException; +- +-/** +- * This class verifies JAR files (and any supporting JAR files), and +- * determines whether they may be used in this implementation. +- * +- * The JCE in OpenJDK has an open cryptographic interface, meaning it +- * does not restrict which providers can be used. Compliance with +- * United States export controls and with local law governing the +- * import/export of products incorporating the JCE in the OpenJDK is +- * the responsibility of the licensee. +- * +- * @since 1.7 +- */ +-final class JarVerifier { +- +- // The URL for the JAR file we want to verify. +- private URL jarURL; +- private boolean savePerms; +- private CryptoPermissions appPerms = null; +- +- /** +- * Creates a JarVerifier object to verify the given URL. +- * +- * @param jarURL the JAR file to be verified. +- * @param savePerms if true, save the permissions allowed by the +- * exemption mechanism +- */ +- JarVerifier(URL jarURL, boolean savePerms) { +- this.jarURL = jarURL; +- this.savePerms = savePerms; +- } +- +- /** +- * Verify the JAR file is signed by an entity which has a certificate +- * issued by a trusted CA. +- * +- * In OpenJDK, we just need to examine the "cryptoperms" file to see +- * if any permissions were bundled together with this jar file. +- */ +- void verify() throws JarException, IOException { +- +- // Short-circuit. If we weren't asked to save any, we're done. +- if (!savePerms) { +- return; +- } +- +- // If the protocol of jarURL isn't "jar", we should +- // construct a JAR URL so we can open a JarURLConnection +- // for verifying this provider. +- final URL url = jarURL.getProtocol().equalsIgnoreCase("jar")? +- jarURL : new URL("jar:" + jarURL.toString() + "!/"); +- +- JarFile jf = null; +- try { +- +- // Get a link to the Jarfile to search. +- try { +- jf = (JarFile) +- AccessController.doPrivileged( +- new PrivilegedExceptionAction() { +- public Object run() throws Exception { +- JarURLConnection conn = +- (JarURLConnection) url.openConnection(); +- // You could do some caching here as +- // an optimization. +- conn.setUseCaches(false); +- return conn.getJarFile(); +- } +- }); +- } catch (java.security.PrivilegedActionException pae) { +- SecurityException se = new SecurityException( +- "Cannot load " + url.toString()); +- se.initCause(pae); +- throw se; +- } +- +- if (jf != null) { +- JarEntry je = jf.getJarEntry("cryptoPerms"); +- if (je == null) { +- throw new JarException( +- "Can not find cryptoPerms"); +- } +- try { +- appPerms = new CryptoPermissions(); +- appPerms.load(jf.getInputStream(je)); +- } catch (Exception ex) { +- JarException jex = +- new JarException("Cannot load/parse" + +- jarURL.toString()); +- jex.initCause(ex); +- throw jex; +- } +- } +- } finally { +- // Only call close() when caching is not enabled. +- // Otherwise, exceptions will be thrown for all +- // subsequent accesses of this cached jar. +- if (jf != null) { +- jf.close(); +- } +- } +- } +- +- /** +- * Verify that the provided JarEntry was indeed signed by the +- * framework signing certificate. +- * +- * @param je the URL of the jar entry to be checked. +- * @throws Exception if the jar entry was not signed by +- * the proper certificate +- */ +- static void verifyFrameworkSigned(URL je) throws Exception { +- } +- +- /** +- * Verify that the provided certs include the +- * framework signing certificate. +- * +- * @param certs the list of certs to be checked. +- * @throws Exception if the list of certs did not contain +- * the framework signing certificate +- */ +- static void verifyPolicySigned(java.security.cert.Certificate[] certs) +- throws Exception { +- } +- +- /** +- * Returns the permissions which are bundled with the JAR file, +- * aka the "cryptoperms" file. +- * +- * NOTE: if this JarVerifier instance is constructed with "savePerms" +- * equal to false, then this method would always return null. +- */ +- CryptoPermissions getPermissions() { +- return appPerms; +- } +-} +diff -r 4aebfff4f8a2 jdk/src/share/classes/javax/crypto/JceSecurity.java +--- openjdk.orig/jdk/src/share/classes/javax/crypto/JceSecurity.java Mon Sep 15 11:38:34 2008 +0200 ++++ openjdk/jdk/src/share/classes/javax/crypto/JceSecurity.java Thu Sep 25 17:45:37 2008 +0200 +@@ -25,11 +25,7 @@ + + package javax.crypto; + +-import java.lang.ref.*; + import java.util.*; +-import java.util.jar.*; +-import java.io.*; +-import java.net.URL; + import java.security.*; + + import java.security.Provider.Service; +@@ -48,23 +44,8 @@ + + final class JceSecurity { + ++ // Used in KeyGenerator, Cipher and KeyAgreement. + static final SecureRandom RANDOM = new SecureRandom(); +- +- // The defaultPolicy and exemptPolicy will be set up +- // in the static initializer. +- private static CryptoPermissions defaultPolicy = null; +- private static CryptoPermissions exemptPolicy = null; +- +- // Map of the providers we already have verified +- // value == PROVIDER_VERIFIED is successfully verified +- // value is failure cause Exception in error case +- private final static Map verificationResults = new IdentityHashMap(); +- +- // Map of the providers currently being verified +- private final static Map verifyingProviders = new IdentityHashMap(); +- - // Set the default value. May be changed in the static initializer. - private static boolean isRestricted = true; -+ // Set the default value. -+ private static final boolean isRestricted = false; /* * Don't let anyone instantiate this. -@@ -72,26 +72,6 @@ +@@ -72,48 +53,16 @@ private JceSecurity() { } @@ -300,10 +575,147 @@ diff -ur openjdk.orig/jdk/src/share/clas static Instance getInstance(String type, Class clazz, String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException { -@@ -239,93 +219,6 @@ - return (url == NULL_URL) ? null : url; - } - + Service s = GetInstance.getService(type, algorithm, provider); +- Exception ve = getVerificationResult(s.getProvider()); +- if (ve != null) { +- String msg = "JCE cannot authenticate the provider " + provider; +- throw (NoSuchProviderException) +- new NoSuchProviderException(msg).initCause(ve); +- } + return GetInstance.getInstance(s, clazz); + } + + static Instance getInstance(String type, Class clazz, String algorithm, + Provider provider) throws NoSuchAlgorithmException { + Service s = GetInstance.getService(type, algorithm, provider); +- Exception ve = JceSecurity.getVerificationResult(provider); +- if (ve != null) { +- String msg = "JCE cannot authenticate the provider " +- + provider.getName(); +- throw new SecurityException(msg, ve); +- } + return GetInstance.getInstance(s, clazz); + } + +@@ -123,10 +72,6 @@ + NoSuchAlgorithmException failure = null; + for (Iterator t = services.iterator(); t.hasNext(); ) { + Service s = (Service)t.next(); +- if (canUseProvider(s.getProvider()) == false) { +- // allow only signed providers +- continue; +- } + try { + Instance instance = GetInstance.getInstance(s, clazz); + return instance; +@@ -138,203 +83,10 @@ + + " not available", failure); + } + +- /** +- * Verify if the JAR at URL codeBase is a signed exempt application +- * JAR file and returns the permissions bundled with the JAR. +- * +- * @throws Exception on error From dbhole at redhat.com Sat Oct 18 21:23:18 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:18 +0000 Subject: changeset in /hg/icedtea: Merging with latest from main repo Message-ID: changeset f9d81fd1466d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=f9d81fd1466d description: Merging with latest from main repo diffstat: 5 files changed, 38 insertions(+), 11 deletions(-) AUTHORS | 1 + ChangeLog | 9 +++++++++ Makefile.am | 3 ++- acinclude.m4 | 9 +++++++++ patches/icedtea-ecj.patch | 27 +++++++++++++++++---------- diffs (132 lines): diff -r 30567fe7d579 -r f9d81fd1466d AUTHORS --- a/AUTHORS Wed Sep 24 11:35:01 2008 -0400 +++ b/AUTHORS Wed Sep 24 11:44:16 2008 -0400 @@ -11,6 +11,7 @@ Andrew John Hughes Matthias Klose Francis Kung +DJ Lucas Casey Marshall Dan Munckton Raif Naffah diff -r 30567fe7d579 -r f9d81fd1466d ChangeLog --- a/ChangeLog Wed Sep 24 11:35:01 2008 -0400 +++ b/ChangeLog Wed Sep 24 11:44:16 2008 -0400 @@ -49,6 +49,15 @@ 2008-09-23 Deepak Bhole + DJ Lucas + + * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. + * acinclude.m4: Added check to determine whether jar supports + stdin file args. + * patches/icedtea-ecj.patch: Updated patch. + * AUTHORS: Added DJ Lucas. 2008-09-18 Lillian Angel diff -r 30567fe7d579 -r f9d81fd1466d Makefile.am --- a/Makefile.am Wed Sep 24 11:35:01 2008 -0400 +++ b/Makefile.am Wed Sep 24 11:44:16 2008 -0400 @@ -228,7 +228,8 @@ ICEDTEA_ENV_ECJ = \ "HOTSPOT_BUILD_JOBS=$(PARALLEL_JOBS)" \ "JAVAC=" \ "RHINO_JAR=$(RHINO_JAR)" \ - "JAR_KNOWS_ATFILE=$(JAR_KNOWS_ATFILE)" + "JAR_KNOWS_ATFILE=$(JAR_KNOWS_ATFILE)" \ + "JAR_ACCEPTS_STDIN_LIST=$(JAR_ACCEPTS_STDIN_LIST)" if WITH_CACAO ICEDTEA_ENV_ECJ += \ diff -r 30567fe7d579 -r f9d81fd1466d acinclude.m4 --- a/acinclude.m4 Wed Sep 24 11:35:01 2008 -0400 +++ b/acinclude.m4 Wed Sep 24 11:44:16 2008 -0400 @@ -342,9 +342,18 @@ EOF JAR_KNOWS_ATFILE= AC_MSG_RESULT(no) fi + AC_MSG_CHECKING([whether jar supports stdin file arguments]) + if cat _config.list | $JAR cf@ _config.jar 2>/dev/null; then + JAR_ACCEPTS_STDIN_LIST=1 + AC_MSG_RESULT(yes) + else + JAR_ACCEPTS_STDIN_LIST= + AC_MSG_RESULT(no) + fi rm -f _config.txt _config.list _config.jar AC_SUBST(JAR) AC_SUBST(JAR_KNOWS_ATFILE) + AC_SUBST(JAR_ACCEPTS_STDIN_LIST) ]) AC_DEFUN([FIND_RMIC], diff -r 30567fe7d579 -r f9d81fd1466d patches/icedtea-ecj.patch --- a/patches/icedtea-ecj.patch Wed Sep 24 11:35:01 2008 -0400 +++ b/patches/icedtea-ecj.patch Wed Sep 24 11:44:16 2008 -0400 @@ -428,32 +428,35 @@ diff -ru openjdk-ecj.orig/langtools/make endif # Override of what javac to use (see deploy workspace) ---- oipenjdk/jdk/make/common/Release.gmk 2007-11-13 16:47:23.000000000 -0500 -+++ openjdk-ecj/jdk/make/common/Release.gmk 2007-11-13 16:48:08.000000000 -0500 -@@ -655,10 +649,19 @@ +--- oipenjdk/jdk/make/common/Release.gmk 2008-08-28 03:10:47.000000000 -0500 ++++ openjdk-ecj/jdk/make/common/Release.gmk 2008-09-16 17:53:16.000000000 -0500 +@@ -655,10 +655,23 @@ $(RES_JAR_ARGLIST): $(RES_JAR_FILELIST) $(prep-target) $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@ -$(RESOURCES_JAR): $(RES_JAR_ARGLIST) $(JAR_MANIFEST_FILE) -- $(prep-target) +$(RESOURCES_JAR): \ + $(if $(JAR_KNOWS_ATFILE),$(RES_JAR_FILELIST),$(RES_JAR_ARGLIST)) \ + $(JAR_MANIFEST_FILE) -+ $(prep-target) + $(prep-target) +ifneq (,$(JAR_KNOWS_ATFILE)) ++ (cd $(CLASSBINDIR) && \ + $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ +- @$(RES_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(JAR_JFLAGS) @$(RES_JAR_FILELIST)) ++else ifneq (,$(JAR_ACCEPTS_STDIN_LIST)) + (cd $(CLASSBINDIR) && $(CAT) $(RES_JAR_FILELIST) | \ + $(BOOT_JAR_CMD) c0mf@ $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS)) +else + (cd $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ -- @$(RES_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS) `cat $(RES_JAR_FILELIST)`) +endif @$(java-vm-cleanup) # Create jsse.jar containing SunJSSE implementation classes -@@ -714,10 +717,18 @@ +@@ -714,10 +727,22 @@ $(RT_JAR_ARGLIST): $(RT_JAR_FILELIST) $(prep-target) $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@ @@ -462,13 +465,17 @@ diff -ru openjdk-ecj.orig/langtools/make + $(JAR_MANIFEST_FILE) $(prep-target) +ifneq (,$(JAR_KNOWS_ATFILE)) ++ (cd $(CLASSBINDIR) && \ + $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ +- @$(RT_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(JAR_JFLAGS) @$(RT_JAR_FILELIST)) ++else ifneq (,$(JAR_ACCEPTS_STDIN_LIST)) + (cd $(CLASSBINDIR) && $(CAT) $(RT_JAR_FILELIST) | \ + $(BOOT_JAR_CMD) c0mf@ $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS)) +else + (cd $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ -- @$(RT_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS) `$(CAT) $(RT_JAR_FILELIST)`) +endif @$(java-vm-cleanup) From dbhole at redhat.com Sat Oct 18 21:23:15 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:15 +0000 Subject: changeset in /hg/icedtea: Fix bad changelog entry Message-ID: changeset 1c7da2861925 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=1c7da2861925 description: Fix bad changelog entry diffstat: 1 file changed, 1 insertion(+), 1 deletion(-) ChangeLog | 2 +- diffs (12 lines): diff -r adaf3f0d6262 -r 1c7da2861925 ChangeLog --- a/ChangeLog Mon Sep 15 17:11:17 2008 -0400 +++ b/ChangeLog Mon Sep 15 17:21:14 2008 -0400 @@ -2,7 +2,7 @@ 2008-08-26 Deepak Bhole changeset 3e5d21f2b7a4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=3e5d21f2b7a4 description: Moved IcedTeaPlugin related classes into a separate jar, so that it can be run in a sandbox. Removed new files out of the IcedTeaPlugin patch, and moved them into a directory, so that history can be tracked properly. diffstat: 18 files changed, 4811 insertions(+), 4850 deletions(-) Makefile.am | 25 patches/icedtea-liveconnect.patch | 3559 ---------- patches/icedtea-plugin.patch | 1294 --- plugin/gcj/java/src/main/sun/applet/PluginAppletViewer.java | 1008 ++ plugin/gcj/java/src/main/sun/applet/PluginMain.java | 274 plugin/icedtea/java/src/main/sun/applet/GetMemberPluginCallRequest.java | 72 plugin/icedtea/java/src/main/sun/applet/GetWindowPluginCallRequest.java | 66 plugin/icedtea/java/src/main/sun/applet/PluginAppletSecurityContext.java | 847 ++ plugin/icedtea/java/src/main/sun/applet/PluginAppletViewer.java | 1439 ++++ plugin/icedtea/java/src/main/sun/applet/PluginCallRequest.java | 56 plugin/icedtea/java/src/main/sun/applet/PluginDebug.java | 13 plugin/icedtea/java/src/main/sun/applet/PluginException.java | 14 plugin/icedtea/java/src/main/sun/applet/PluginMain.java | 533 + plugin/icedtea/java/src/main/sun/applet/PluginMessageConsumer.java | 49 plugin/icedtea/java/src/main/sun/applet/PluginMessageHandlerWorker.java | 59 plugin/icedtea/java/src/main/sun/applet/PluginObjectStore.java | 119 plugin/icedtea/java/src/main/sun/applet/TestEnv.java | 172 plugin/icedtea/java/src/main/sun/applet/VoidPluginCallRequest.java | 62 diffs (truncated from 9811 to 500 lines): diff -r 8e3089767a4a -r 3e5d21f2b7a4 Makefile.am --- a/Makefile.am Thu Sep 18 11:31:59 2008 -0400 +++ b/Makefile.am Thu Sep 18 15:49:10 2008 -0400 @@ -12,12 +12,14 @@ if ENABLE_LIVECONNECT if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so +ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch EXCLUDE_LIVECONNECT = LIVECONNECT_DIR = -C lib/rt netscape else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = +ICEDTEAPLUGIN_JAR = PLUGIN_PATCH = patches/icedtea-plugin.patch EXCLUDE_LIVECONNECT = | grep -v 'netscape/javascript' LIVECONNECT_DIR = @@ -894,7 +896,7 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ - $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ + $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) $(ICEDTEAPLUGIN_JAR) \ extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp $(MAKE) \ $(ICEDTEA_ENV) \ @@ -905,6 +907,10 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf IcedTeaPlugin.jar \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ + cp -pPRf IcedTeaPlugin.jar \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/ else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -945,7 +951,7 @@ stamps/icedtea-debug.stamp: stamps/boots stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ - $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ + $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) $(ICEDTEAPLUGIN_JAR) \ extra-lib/about.jar stamps/cacao.stamp $(MAKE) \ $(ICEDTEA_ENV) \ @@ -956,6 +962,10 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf IcedTeaPlugin.jar \ + $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ + cp -pPRf IcedTeaPlugin.jar \ + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -1308,6 +1318,17 @@ IcedTeaPlugin.so: IcedTeaPlugin.o $(GTK_LIBS) \ $(XULRUNNER_LIBS) \ -shared -o $@ + +# icedtea plugin jar for java-side classes +IcedTeaPlugin.jar: + mkdir -p $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes + (cd plugin/icedtea/java/src/main/; \ + $(ICEDTEA_BOOT_DIR)/bin/javac -g \ + -d $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ + -bootclasspath $(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar \ + sun/applet/*.java \ + ) + $(JAR) cf $@ -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun clean-IcedTeaPlugin: rm -f IcedTeaPlugin.o diff -r 8e3089767a4a -r 3e5d21f2b7a4 patches/icedtea-liveconnect.patch --- a/patches/icedtea-liveconnect.patch Thu Sep 18 11:31:59 2008 -0400 +++ b/patches/icedtea-liveconnect.patch Thu Sep 18 15:49:10 2008 -0400 @@ -1,6 +1,6 @@ diff -urN openjdk.orig/jdk/make/sun/Make diff -urN openjdk.orig/jdk/make/sun/Makefile openjdk/jdk/make/sun/Makefile --- openjdk.orig/jdk/make/sun/Makefile 2008-07-10 15:54:44.000000000 -0400 -+++ openjdk/jdk/make/sun/Makefile 2008-09-15 16:21:47.000000000 -0400 ++++ openjdk/jdk/make/sun/Makefile 2008-09-18 14:28:41.000000000 -0400 @@ -66,6 +66,7 @@ $(HEADLESS_SUBDIR) $(DGA_SUBDIR) \ font jpeg cmm applet rmi beans $(JDBC_SUBDIR) \ @@ -11,7 +11,7 @@ diff -urN openjdk.orig/jdk/make/sun/Make all build clean clobber:: diff -urN openjdk.orig/jdk/make/sun/Makefile.orig openjdk/jdk/make/sun/Makefile.orig --- openjdk.orig/jdk/make/sun/Makefile.orig 1969-12-31 19:00:00.000000000 -0500 -+++ openjdk/jdk/make/sun/Makefile.orig 2008-09-15 16:21:47.000000000 -0400 ++++ openjdk/jdk/make/sun/Makefile.orig 2008-09-18 14:28:41.000000000 -0400 @@ -0,0 +1,73 @@ +# +# Copyright 1995-2007 Sun Microsystems, Inc. All Rights Reserved. @@ -88,7 +88,7 @@ diff -urN openjdk.orig/jdk/make/sun/Make + diff -urN openjdk.orig/jdk/make/sun/plugin/Makefile openjdk/jdk/make/sun/plugin/Makefile --- openjdk.orig/jdk/make/sun/plugin/Makefile 1969-12-31 19:00:00.000000000 -0500 -+++ openjdk/jdk/make/sun/plugin/Makefile 2008-09-15 16:21:47.000000000 -0400 ++++ openjdk/jdk/make/sun/plugin/Makefile 2008-09-18 14:28:41.000000000 -0400 @@ -0,0 +1,53 @@ +# +# Copyright 1995-2005 Sun Microsystems, Inc. All Rights Reserved. @@ -143,3556 +143,3 @@ diff -urN openjdk.orig/jdk/make/sun/plug +JAVA_ARGS = "{ \"sun.applet.PluginMain\" }" +include $(BUILDDIR)/common/Program.gmk + -diff -urN openjdk.orig/jdk/src/share/classes/sun/applet/GetMemberPluginCallRequest.java openjdk/jdk/src/share/classes/sun/applet/GetMemberPluginCallRequest.java ---- openjdk.orig/jdk/src/share/classes/sun/applet/GetMemberPluginCallRequest.java 1969-12-31 19:00:00.000000000 -0500 -+++ openjdk/jdk/src/share/classes/sun/applet/GetMemberPluginCallRequest.java 2008-09-15 16:22:06.000000000 -0400 -@@ -0,0 +1,72 @@ -+/* GetMemberPluginCallRequest -- represent Java-to-JavaScript requests -+ Copyright (C) 2008 Red Hat -+ -+This file is part of IcedTea. -+ -+IcedTea is free software; you can redistribute it and/or modify -+it under the terms of the GNU General Public License as published by -+the Free Software Foundation; either version 2, or (at your option) -+any later version. -+ -+IcedTea is distributed in the hope that it will be useful, but -+WITHOUT ANY WARRANTY; without even the implied warranty of -+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+General Public License for more details. -+ -+You should have received a copy of the GNU General Public License -+along with IcedTea; see the file COPYING. If not, write to the -+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -+02110-1301 USA. -+ -+Linking this library statically or dynamically with other modules is -+making a combined work based on this library. Thus, the terms and -+conditions of the GNU General Public License cover the whole -+combination. -+ -+As a special exception, the copyright holders of this library give you -+permission to link this library with independent modules to produce an -+executable, regardless of the license terms of these independent -+modules, and to copy and distribute the resulting executable under -+terms of your choice, provided that you also meet, for each linked -+independent module, the terms and conditions of the license of that -+module. An independent module is a module which is not derived from -+or based on this library. If you modify this library, you may extend -+this exception to your version of the library, but you are not -+obligated to do so. If you do not wish to do so, delete this -+exception statement from your version. */ -+ -+package sun.applet; -+ -+class GetMemberPluginCallRequest extends PluginCallRequest { -+ Object object = null; -+ -+ public GetMemberPluginCallRequest(String message, String returnString) { -+ super(message, returnString); -+ System.out.println ("GetMEMBerPLUGINCAlL " + message + " " + returnString); -+ } -+ -+ public void parseReturn(String message) { -+ System.out.println ("GetMEMBerparseReturn GOT: " + message); -+ String[] args = message.split(" "); -+ // FIXME: add thread ID to messages to support multiple -+ // threads using the netscape.javascript package. -+ object = PluginAppletSecurityContext.contexts.get( -+ 0).store.getObject(Integer.parseInt(args[1])); -+ done = true; -+ } -+ -+ /** -+ * Returns whether the given message is serviceable by this object -+ * -+ * @param message The message to service -+ * @return boolean indicating if message is serviceable -+ */ -+ public boolean serviceable(String message) { -+ return message.contains("JavaScriptCall") || -+ message.contains("JavaScriptEval") || -+ message.contains("JavaScriptGetMember") || -+ message.contains("JavaScriptGetSlot") || -+ message.contains("JavaScriptToString"); -+ } -+} -+ -diff -urN openjdk.orig/jdk/src/share/classes/sun/applet/GetWindowPluginCallRequest.java openjdk/jdk/src/share/classes/sun/applet/GetWindowPluginCallRequest.java ---- openjdk.orig/jdk/src/share/classes/sun/applet/GetWindowPluginCallRequest.java 1969-12-31 19:00:00.000000000 -0500 -+++ openjdk/jdk/src/share/classes/sun/applet/GetWindowPluginCallRequest.java 2008-09-15 16:22:06.000000000 -0400 -@@ -0,0 +1,66 @@ -+/* GetWindowPluginCallRequest -- represent Java-to-JavaScript requests -+ Copyright (C) 2008 Red Hat -+ -+This file is part of IcedTea. -+ -+IcedTea is free software; you can redistribute it and/or modify -+it under the terms of the GNU General Public License as published by -+the Free Software Foundation; either version 2, or (at your option) -+any later version. -+ -+IcedTea is distributed in the hope that it will be useful, but -+WITHOUT ANY WARRANTY; without even the implied warranty of -+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+General Public License for more details. -+ -+You should have received a copy of the GNU General Public License -+along with IcedTea; see the file COPYING. If not, write to the -+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -+02110-1301 USA. -+ -+Linking this library statically or dynamically with other modules is -+making a combined work based on this library. Thus, the terms and -+conditions of the GNU General Public License cover the whole -+combination. -+ -+As a special exception, the copyright holders of this library give you -+permission to link this library with independent modules to produce an -+executable, regardless of the license terms of these independent -+modules, and to copy and distribute the resulting executable under -+terms of your choice, provided that you also meet, for each linked -+independent module, the terms and conditions of the license of that -+module. An independent module is a module which is not derived from -+or based on this library. If you modify this library, you may extend -+this exception to your version of the library, but you are not -+obligated to do so. If you do not wish to do so, delete this -+exception statement from your version. */ -+ -+package sun.applet; -+ -+class GetWindowPluginCallRequest extends PluginCallRequest { -+ // FIXME: look into int vs long JavaScript internal values. -+ int internal; -+ -+ public GetWindowPluginCallRequest(String message, String returnString) { -+ super(message, returnString); -+ } -+ -+ public void parseReturn(String message) { -+ System.out.println ("GetWINDOWparseReturn GOT: " + message); -+ String[] args = message.split(" "); -+ // FIXME: add thread ID to messages to support multiple -+ // threads using the netscape.javascript package. -+ internal = Integer.parseInt(args[1]); -+ done = true; -+ } -+ -+ /** -+ * Returns whether the given message is serviceable by this object -+ * -+ * @param message The message to service -+ * @return boolean indicating if message is serviceable -+ */ -+ public boolean serviceable(String message) { -+ return message.contains("JavaScriptGetWindow"); -+ } -+} -diff -urN openjdk.orig/jdk/src/share/classes/sun/applet/PluginAppletSecurityContext.java openjdk/jdk/src/share/classes/sun/applet/PluginAppletSecurityContext.java ---- openjdk.orig/jdk/src/share/classes/sun/applet/PluginAppletSecurityContext.java 1969-12-31 19:00:00.000000000 -0500 -+++ openjdk/jdk/src/share/classes/sun/applet/PluginAppletSecurityContext.java 2008-09-15 16:22:07.000000000 -0400 -@@ -0,0 +1,847 @@ -+/* PluginAppletSecurityContext -- execute plugin JNI messages -+ Copyright (C) 2008 Red Hat -+ -+This file is part of IcedTea. -+ -+IcedTea is free software; you can redistribute it and/or modify -+it under the terms of the GNU General Public License as published by -+the Free Software Foundation; either version 2, or (at your option) -+any later version. -+ -+IcedTea is distributed in the hope that it will be useful, but -+WITHOUT ANY WARRANTY; without even the implied warranty of -+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+General Public License for more details. -+ -+You should have received a copy of the GNU General Public License -+along with IcedTea; see the file COPYING. If not, write to the -+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -+02110-1301 USA. -+ -+Linking this library statically or dynamically with other modules is -+making a combined work based on this library. Thus, the terms and -+conditions of the GNU General Public License cover the whole -+combination. -+ -+As a special exception, the copyright holders of this library give you -+permission to link this library with independent modules to produce an -+executable, regardless of the license terms of these independent -+modules, and to copy and distribute the resulting executable under -+terms of your choice, provided that you also meet, for each linked -+independent module, the terms and conditions of the license of that -+module. An independent module is a module which is not derived from -+or based on this library. If you modify this library, you may extend -+this exception to your version of the library, but you are not -+obligated to do so. If you do not wish to do so, delete this -+exception statement from your version. */ -+ -+package sun.applet; -+ -+import java.lang.reflect.Array; -+import java.lang.reflect.Constructor; -+import java.lang.reflect.Field; -+import java.lang.reflect.Method; -+import java.util.ArrayList; -+import java.util.HashMap; -+import java.util.List; -+import java.util.StringTokenizer; -+ -+class Signature { -+ private String signature; -+ private int currentIndex; -+ private List typeList; -+ private static final char ARRAY = '['; -+ private static final char OBJECT = 'L'; -+ private static final char SIGNATURE_ENDCLASS = ';'; -+ private static final char SIGNATURE_FUNC = '('; -+ private static final char SIGNATURE_ENDFUNC = ')'; -+ private static final char VOID = 'V'; -+ private static final char BOOLEAN = 'Z'; -+ private static final char BYTE = 'B'; -+ private static final char CHARACTER = 'C'; -+ private static final char SHORT = 'S'; -+ private static final char INTEGER = 'I'; -+ private static final char LONG = 'J'; -+ private static final char FLOAT = 'F'; -+ private static final char DOUBLE = 'D'; -+ -+ private String nextTypeName() { -+ char key = signature.charAt(currentIndex++); -+ -+ switch (key) { -+ case ARRAY: -+ return nextTypeName() + "[]"; -+ -+ case OBJECT: -+ int endClass = signature.indexOf(SIGNATURE_ENDCLASS, currentIndex); -+ String retVal = signature.substring(currentIndex, endClass); -+ retVal = retVal.replace('/', '.'); -+ currentIndex = endClass + 1; -+ return retVal; -+ -+ // FIXME: generated bytecode with classes named after -+ // primitives will not work in this scheme -- those -+ // classes will be incorrectly treated as primitive -+ // types. -+ case VOID: -+ return "void"; -+ case BOOLEAN: -+ return "boolean"; -+ case BYTE: -+ return "byte"; -+ case CHARACTER: -+ return "char"; -+ case SHORT: -+ return "short"; -+ case INTEGER: -+ return "int"; -+ case LONG: -+ return "long"; -+ case FLOAT: -+ return "float"; -+ case DOUBLE: -+ return "double"; -+ -+ case SIGNATURE_ENDFUNC: -+ case SIGNATURE_FUNC: -+ return nextTypeName(); -+ -+ default: -+ throw new IllegalArgumentException( -+ "Invalid JNI signature character '" + key + "'"); -+ } -+ } -+ -+ public Signature(String signature, String src) { -+ this.signature = signature; -+ currentIndex = 0; -+ typeList = new ArrayList(10); -+ -+ String elem; -+ while (currentIndex < signature.length()) { -+ elem = nextTypeName(); -+ // System.out.println ("NEXT TYPE: " + elem); -+ Class primitive = primitiveNameToType(elem); -+ if (primitive != null) -+ typeList.add(primitive); -+ else { -+ // System.out.println ("HERE1"); -+ int dimsize = 0; -+ int n = elem.indexOf('['); -+ if (n != -1) { -+ // System.out.println ("HERE2"); -+ String arrayType = elem.substring(0, n); -+ dimsize++; -+ n = elem.indexOf('[', n + 1); -+ // System.out.println ("HERE2.5"); -+ while (n != -1) { -+ dimsize++; -+ n = elem.indexOf('[', n + 1); -+ // System.out.println ("HERE2.8"); -+ } -+ int[] dims = new int[dimsize]; -+ primitive = primitiveNameToType(arrayType); -+ // System.out.println ("HERE3"); -+ if (primitive != null) { -+ typeList.add(Array.newInstance(primitive, dims) -+ .getClass()); -+ // System.out.println ("HERE4"); -+ } else -+ typeList.add(Array.newInstance( -+ getClass(arrayType, src), dims).getClass()); -+ } else { -+ typeList.add(getClass(elem, src)); -+ } -+ } -+ } -+ if (typeList.size() == 0) { -+ throw new IllegalArgumentException("Invalid JNI signature '" -+ + signature + "'"); -+ } -+ } -+ -+ public static Class getClass(String name, String src) { -+ -+ Class c = null; -+ -+ try { -+ c = Class.forName(name); -+ } catch (ClassNotFoundException cnfe) { -+ -+ StringTokenizer st = new StringTokenizer(src, ","); -+ -+ while (st.hasMoreTokens()) { -+ -+ String tok = st.nextToken(); -+ System.err.println("Searching for " + name + " at key " + tok); -+ -+ try { -+ c = PluginAppletSecurityContext.classLoaders.get(tok).loadClass(name); -+ } catch (ClassNotFoundException e) { -+ // do nothing .. thrown below -+ } -+ -+ if (c != null) -+ break; -+ } -+ } -+ -+ if (c == null) { -+ throw (new RuntimeException(new ClassNotFoundException("Unable to find class " + name))); -+ } -+ -+ return c; -+ } -+ -+ public static Class primitiveNameToType(String name) { -+ if (name.equals("void")) -+ return Void.TYPE; -+ else if (name.equals("boolean")) -+ return Boolean.TYPE; -+ else if (name.equals("byte")) -+ return Byte.TYPE; -+ else if (name.equals("char")) -+ return Character.TYPE; -+ else if (name.equals("short")) -+ return Short.TYPE; -+ else if (name.equals("int")) -+ return Integer.TYPE; -+ else if (name.equals("long")) -+ return Long.TYPE; -+ else if (name.equals("float")) -+ return Float.TYPE; -+ else if (name.equals("double")) -+ return Double.TYPE; -+ else -+ return null; -+ } -+ -+ public Class[] getClassArray() { -+ return typeList.subList(0, typeList.size() - 1).toArray(new Class[] {}); -+ } -+} -+ -+public class PluginAppletSecurityContext { -+ // Context identifier -> PluginAppletSecurityContext object. -+ // FIXME: make private -+ public static HashMap contexts = new HashMap(); -+ -+ public static HashMap classLoaders = new HashMap(); -+ -+ // FIXME: make private -+ public PluginObjectStore store = new PluginObjectStore(); -+ private Throwable throwable = null; -+ private ClassLoader liveconnectLoader = ClassLoader.getSystemClassLoader(); -+ int identifier = 0; -+ -+ static { -+ // FIXME: when should we add each new security context? but how would -+ // we be able to know which context applies to which request from nspr? -+ // the nspr jni functions do not know what applet they are being called -+ // in reference to From langel at redhat.com Sat Oct 18 21:23:18 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:18 +0000 Subject: changeset in /hg/icedtea: 2008-09-23 Lillian Angel changeset 098f7819fe90 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=098f7819fe90 description: 2008-09-23 Lillian Angel * configure.ac: Fixed help string for enable-visualvm. * rt/net/sourceforge/nanoxml/XMLElement.java: Fixed check for special tags. diffstat: 3 files changed, 10 insertions(+), 3 deletions(-) ChangeLog | 6 ++++++ configure.ac | 3 +-- rt/net/sourceforge/nanoxml/XMLElement.java | 4 +++- diffs (54 lines): diff -r f9d81fd1466d -r 098f7819fe90 ChangeLog --- a/ChangeLog Wed Sep 24 11:44:16 2008 -0400 +++ b/ChangeLog Wed Sep 24 13:56:07 2008 -0400 @@ -1,3 +1,9 @@ 2008-09-23 Deepak Bhole + + * configure.ac: Fixed help string for enable-visualvm. + * rt/net/sourceforge/nanoxml/XMLElement.java: Fixed check for special + tags. + 2008-09-23 Deepak Bhole * IcedTeaPlugin.cc: Updated to call new plugin main class. Add function to correctly recognize JS context. diff -r f9d81fd1466d -r 098f7819fe90 configure.ac --- a/configure.ac Wed Sep 24 11:44:16 2008 -0400 +++ b/configure.ac Wed Sep 24 13:56:07 2008 -0400 @@ -118,8 +118,7 @@ AM_CONDITIONAL([ENABLE_DOCS], [test x$EN AC_ARG_ENABLE([visualvm], [AS_HELP_STRING([--enable-visualvm], - [Enable compilation of visualvm. Requires that \ - --with-netbeans-dir=DIR is specified.])], + [Enable compilation of visualvm.])], [enable_visualvm="yes"], [enable_visualvm="no"]) AM_CONDITIONAL(WITH_VISUALVM, test "x${enable_visualvm}" = "xyes") diff -r f9d81fd1466d -r 098f7819fe90 rt/net/sourceforge/nanoxml/XMLElement.java --- a/rt/net/sourceforge/nanoxml/XMLElement.java Wed Sep 24 11:44:16 2008 -0400 +++ b/rt/net/sourceforge/nanoxml/XMLElement.java Wed Sep 24 13:56:07 2008 -0400 @@ -1255,6 +1255,7 @@ public class XMLElement this.reader = isr; this.parserLineNr = 0; int newline = 2; + char prev = ' '; while(true) { char ch; @@ -1289,7 +1290,7 @@ public class XMLElement // If the next char is a ? or !, then we've hit a special tag, // and should skip it. - if (next == '!' || next == '?') { + if (prev == '<' && (next == '!' || next == '?')) { this.skipSpecialTag(0); this.sanitizeCharReadTooMuch = '\0'; } @@ -1306,6 +1307,7 @@ public class XMLElement } } } + prev = next; } out.close(); From dbhole at redhat.com Sat Oct 18 21:23:16 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:16 +0000 Subject: changeset in /hg/icedtea: More updates to Makefile.am to support... Message-ID: changeset 30b1dbd707d5 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=30b1dbd707d5 description: More updates to Makefile.am to support proper separation of plugin packages/classes diffstat: 1 file changed, 24 insertions(+), 10 deletions(-) Makefile.am | 34 ++++++++++++++++++++++++---------- diffs (101 lines): diff -r 3e5d21f2b7a4 -r 30b1dbd707d5 Makefile.am --- a/Makefile.am Thu Sep 18 15:49:10 2008 -0400 +++ b/Makefile.am Sun Sep 21 15:58:46 2008 -0400 @@ -8,21 +8,19 @@ NETBEANS_PLATFORM_MD5SUM = 77c79b3a7d3db NETBEANS_PLATFORM_MD5SUM = 77c79b3a7d3dbe6a8858639f8d564a38 NETBEANS_PROFILER_MD5SUM = ff8e8abc42df6c6749e6b02bcf7bb0a5 VISUALVM_MD5SUM = 4b55bc623418818793392bb233da2927 + +EXCLUDE_LIVECONNECT = | grep -vE "netscape/javascript|org/classpath/icedtea/plugin" if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch -EXCLUDE_LIVECONNECT = -LIVECONNECT_DIR = -C lib/rt netscape else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = ICEDTEAPLUGIN_JAR = PLUGIN_PATCH = patches/icedtea-plugin.patch -EXCLUDE_LIVECONNECT = | grep -v 'netscape/javascript' -LIVECONNECT_DIR = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -580,7 +578,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta else \ test x$${all_patches_ok} = "xyes" && all_patches_ok=$$p ; \ fi ; \ - done ; \ + done ; mv stamps/patch.stamp.tmp stamps/patch.stamp ; \ if ! test x$${all_patches_ok} = "xyes"; then \ echo ERROR patch $${all_patches_ok} FAILED! ; \ @@ -911,6 +909,12 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ cp -pPRf IcedTeaPlugin.jar \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/ + + $(JAR) uf $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/rt.jar \ + -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun + + $(JAR) uf $(BUILD_OUTPUT_DIR)/j2re-image/lib/rt.jar \ + -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -966,6 +970,12 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ cp -pPRf IcedTeaPlugin.jar \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ + + $(JAR) uf $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/rt.jar \ + -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun + + $(JAR) uf $(BUILD_OUTPUT_DIR)/j2re-image/lib/rt.jar \ + -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -1233,10 +1243,10 @@ bootstrap/jdk1.7.0/jre/lib/rt-closed.jar if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ $(JAR) cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net $(LIVECONNECT_DIR) -C lib/rt sun ; \ + -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net $(LIVECONNECT_DIR) -C lib/rt sun ; \ + -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ fi if test -d bootstrap/ecj/jre/lib ; \ then \ @@ -1312,6 +1322,7 @@ IcedTeaPlugin.o: IcedTeaPlugin.cc $(GTK_CFLAGS) \ $(XULRUNNER_CFLAGS) \ -fPIC -c -o $@ $< + IcedTeaPlugin.so: IcedTeaPlugin.o $(CXX) $(CXXFLAGS) \ $< \ @@ -1324,11 +1335,14 @@ IcedTeaPlugin.jar: mkdir -p $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes (cd plugin/icedtea/java/src/main/; \ $(ICEDTEA_BOOT_DIR)/bin/javac -g \ - -d $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ + -d ../../../../../$(BUILD_OUTPUT_DIR)/plugin/icedtea/classes \ -bootclasspath $(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar \ - sun/applet/*.java \ + sun/applet/*.java netscape/javascript/*.java org/classpath/icedtea/plugin/*.java \ ) - $(JAR) cf $@ -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes sun + + $(JAR) cf $@ \ + -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes org/classpath/icedtea/plugin \ + -C $(BUILD_OUTPUT_DIR)/plugin/icedtea/classes netscape/javascript clean-IcedTeaPlugin: rm -f IcedTeaPlugin.o From langel at redhat.com Sat Oct 18 21:23:15 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:15 +0000 Subject: changeset in /hg/icedtea: 2008-09-22 Lillian Angel changeset d2579e023b0e in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d2579e023b0e description: 2008-09-22 Lillian Angel DJ Lucas * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. * acinclude.m4: Added check to determine whether jar supports stdin file args. * patches/icedtea-ecj.patch: Updated patch. * AUTHORS: Added DJ Lucas. diffstat: 5 files changed, 38 insertions(+), 11 deletions(-) AUTHORS | 1 + ChangeLog | 9 +++++++++ Makefile.am | 3 ++- acinclude.m4 | 9 +++++++++ patches/icedtea-ecj.patch | 27 +++++++++++++++++---------- diffs (129 lines): diff -r 8e3089767a4a -r d2579e023b0e AUTHORS --- a/AUTHORS Thu Sep 18 11:31:59 2008 -0400 +++ b/AUTHORS Mon Sep 22 10:39:01 2008 -0400 @@ -11,6 +11,7 @@ Andrew John Hughes Matthias Klose Francis Kung +DJ Lucas Casey Marshall Dan Munckton Raif Naffah diff -r 8e3089767a4a -r d2579e023b0e ChangeLog --- a/ChangeLog Thu Sep 18 11:31:59 2008 -0400 +++ b/ChangeLog Mon Sep 22 10:39:01 2008 -0400 @@ -1,3 +1,12 @@ 2008-09-18 Lillian Angel + DJ Lucas + + * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. + * acinclude.m4: Added check to determine whether jar supports + stdin file args. + * patches/icedtea-ecj.patch: Updated patch. + * AUTHORS: Added DJ Lucas. + 2008-09-18 Lillian Angel * AUTHORS: Added Marc Schoenefeld. diff -r 8e3089767a4a -r d2579e023b0e Makefile.am --- a/Makefile.am Thu Sep 18 11:31:59 2008 -0400 +++ b/Makefile.am Mon Sep 22 10:39:01 2008 -0400 @@ -228,7 +228,8 @@ ICEDTEA_ENV_ECJ = \ "HOTSPOT_BUILD_JOBS=$(PARALLEL_JOBS)" \ "JAVAC=" \ "RHINO_JAR=$(RHINO_JAR)" \ - "JAR_KNOWS_ATFILE=$(JAR_KNOWS_ATFILE)" + "JAR_KNOWS_ATFILE=$(JAR_KNOWS_ATFILE)" \ + "JAR_ACCEPTS_STDIN_LIST=$(JAR_ACCEPTS_STDIN_LIST)" if WITH_CACAO ICEDTEA_ENV_ECJ += \ diff -r 8e3089767a4a -r d2579e023b0e acinclude.m4 --- a/acinclude.m4 Thu Sep 18 11:31:59 2008 -0400 +++ b/acinclude.m4 Mon Sep 22 10:39:01 2008 -0400 @@ -342,9 +342,18 @@ EOF JAR_KNOWS_ATFILE= AC_MSG_RESULT(no) fi + AC_MSG_CHECKING([whether jar supports stdin file arguments]) + if cat _config.list | $JAR cf@ _config.jar 2>/dev/null; then + JAR_ACCEPTS_STDIN_LIST=1 + AC_MSG_RESULT(yes) + else + JAR_ACCEPTS_STDIN_LIST= + AC_MSG_RESULT(no) + fi rm -f _config.txt _config.list _config.jar AC_SUBST(JAR) AC_SUBST(JAR_KNOWS_ATFILE) + AC_SUBST(JAR_ACCEPTS_STDIN_LIST) ]) AC_DEFUN([FIND_RMIC], diff -r 8e3089767a4a -r d2579e023b0e patches/icedtea-ecj.patch --- a/patches/icedtea-ecj.patch Thu Sep 18 11:31:59 2008 -0400 +++ b/patches/icedtea-ecj.patch Mon Sep 22 10:39:01 2008 -0400 @@ -428,32 +428,35 @@ diff -ru openjdk-ecj.orig/langtools/make endif # Override of what javac to use (see deploy workspace) ---- oipenjdk/jdk/make/common/Release.gmk 2007-11-13 16:47:23.000000000 -0500 -+++ openjdk-ecj/jdk/make/common/Release.gmk 2007-11-13 16:48:08.000000000 -0500 -@@ -655,10 +649,19 @@ +--- oipenjdk/jdk/make/common/Release.gmk 2008-08-28 03:10:47.000000000 -0500 ++++ openjdk-ecj/jdk/make/common/Release.gmk 2008-09-16 17:53:16.000000000 -0500 +@@ -655,10 +655,23 @@ $(RES_JAR_ARGLIST): $(RES_JAR_FILELIST) $(prep-target) $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@ -$(RESOURCES_JAR): $(RES_JAR_ARGLIST) $(JAR_MANIFEST_FILE) -- $(prep-target) +$(RESOURCES_JAR): \ + $(if $(JAR_KNOWS_ATFILE),$(RES_JAR_FILELIST),$(RES_JAR_ARGLIST)) \ + $(JAR_MANIFEST_FILE) -+ $(prep-target) + $(prep-target) +ifneq (,$(JAR_KNOWS_ATFILE)) ++ (cd $(CLASSBINDIR) && \ + $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ +- @$(RES_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(JAR_JFLAGS) @$(RES_JAR_FILELIST)) ++else ifneq (,$(JAR_ACCEPTS_STDIN_LIST)) + (cd $(CLASSBINDIR) && $(CAT) $(RES_JAR_FILELIST) | \ + $(BOOT_JAR_CMD) c0mf@ $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS)) +else + (cd $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ -- @$(RES_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS) `cat $(RES_JAR_FILELIST)`) +endif @$(java-vm-cleanup) # Create jsse.jar containing SunJSSE implementation classes -@@ -714,10 +717,18 @@ +@@ -714,10 +727,22 @@ $(RT_JAR_ARGLIST): $(RT_JAR_FILELIST) $(prep-target) $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@ @@ -462,13 +465,17 @@ diff -ru openjdk-ecj.orig/langtools/make + $(JAR_MANIFEST_FILE) $(prep-target) +ifneq (,$(JAR_KNOWS_ATFILE)) ++ (cd $(CLASSBINDIR) && \ + $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ +- @$(RT_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(JAR_JFLAGS) @$(RT_JAR_FILELIST)) ++else ifneq (,$(JAR_ACCEPTS_STDIN_LIST)) + (cd $(CLASSBINDIR) && $(CAT) $(RT_JAR_FILELIST) | \ + $(BOOT_JAR_CMD) c0mf@ $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS)) +else + (cd $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ -- @$(RT_JAR_ARGLIST) $(JAR_JFLAGS) ++ $(BOOT_JAR_CMD) c0mf $(JAR_MANIFEST_FILE) $@ \ + $(JAR_JFLAGS) `$(CAT) $(RT_JAR_FILELIST)`) +endif @$(java-vm-cleanup) From langel at redhat.com Sat Oct 18 21:23:23 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:23 +0000 Subject: changeset in /hg/icedtea: Fixed Netbeans check Message-ID: changeset fc63d0674a46 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=fc63d0674a46 description: Fixed Netbeans check diffstat: 1 file changed, 1 deletion(-) configure.ac | 1 - diffs (11 lines): diff -r 09dcedbe63a8 -r fc63d0674a46 configure.ac --- a/configure.ac Thu Oct 02 10:55:55 2008 -0400 +++ b/configure.ac Thu Oct 02 16:14:10 2008 -0400 @@ -235,7 +235,6 @@ fi fi fi FIND_RHINO_JAR -FIND_NETBEANS WITH_OPENJDK_SRC_ZIP WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP From mark at klomp.org Sat Oct 18 21:23:19 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:19 +0000 Subject: changeset in /hg/icedtea: * patches/icedtea-lucene-crash.patch: ... Message-ID: changeset b5b66d8e6014 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=b5b66d8e6014 description: * patches/icedtea-lucene-crash.patch: New patch. * Makefile.am (NON_ZERO_PATCHES): Add icedtea-lucene-crash.patch. * HACKING: Document icedtea-lucene-crash.patch. diffstat: 4 files changed, 75 insertions(+), 2 deletions(-) ChangeLog | 8 +++- HACKING | 1 Makefile.am | 4 +- patches/icedtea-lucene-crash.patch | 64 ++++++++++++++++++++++++++++++++++++ diffs (108 lines): diff -r 09fccdb9f333 -r b5b66d8e6014 ChangeLog --- a/ChangeLog Thu Sep 25 20:42:43 2008 +0200 +++ b/ChangeLog Thu Sep 25 23:35:32 2008 +0200 @@ -1,4 +1,10 @@ 2008-08-28 Mark Wielaard +2008-09-25 Mark Wielaard + + * patches/icedtea-lucene-crash.patch: New patch. + * Makefile.am (NON_ZERO_PATCHES): Add icedtea-lucene-crash.patch. + * HACKING: Document icedtea-lucene-crash.patch. + +2008-09-25 Mark Wielaard * patches/icedtea-clean-crypto.patch: Cleaned up. Remove unneeded classes JarVerifier and JceSecurityManager diff -r 09fccdb9f333 -r b5b66d8e6014 HACKING --- a/HACKING Thu Sep 25 20:42:43 2008 +0200 +++ b/HACKING Thu Sep 25 23:35:32 2008 +0200 @@ -64,6 +64,7 @@ The following patches are only applied t * icedtea-sparc.patch: Add support for GNU/Linux on SPARC. * icedtea-jdk-docs-target.patch: Always set DOCS_TARGET. +* icedtea-lucene-crash.patch: Fix lucene bad code generation bug #6707044. The following patches are only applied to OpenJDK in IcedTea: diff -r 09fccdb9f333 -r b5b66d8e6014 Makefile.am --- a/Makefile.am Thu Sep 25 20:42:43 2008 +0200 +++ b/Makefile.am Thu Sep 25 23:35:32 2008 +0200 @@ -427,7 +427,9 @@ ZERO_PATCHES = \ patches/icedtea-ia64-bugfix.patch # Patches needed when not using the newer OpenJDK 7 HotSpot for zero. -NON_ZERO_PATCHES = patches/icedtea-signed-types-hot6.patch +NON_ZERO_PATCHES = \ + patches/icedtea-signed-types-hot6.patch \ + patches/icedtea-lucene-crash.patch if ZERO_BUILD ZERO_PATCHES_COND = $(ZERO_PATCHES) diff -r 09fccdb9f333 -r b5b66d8e6014 patches/icedtea-lucene-crash.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-lucene-crash.patch Thu Sep 25 23:35:32 2008 +0200 @@ -0,0 +1,64 @@ +diff -r 4aebfff4f8a2 hotspot/src/share/vm/opto/parse2.cpp +--- openjdk.orig/hotspot/src/share/vm/opto/parse2.cpp Mon Sep 15 11:38:34 2008 +0200 ++++ openjdk/hotspot/src/share/vm/opto/parse2.cpp Thu Sep 25 21:54:26 2008 +0200 +@@ -868,6 +868,8 @@ + return prob < PROB_MIN; + } + ++//-------------------------------repush_if_args-------------------------------- ++// Push arguments of an "if" bytecode back onto the stack by adjusting _sp. + inline void Parse::repush_if_args() { + #ifndef PRODUCT + if (PrintOpto && WizardMode) { +@@ -896,7 +898,6 @@ + if (PrintOpto && Verbose) + tty->print_cr("Never-taken backedge stops compilation at bci %d",bci()); + #endif +- repush_if_args(); // to gather stats on loop + uncommon_trap(Deoptimization::Reason_unreached, + Deoptimization::Action_reinterpret, + NULL, "cold"); +diff -r 51798f0e554f test/compiler/6707044/LuceneCrash.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6707044/LuceneCrash.java Thu Sep 25 21:55:28 2008 +0200 +@@ -0,0 +1,40 @@ ++/* ++ * @test ++ * @bug 6707044 ++ * @summary uncommon_trap of ifnull bytecode leaves garbage on expression stack ++ * @run main/othervm -Xbatch LuceneCrash ++ */ ++public class LuceneCrash { ++ ++ public static void main(String[] args) throws Throwable { ++ new LuceneCrash().crash(); ++ } ++ ++ private Object alwaysNull; ++ ++ final void crash() throws Throwable { ++ for (int r = 0; r < 3; r++) { ++ for (int docNum = 0; docNum < 10000;) { ++ if (r < 2) { ++ for(int j=0;j<3000;j++) ++ docNum++; ++ } else { ++ docNum++; ++ doNothing(getNothing()); ++ if (alwaysNull != null) { ++ throw new RuntimeException("BUG: checkAbort is always null: r=" + r + " of 3; docNum=" + docNum); ++ } ++ } ++ } ++ } ++ } ++ ++ Object getNothing() { ++ return this; ++ } ++ ++ int x; ++ void doNothing(Object o) { ++ x++; ++ } ++} From mark at klomp.org Sat Oct 18 21:23:19 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:19 +0000 Subject: changeset in /hg/icedtea: * patches/icedtea-hotspot7-tests.patch... Message-ID: changeset f2f33bede67b in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=f2f33bede67b description: * patches/icedtea-hotspot7-tests.patch: New patch. * Makefile.am (ICEDTEA_PATCHES): Add icedtea-hotspot7-tests.patch. * HACKING: Document icedtea-hotspot7-tests.patch. diffstat: 4 files changed, 7416 insertions(+) ChangeLog | 6 HACKING | 1 Makefile.am | 1 patches/icedtea-hotspot7-tests.patch | 7408 ++++++++++++++++++++++++++++++++++ diffs (truncated from 7447 to 500 lines): diff -r b5b66d8e6014 -r f2f33bede67b ChangeLog --- a/ChangeLog Thu Sep 25 23:35:32 2008 +0200 +++ b/ChangeLog Fri Sep 26 11:37:46 2008 +0200 @@ -1,3 +1,9 @@ 2008-09-25 Mark Wielaard + + * patches/icedtea-hotspot7-tests.patch: New patch. + * Makefile.am (ICEDTEA_PATCHES): Add icedtea-hotspot7-tests.patch. + * HACKING: Document icedtea-hotspot7-tests.patch. + 2008-09-25 Mark Wielaard * patches/icedtea-lucene-crash.patch: New patch. diff -r b5b66d8e6014 -r f2f33bede67b HACKING --- a/HACKING Thu Sep 25 23:35:32 2008 +0200 +++ b/HACKING Fri Sep 26 11:37:46 2008 +0200 @@ -59,6 +59,7 @@ The following patches are currently appl * icedtea-alpha-fixes.patch: Fix build issues on alpha-linux. * icedtea-arch.patch: Add support for additional architectures. * icedtea-alt-jar.patch: Add support for using an alternate jar tool in JDK building. +* icedtea-hotspot7-tests.patch: Adds hotspot compiler tests from jdk7 tree. The following patches are only applied to OpenJDK6 in IcedTea6: diff -r b5b66d8e6014 -r f2f33bede67b Makefile.am --- a/Makefile.am Thu Sep 25 23:35:32 2008 +0200 +++ b/Makefile.am Fri Sep 26 11:37:46 2008 +0200 @@ -448,6 +448,7 @@ ICEDTEA_FSG_PATCHES = ICEDTEA_PATCHES = \ $(ZERO_PATCHES_COND) \ + patches/icedtea-hotspot7-tests.patch \ patches/icedtea-copy-plugs.patch \ patches/icedtea-version.patch \ patches/icedtea-text-relocations.patch \ diff -r b5b66d8e6014 -r f2f33bede67b patches/icedtea-hotspot7-tests.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-hotspot7-tests.patch Fri Sep 26 11:37:46 2008 +0200 @@ -0,0 +1,7408 @@ +diff -r 4aebfff4f8a2 hotspot/test/compiler/6646019/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6646019/Test.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,52 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ * ++ */ ++ ++/* ++ * @test ++ * @bug 6646019 ++ * @summary array subscript expressions become top() with -d64 ++ * @run main/othervm -Xcomp -XX:CompileOnly=Test.test Test ++*/ ++ ++ ++public class Test { ++ final static int i = 2076285318; ++ long l = 2; ++ short s; ++ ++ public static void main(String[] args) { ++ Test t = new Test(); ++ try { t.test(); } ++ catch (Throwable e) { ++ if (t.l != 5) { ++ System.out.println("Fails: " + t.l + " != 5"); ++ } ++ } ++ } ++ ++ private void test() { ++ l = 5; ++ l = (new short[(byte)-2])[(byte)(l = i)]; ++ } ++} +diff -r 4aebfff4f8a2 hotspot/test/compiler/6646020/Tester.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6646020/Tester.java Fri Sep 26 09:52:43 2008 +0200 +@@ -0,0 +1,886 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6646020 ++ * @summary assert(in_bb(n),"must be in block") in -Xcomp mode ++ */ ++ ++/* Complexity upper bound: 3361 ops */ ++ ++class Tester_Class_0 { ++ static byte var_1; ++ ++ ++ public Tester_Class_0() ++ { ++ "".length(); ++ { ++ var_1 = (var_1 = (new byte[(byte)'D'])[(byte)2.40457E38F]); ++ var_1 = (var_1 = (byte)1.738443503665377E307); ++ var_1 = (var_1 = (byte)1237144669662298112L); ++ } ++ var_1 = "baldh".equalsIgnoreCase("") ? (var_1 = (byte)7.2932087E37F) : (byte)3909726578709910528L; ++ var_1 = (var_1 = (var_1 = (var_1 = (byte)7.223761846153971E307))); ++ var_1 = (var_1 = (var_1 = (var_1 = (var_1 = (byte)((short)7860452029249754112L + (byte)1.7374232546809952E308))))); ++ var_1 = (!true ? (var_1 = (byte)4359229782598970368L) : (short)(byte)1.7509836746850026E308) >= 'P' ? (var_1 = (byte)3.275114793095594E307) : (byte)(- ((byte)1.5595572E38F) / 8.2971296E37F); ++ byte var_9 = (true ? true : (false ? true : false)) ? (var_1 = (var_1 = (byte)9.928434E37F)) : (var_1 = (byte)9.785060633966518E307); ++ final byte var_10 = 53; ++ var_9 <<= (true | true) & (((var_10 == "".substring(2001075014).compareToIgnoreCase("rhbytggv") ? !true : ! !true) ? !false : false) ? !true & true : !false) ? var_10 : var_10; ++ var_9 <<= - (var_9 -= - ~6397182310329038848L >> (char)955837891 << (short)- - -8.4452034E37F >> + ~5485157895941338112L); ++ --var_9; ++ var_9 >>= 'V'; ++ var_9 -= (new char[var_10])[var_9]; ++ double var_11; ++ var_11 = (var_11 = (new int[var_9 = (var_9 %= 684423748)])[var_9]); ++ var_9 /= 'q'; ++ var_9 *= ~var_9 | (short)1.7667766368850557E308 - "w".trim().charAt(- (var_9 /= + (var_11 = 'q'))); ++ if (var_10 <= 605036859609030656L | !false & false) ++ { ++ var_9 >>>= false ^ false ? (new short[var_10])[var_10] : (short)1013619326108001280L; ++ } ++ else ++ { ++ var_11 = var_9; ++ } ++ var_9 -= 'X'; ++ var_9 *= 'E'; ++ { ++ var_9 ^= (new short[var_9])[var_9 >>>= 'c']; ++ } ++ var_11 = 4315867074042433536L; ++ double var_12 = 1.2183900219527627E308; ++ var_9 <<= (false ? !false : false) ? '\\' : 'D'; ++ } ++ ++ ++ ++ ++ private final long func_0() ++ { ++ float var_2 = 0F; ++ var_1 = (var_1 = (var_1 = (byte)((short)1.4106931056021857E308 % var_2))); ++ for (new String(); true & (! !true ^ !false | false) && var_2 < 1; var_1 = (var_1 = (var_1 = (var_1 = (byte)1183673628639185920L)))) ++ { ++ var_1 = true | false ? (var_1 = (byte)1.6263855E37F) : (byte)'O'; ++ var_2++; ++ "fui".toUpperCase(); ++ final int var_3 = (var_1 = (var_1 = (byte)'i')) + (byte)2008561384 / (byte)1.4413369179905006E308; ++ } ++ var_1 = (var_1 = false ^ false ? (byte)2.3850814E38F : (byte)4.42887E37F); ++ final float var_4 = 3.052265E38F; ++ var_1 = (var_1 = (var_1 = (var_1 = (var_1 = (byte)'o')))); ++ long var_5; ++ var_1 = (var_1 = (byte)((var_1 = (byte)1913212786) * (var_1 = (byte)var_2))); ++ var_5 = (short)3.2024069E38F * (short)(var_5 = 'Q'); ++ var_5 = (false ? true : false) ? (short)1098137179 : (byte)~695765814858203136L; ++ var_1 = (var_1 = true & false ^ true ? (byte)1662737306 : (byte)'r'); ++ { ++ (true ? "a" : "lymivj".toString()).codePointCount((short)3.032349E38F + (var_1 = (var_1 = (var_1 = (var_1 = (byte)1.3159799E37F)))), (byte)2.0898819853138264E307 & (new short[(byte)(short)var_2])[var_1 = (byte)(short)4.859332921376913E307]); ++ } ++ double var_6; ++ var_6 = 1359078277; ++ final float var_7 = 3.5952457E37F; ++ var_5 = ('u' | 9005660398910009344L) << 'j'; ++ int var_8; ++ var_5 = (!false || true & !false) && false ? (byte)1836342254 : (byte)1.4836203E38F; ++ var_1 = (var_1 = (var_1 = (var_1 = (byte)1.5824984701060493E308))); ++ var_1 = (var_1 = (var_1 = (byte)~ (var_1 = (var_1 = (var_1 = (byte)var_7))))); ++ return +9.067416E37F <= (true | true ^ false ? (var_1 = (byte)(short)1.5243446E38F) : (var_1 = (byte)1.6893049E37F)) ? (byte)~4408841475280588800L - (var_5 = (var_1 = (byte)2.1542209E38F)) : (var_8 = (short)var_4); ++ } ++ ++ protected final static double func_1(final char arg_0, final long arg_1) ++ { ++ var_1 = (short)8779631802405542912L << 'x' <= arg_0 ? (byte)+9.96859509852443E307 : (var_1 = (var_1 = (byte)(short)5.218454879223281E307)); ++ return 5.57437404144192E307; ++ } ++ ++ double func_2(byte arg_0, final boolean arg_1, Object arg_2) ++ { ++ arg_2 = arg_1 != arg_1 ? "wq" : "w"; ++ arg_2 = arg_2; ++ if (arg_1) ++ { ++ arg_2 = false & arg_1 ? "hasmp" : (arg_2 = arg_2); ++ } ++ else ++ { ++ arg_2 = "lcquv"; ++ } ++ arg_0 -= arg_1 ^ false ? (arg_0 |= (short)arg_0) : (~3462197988186869760L | 7274210797196514304L) % - - + +130998764279904256L; ++ arg_0 &= (true ? - - ~7861994999369861120L << 'l' : 'c') * 1246069704; ++ return (arg_1 ? 9.311174E37F : 1.7085558737202237E308) * 1168887722; ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_0.var_1 = "; result += Tester.Printer.print(var_1); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++final class Tester_Class_1 extends Tester_Class_0 { ++ static Object var_13; ++ final static boolean var_14 = false | (false ? false : true); ++ Object var_15; ++ static byte var_16; ++ final long var_17 = (long)(-9.40561658911133E307 - (short)2.2016736E38F) ^ (char)1099667310; ++ static boolean var_18; ++ static float var_19; ++ final static byte var_20 = 123; ++ static byte var_21 = var_1 = (var_1 = var_20); ++ final static float var_22 = 1.5415572E38F; ++ ++ ++ public Tester_Class_1() ++ { ++ char[][] var_39; ++ boolean var_40 = false | !var_14; ++ if (var_14) ++ { ++ final String[] var_41 = (new String[var_21][var_20])[var_21 *= var_21]; ++ var_15 = (new Tester_Class_0[var_20])[var_20]; ++ --var_21; ++ int var_42; ++ } ++ else ++ { ++ var_19 = (short)325110146; ++ } ++ var_40 &= true; ++ var_13 = (((new Tester_Class_1[var_21 |= (new char[var_20])[var_21]])[var_21]).var_15 = (new String[var_21][var_20][var_20])[var_21 >>= (byte)(int)var_22]); ++ var_15 = "m"; ++ } ++ ++ ++ ++ ++ ++ protected final static Tester_Class_0 func_0(final char arg_0, boolean arg_1) ++ { ++ final short var_23 = false ? (short)2.2956268E38F : var_20; ++ { ++ ((new Tester_Class_1[var_21])[var_20]).var_15 = ((new Tester_Class_0[var_20][var_21])[var_21])[var_20]; ++ } ++ var_19 = var_23; ++ { ++ var_21++; ++ --var_21; ++ var_13 = (false ? arg_1 : arg_1) ? "" : "aianteahl"; ++ arg_1 ^= ! (var_14 ? var_14 : !var_14); ++ } ++ (arg_1 ? "rq" : "certd").trim(); ++ arg_1 ^= 's' < var_22; ++ var_19 = 'T'; ++ var_19 = var_14 ? --var_21 : var_20; ++ var_19 = (var_21 >>>= ~ -1559436447128426496L >> 88912720393932800L) | (new char[var_20][var_21])[var_21][var_20]; ++ short var_24 = 7601; ++ if (arg_1) ++ { ++ var_13 = (new Tester_Class_0[var_20])[var_21]; ++ } ++ else ++ { ++ var_19 = var_23; ++ } ++ var_19 = var_24; ++ var_19 = 174274929356416000L; ++ return arg_1 ? (Tester_Class_0)(new Object[var_20])[var_21 >>>= - ((byte)6471979169965446144L)] : (new Tester_Class_0[var_21])[var_20]; ++ } ++ ++ private static int func_1(final Object arg_0, final boolean arg_1) ++ { ++ var_19 = 'N'; ++ var_13 = "ftspm".toUpperCase(); ++ var_18 = arg_1 ? !arg_1 : var_14; ++ var_19 = var_21 % 'j'; ++ { ++ var_13 = new short[var_21 >>= 8019540572802872320L]; ++ } ++ final Tester_Class_0 var_25 = arg_1 ? ((short)1.3614569631193786E308 >= (short)var_20 ? func_0('O', true) : (Tester_Class_0)arg_0) : func_0('e', false); ++ "cltpxrg".offsetByCodePoints((new short[var_20])[(byte)'F'] & var_20, 942627356); ++ final Object var_26 = ((new Tester_Class_1[var_21])[var_20]).var_15 = arg_0; ++ { ++ var_21 |= 'H'; ++ } ++ var_19 = 4705089801895780352L; ++ var_19 = (var_18 = arg_1 & false) ? var_20 : (! (~var_21 > var_22) ? (new short[var_20])[var_21] : (short)3904907750551380992L); ++ var_18 = false; ++ { ++ var_18 = "aoy".startsWith("ia", 18060804); ++ if (true) ++ { ++ final short var_27 = 4832; ++ } ++ else ++ { ++ var_18 = (var_18 = arg_1) ? !false : !var_14; ++ } ++ var_18 = (var_18 = var_14); ++ var_19 = 'L'; ++ } ++ func_0((false ? ! ((var_21 -= 4.670301365216022E307) > 1.1839209E37F) : (var_18 = false)) ? 's' : 'R', 'Z' > - ((long)var_21) << 2585724390819764224L & var_25.func_2(var_21, false, var_13 = var_25) != 4918861136400833536L); ++ double var_28 = 0; ++ var_21 %= -var_28; ++ for (byte var_29 = 91; arg_1 && (var_28 < 1 && false); var_19 = var_20) ++ { ++ var_19 = (var_18 = arg_1) & (var_18 = false) ? 'm' : '['; ++ var_28++; ++ var_18 = var_14; ++ var_21 += (short)1363703973; ++ } ++ var_19 = (var_19 = var_22); ++ var_18 = (var_18 = false | false ? 1743087391 <= (var_21 >>= 8790741242417599488L) : !arg_1); ++ var_18 = true | true; ++ --var_21; ++ var_18 = !var_14 & false; ++ "mt".indexOf(var_14 ? new String("fpu") : "awivb", (var_14 ? !true : (var_18 = var_14)) ? + ++var_21 : ~var_20); ++ return (short)(new float[var_21--])[var_21] & ((var_18 = false) ? (var_21 *= 'N') : var_20 + (short)1680927063794178048L) & 1839004800; ++ } ++ ++ protected static int func_2(Tester_Class_0[][] arg_0) ++ { ++ ((new Tester_Class_1[var_20][var_21])[var_20][var_20]).var_15 = ((new int[var_21][var_21][(byte)var_22])[var_21 <<= var_20])[var_20]; ++ ((new Tester_Class_1[var_20])[var_20]).var_15 = "d"; ++ int var_30 = 0; ++ "joxjgpywp".lastIndexOf(1834367264 >> var_21, (byte)7.572305E37F >>> (false ? (short)2.3909862E38F : + - +3939434849912855552L)); ++ while (var_14 | false ^ var_14 && (var_30 < 1 && true)) ++ { ++ var_1 = var_20; ++ var_30++; ++ var_13 = new float[var_21][--var_21]; ++ boolean var_31; ++ } ++ var_19 = ((new Tester_Class_1[var_21])[var_20]).var_17 <= (~2158227803735181312L & 6001748808824762368L) ? (short)var_20 : var_20; ++ var_18 = (var_18 = true); ++ return (byte)(new short[var_20])[var_20] >>> ((new char[var_21][var_21])[var_21 |= 6074708801143703552L])[var_20]; ++ } ++ ++ private final String func_3(boolean arg_0, short arg_1, short arg_2) ++ { ++ var_13 = (Tester_Class_0)((arg_0 ^= arg_0) ? (var_13 = (var_15 = (var_15 = "grfphyrs"))) : (var_13 = new Object[var_21 *= ']'])); ++ if (true & ! (arg_0 ^= !arg_0 | true)) ++ { ++ boolean var_32 = true; ++ var_19 = --arg_1; ++ arg_2 <<= var_21; ++ } ++ else ++ { ++ arg_0 |= false; ++ } ++ var_21 >>>= arg_1; ++ final float var_33 = 2.5500976E38F; ++ return ""; ++ } ++ ++ private static String func_4(final double arg_0, final Object arg_1, final short[] arg_2, final char arg_3) ++ { ++ float var_34; ++ var_21++; ++ ((new Tester_Class_1[var_20])[var_20]).var_15 = false ? arg_1 : arg_1; ++ var_13 = arg_1; ++ var_19 = var_22; ++ var_13 = new long[var_21 /= 1038797776 + var_21][--var_21]; ++ ++var_21; ++ var_18 = false && false; ++ var_21--; ++ "".lastIndexOf("kjro"); ++ final int var_35 = (var_21 <<= var_21--) * var_21--; ++ if ("kohilkx".startsWith("gy", var_35)) ++ { ++ var_34 = 2.0849673E37F; ++ } ++ else ++ { ++ double var_36 = arg_0; ++ } ++ var_34 = (var_21 /= var_20); ++ { ++ func_2(new Tester_Class_0[var_20][var_21]); ++ var_34 = var_20 * (- ~5805881602002385920L / arg_3) << (short)~8041668398152312832L; ++ var_13 = (var_13 = "qfwbfdf"); ++ } ++ ((new Tester_Class_1[var_20])[var_21 += var_20]).var_15 = false ? func_0(arg_3, var_14) : func_0('J', var_18 = var_14); ++ var_18 = (var_18 = var_14) & var_14; ++ if ((new boolean[var_21])[var_21 >>= 121380821]) ++ { ++ var_34 = 1382979413; ++ } ++ else ++ { ++ var_34 = (var_20 & var_20) + (true ? 'I' : arg_3); ++ } ++ byte var_37; ++ ((new Tester_Class_1[var_20][var_21])[var_14 ^ var_14 | !var_14 ? var_20 : var_20][var_21 ^= (short)1692053070 & + ~7232298887878750208L - 1512699919]).var_15 = arg_2; ++ byte var_38 = 1; ++ var_38 -= arg_0; ++ var_34 = arg_3; ++ return var_14 ? "" : "xgkr".toUpperCase(); ++ } ++ ++ public String toString() ++ { ++ String result = "[\n"; ++ result += "Tester_Class_1.var_1 = "; result += Tester.Printer.print(var_1); ++ result += "\n"; ++ result += "Tester_Class_1.var_16 = "; result += Tester.Printer.print(var_16); ++ result += "\n"; ++ result += "Tester_Class_1.var_20 = "; result += Tester.Printer.print(var_20); ++ result += "\n"; ++ result += "Tester_Class_1.var_21 = "; result += Tester.Printer.print(var_21); ++ result += "\n"; ++ result += "Tester_Class_1.var_14 = "; result += Tester.Printer.print(var_14); ++ result += "\n"; ++ result += "Tester_Class_1.var_18 = "; result += Tester.Printer.print(var_18); ++ result += "\n"; ++ result += "Tester_Class_1.var_17 = "; result += Tester.Printer.print(var_17); ++ result += "\n"; ++ result += "Tester_Class_1.var_19 = "; result += Tester.Printer.print(var_19); ++ result += "\n"; ++ result += "Tester_Class_1.var_22 = "; result += Tester.Printer.print(var_22); ++ result += "\n"; ++ result += "Tester_Class_1.var_13 = "; result += Tester.Printer.print(var_13); ++ result += "\n"; ++ result += "Tester_Class_1.var_15 = "; result += Tester.Printer.print(var_15); ++ result += ""; ++ result += "\n]"; ++ return result; ++ } ++} ++ ++ ++class Tester_Class_2 extends Tester_Class_0 { ++ final int var_43 = 1600723343; ++ static long var_44 = ~1297640037857117184L; ++ static String var_45 = "ejaglds"; ++ double var_46; ++ static float var_47 = 7.9423827E37F; ++ static Tester_Class_1[][] var_48; ++ ++ ++ public Tester_Class_2() ++ { ++ var_45 = (var_45 = "nkulkweqt"); ++ var_47 %= (new char[Tester_Class_1.var_21 >>= (short)Tester_Class_1.var_20])[Tester_Class_1.var_20]; ++ { ++ Tester_Class_1.var_18 = Tester_Class_1.var_14; ++ } ++ var_47 %= 1.559461406041646E308; ++ var_44 -= Tester_Class_1.var_21++ & ((new Tester_Class_1[Tester_Class_1.var_20])[Tester_Class_1.var_20]).var_17; ++ var_44 *= false ? (short)Tester_Class_1.var_20 : (short)var_47; ++ Tester_Class_1.var_13 = (new Tester_Class_1().var_15 = new char[Tester_Class_1.var_20]); ++ var_46 = 'i'; ++ double var_49 = var_46 = false ? (var_47 *= (var_46 = var_43)) : Tester_Class_1.var_20; ++ var_49 += 'k'; ++ } From langel at redhat.com Sat Oct 18 21:23:22 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:22 +0000 Subject: changeset in /hg/icedtea: 2008-09-30 Lillian Angel changeset 0b0f039954b2 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=0b0f039954b2 description: 2008-09-30 Lillian Angel * Makefile.am (EXTRA_DIST): Added visualvm.desktop. * visualvm.desktop: New file. diffstat: 3 files changed, 17 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ Makefile.am | 2 +- visualvm.desktop | 10 ++++++++++ diffs (39 lines): diff -r 4089c5ff39f2 -r 0b0f039954b2 ChangeLog --- a/ChangeLog Tue Sep 30 09:53:18 2008 -0400 +++ b/ChangeLog Tue Sep 30 13:20:46 2008 -0400 @@ -1,3 +1,9 @@ 2008-09-30 Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added visualvm.desktop. + * visualvm.desktop: New file. + 2008-09-30 Lillian Angel * Makefile.am: Updated cleanup. diff -r 4089c5ff39f2 -r 0b0f039954b2 Makefile.am --- a/Makefile.am Tue Sep 30 09:53:18 2008 -0400 +++ b/Makefile.am Tue Sep 30 13:20:46 2008 -0400 @@ -79,7 +79,7 @@ EXTRA_DIST = rt generated $(ICEDTEA_PATC $(ICEDTEA_ECJ_PATCH) gcjwebplugin.cc tools-copy contrib ports \ patches/icedtea-gcc-4.3.patch extra $(ZERO_PATCHES) \ patches/icedtea-arch.patch patches/icedtea-cacao.patch \ - javaws.png javaws.desktop \ + javaws.png javaws.desktop visualvm.desktop \ overlays extra jconsole.desktop policytool.desktop \ test/jtreg patches/icedtea-plugin.patch \ patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ diff -r 4089c5ff39f2 -r 0b0f039954b2 visualvm.desktop --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/visualvm.desktop Tue Sep 30 13:20:46 2008 -0400 @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=OpenJDK VisualVM +Comment=Integrates commandline JDK tools and profiling capabilites. +Exec=/usr/bin/jvisualvm +Icon=java +Terminal=false +Type=Application +Categories=Development;Java; +Version=1.0 +MimeType=application/x-java-jnlp-file; From gbenson at redhat.com Sat Oct 18 21:23:21 2008 From: gbenson at redhat.com (Gary Benson) Date: Sun, 19 Oct 2008 04:23:21 +0000 Subject: changeset in /hg/icedtea: 2008-09-30 Gary Benson changeset 28523a4d7bd6 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=28523a4d7bd6 description: 2008-09-30 Gary Benson * patches/icedtea-shark.patch: Updated to latest Shark. * ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp: Likewise. * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp: Likewise. * ports/hotspot/src/cpu/zero/vm/frame_zero.cpp: Likewise. * ports/hotspot/src/cpu/zero/vm/frame_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/interpreterFrame_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp: Likewise. * ports/hotspot/src/cpu/zero/vm/nativeInst_zero.cpp: Likewise. * ports/hotspot/src/cpu/zero/vm/nativeInst_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp: Likewise. * ports/hotspot/src/cpu/zero/vm/sharkFrame_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/stack_zero.hpp: Likewise. * ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp: Likewise. * ports/hotspot/src/share/vm/includeDB_shark: Likewise. * ports/hotspot/src/share/vm/shark/sharkBlock.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkBlock.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkConstantPool.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkConstantPool.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkEntry.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkFunction.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkFunction.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkMonitor.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkState.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkState.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkState.inline.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkType.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkValue.hpp: Likewise. * ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp: New file. * ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp: Likewise. * ports/hotspot/src/share/vm/shark/sharkValue.inline.hpp: Likewise. diffstat: 47 files changed, 4107 insertions(+), 1340 deletions(-) ChangeLog | 49 patches/icedtea-shark.patch | 115 ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp | 4 ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp | 184 + ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp | 6 ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp | 49 ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp | 7 ports/hotspot/src/cpu/zero/vm/frame_zero.cpp | 26 ports/hotspot/src/cpu/zero/vm/frame_zero.hpp | 21 ports/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp | 11 ports/hotspot/src/cpu/zero/vm/interpreterFrame_zero.hpp | 9 ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp | 12 ports/hotspot/src/cpu/zero/vm/nativeInst_zero.cpp | 54 ports/hotspot/src/cpu/zero/vm/nativeInst_zero.hpp | 4 ports/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp | 4 ports/hotspot/src/cpu/zero/vm/sharkFrame_zero.hpp | 2 ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp | 126 - ports/hotspot/src/cpu/zero/vm/stack_zero.hpp | 43 ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp | 9 ports/hotspot/src/share/vm/includeDB_shark | 57 ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 1438 +++++++----- ports/hotspot/src/share/vm/shark/sharkBlock.hpp | 319 +- ports/hotspot/src/share/vm/shark/sharkBuilder.cpp | 2 ports/hotspot/src/share/vm/shark/sharkBuilder.hpp | 2 ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.cpp | 114 ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.hpp | 49 ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 225 + ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 353 ++ ports/hotspot/src/share/vm/shark/sharkCompiler.cpp | 51 ports/hotspot/src/share/vm/shark/sharkCompiler.hpp | 8 ports/hotspot/src/share/vm/shark/sharkConstantPool.cpp | 23 ports/hotspot/src/share/vm/shark/sharkConstantPool.hpp | 1 ports/hotspot/src/share/vm/shark/sharkEntry.cpp | 15 ports/hotspot/src/share/vm/shark/sharkFunction.cpp | 138 - ports/hotspot/src/share/vm/shark/sharkFunction.hpp | 122 - ports/hotspot/src/share/vm/shark/sharkMonitor.cpp | 40 ports/hotspot/src/share/vm/shark/sharkMonitor.hpp | 6 ports/hotspot/src/share/vm/shark/sharkRuntime.cpp | 437 +++ ports/hotspot/src/share/vm/shark/sharkRuntime.hpp | 89 ports/hotspot/src/share/vm/shark/sharkState.cpp | 437 ++- ports/hotspot/src/share/vm/shark/sharkState.hpp | 127 - ports/hotspot/src/share/vm/shark/sharkState.inline.hpp | 49 ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 101 ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 76 ports/hotspot/src/share/vm/shark/sharkType.cpp | 4 ports/hotspot/src/share/vm/shark/sharkValue.hpp | 395 ++- ports/hotspot/src/share/vm/shark/sharkValue.inline.hpp | 34 diffs (truncated from 7231 to 500 lines): diff -r 9ff3417e28cc -r 28523a4d7bd6 ChangeLog --- a/ChangeLog Mon Sep 29 12:04:41 2008 -0400 +++ b/ChangeLog Tue Sep 30 08:42:10 2008 -0400 @@ -1,3 +1,52 @@ 2008-09-26 Mark Wielaard + + * patches/icedtea-shark.patch: Updated to latest Shark. + * ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/frame_zero.cpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/frame_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/interpreterFrame_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/nativeInst_zero.cpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/nativeInst_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/sharkFrame_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/stack_zero.hpp: Likewise. + * ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp: Likewise. + * ports/hotspot/src/share/vm/includeDB_shark: Likewise. + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkBlock.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkConstantPool.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkConstantPool.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkEntry.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkFunction.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkFunction.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkMonitor.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkState.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkState.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkState.inline.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkType.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkValue.hpp: Likewise. + * ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp: New file. + * ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp: Likewise. + * ports/hotspot/src/share/vm/shark/sharkValue.inline.hpp: Likewise. + 2008-09-26 Mark Wielaard * patches/icedtea-6712835-ifnode.patch: New patch. diff -r 9ff3417e28cc -r 28523a4d7bd6 patches/icedtea-shark.patch --- a/patches/icedtea-shark.patch Mon Sep 29 12:04:41 2008 -0400 +++ b/patches/icedtea-shark.patch Tue Sep 30 08:42:10 2008 -0400 @@ -303,3 +303,118 @@ diff -r ef3bb05d21d5 openjdk/hotspot/src } +diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp +--- openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp Mon Sep 29 08:47:58 2008 +0100 ++++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp Mon Sep 29 08:51:58 2008 +0100 +@@ -94,9 +94,17 @@ public: + private: + GrowableArray* _set; + ++#ifdef SHARK ++ // XXX This can be removed if it turns out we have to deal ++ // with T_ADDRESS values the same as everything else. ++ public: ++#endif // SHARK + JsrRecord* record_at(int i) { + return _set->at(i); + } ++#ifdef SHARK ++ private: ++#endif // SHARK + + // Insert the given JsrRecord into the JsrSet, maintaining the order + // of the set and replacing any element with the same entry address. +@@ -515,6 +523,13 @@ public: + ciType* local_type_at(int i) const { return _state->local_type_at(i); } + ciType* stack_type_at(int i) const { return _state->stack_type_at(i); } + ++ // access to the JSRs ++#ifdef SHARK ++ // XXX This can be removed if it turns out we have to deal ++ // with T_ADDRESS values the same as everything else. ++ JsrSet* jsrset() const { return _jsrs; } ++#endif // SHARK ++ + // Get the successors for this Block. + GrowableArray* successors(ciBytecodeStream* str, + StateVector* state, +diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp +--- openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp Mon Sep 29 08:47:58 2008 +0100 ++++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp Mon Sep 29 08:54:36 2008 +0100 +@@ -217,6 +217,7 @@ Deoptimization::UnrollBlock* Deoptimizat + + } + ++#ifndef SHARK + // Compute the caller frame based on the sender sp of stub_frame and stored frame sizes info. + CodeBlob* cb = stub_frame.cb(); + // Verify we have the right vframeArray +@@ -227,6 +228,10 @@ Deoptimization::UnrollBlock* Deoptimizat + assert(cb->is_deoptimization_stub() || cb->is_uncommon_trap_stub(), "just checking"); + Events::log("fetch unroll sp " INTPTR_FORMAT, unpack_sp); + #endif ++#else ++ intptr_t* unpack_sp = stub_frame.sender(&dummy_map).unextended_sp(); ++#endif // !SHARK ++ + // This is a guarantee instead of an assert because if vframe doesn't match + // we will unpack the wrong deoptimized frame and wind up in strange places + // where it will be very difficult to figure out what went wrong. Better +@@ -337,7 +342,9 @@ Deoptimization::UnrollBlock* Deoptimizat + + frame_pcs[0] = deopt_sender.raw_pc(); + ++#ifndef SHARK + assert(CodeCache::find_blob_unsafe(frame_pcs[0]) != NULL, "bad pc"); ++#endif // SHARK + + UnrollBlock* info = new UnrollBlock(array->frame_size() * BytesPerWord, + caller_adjustment * BytesPerWord, +@@ -832,7 +839,20 @@ vframeArray* Deoptimization::create_vfra + // stuff a C2I adapter we can properly fill in the callee-save + // register locations. + frame caller = fr.sender(reg_map); ++#ifdef ZERO ++ int frame_size; ++ { ++ // In zero, frame::sp() is the *end* of the frame, so ++ // caller.sp() - fr.sp() is the size of the *caller*. ++ RegisterMap dummy_map(thread, false); ++ frame frame_1 = thread->last_frame(); ++ frame frame_2 = frame_1.sender(&dummy_map); ++ assert(frame_2.sp() == fr.sp(), "should be"); ++ frame_size = frame_2.sp() - frame_1.sp(); ++ } ++#else + int frame_size = caller.sp() - fr.sp(); ++#endif // ZERO + + frame sender = caller; + +diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/runtime/vframeArray.cpp +--- openjdk/hotspot/src/share/vm/runtime/vframeArray.cpp Mon Sep 29 08:47:58 2008 +0100 ++++ openjdk/hotspot/src/share/vm/runtime/vframeArray.cpp Mon Sep 29 08:56:26 2008 +0100 +@@ -64,6 +64,11 @@ void vframeArrayElement::fill_in(compile + assert(monitor->owner() == NULL || (!monitor->owner()->is_unlocked() && !monitor->owner()->has_bias_pattern()), "object must be null or locked, and unbiased"); + BasicObjectLock* dest = _monitors->at(index); + dest->set_obj(monitor->owner()); ++#ifdef SHARK ++ // XXX This can be removed when Shark knows ++ // which monitors are in use. ++ if (monitor->owner()) ++#endif // SHARK + monitor->lock()->move_to(monitor->owner(), dest->lock()); + } + } +@@ -262,6 +267,11 @@ void vframeArrayElement::unpack_on_stack + top = iframe()->previous_monitor_in_interpreter_frame(top); + BasicObjectLock* src = _monitors->at(index); + top->set_obj(src->obj()); ++#ifdef SHARK ++ // XXX This can be removed when Shark knows ++ // which monitors are in use. ++ if (src->obj()) ++#endif // SHARK + src->lock()->move_to(src->obj(), top->lock()); + } + if (ProfileInterpreter) { diff -r 9ff3417e28cc -r 28523a4d7bd6 ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp --- a/ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp Mon Sep 29 12:04:41 2008 -0400 +++ b/ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp Tue Sep 30 08:42:10 2008 -0400 @@ -42,6 +42,10 @@ inline void set_method(methodOop new_method) { _method = new_method; + } + inline interpreterState self_link() + { + return _self_link; } inline void set_self_link(interpreterState new_self_link) { diff -r 9ff3417e28cc -r 28523a4d7bd6 ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp --- a/ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Mon Sep 29 12:04:41 2008 -0400 +++ b/ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Tue Sep 30 08:42:10 2008 -0400 @@ -56,7 +56,24 @@ void CppInterpreter::normal_entry(method // Allocate and initialize our frame. InterpreterFrame *frame = InterpreterFrame::build(stack, method, thread); thread->push_zero_frame(frame); + + // Execute those bytecodes! + main_loop(0, THREAD); +} + +void CppInterpreter::main_loop(int recurse, TRAPS) +{ + JavaThread *thread = (JavaThread *) THREAD; + ZeroStack *stack = thread->zero_stack(); + + // If we are entering from a deopt we may need to call + // ourself a few times in order to get to our frame. + if (recurse) + main_loop(recurse - 1, THREAD); + + InterpreterFrame *frame = thread->top_zero_frame()->as_interpreter_frame(); interpreterState istate = frame->interpreter_state(); + methodOop method = istate->method(); intptr_t *result = NULL; int result_slots = 0; @@ -79,13 +96,13 @@ void CppInterpreter::normal_entry(method // Examine the message from the interpreter to decide what to do if (istate->msg() == BytecodeInterpreter::call_method) { - method = istate->callee(); + methodOop callee = istate->callee(); // Trim back the stack to put the parameters at the top stack->set_sp(istate->stack() + 1); // Make the call - Interpreter::invoke_method(method, istate->callee_entry_point(), THREAD); + Interpreter::invoke_method(callee, istate->callee_entry_point(), THREAD); fixup_after_potential_safepoint(); // Convert the result @@ -95,7 +112,6 @@ void CppInterpreter::normal_entry(method stack->set_sp(istate->stack_limit() + 1); // Resume the interpreter - method = istate->method(); istate->set_msg(BytecodeInterpreter::method_resume); } else if (istate->msg() == BytecodeInterpreter::more_monitors) { @@ -689,6 +705,139 @@ InterpreterGenerator::InterpreterGenerat generate_all(); } +// Deoptimization helpers + +InterpreterFrame *InterpreterFrame::build(ZeroStack* stack, int size) +{ + int size_in_words = size >> LogBytesPerWord; + assert(size_in_words * wordSize == size, "unaligned"); + assert(size_in_words >= header_words, "too small"); + + if (size_in_words > stack->available_words()) { + Unimplemented(); + } + + stack->push(0); // next_frame, filled in later + intptr_t *fp = stack->sp(); + assert(fp - stack->sp() == next_frame_off, "should be"); + + stack->push(INTERPRETER_FRAME); + assert(fp - stack->sp() == frame_type_off, "should be"); + + interpreterState istate = + (interpreterState) stack->alloc(sizeof(BytecodeInterpreter)); + assert(fp - stack->sp() == istate_off, "should be"); + istate->set_self_link(NULL); // mark invalid + + stack->alloc((size_in_words - header_words) * wordSize); + + return (InterpreterFrame *) fp; +} + +int AbstractInterpreter::layout_activation(methodOop method, + int tempcount, + int popframe_extra_args, + int moncount, + int callee_param_count, + int callee_locals, + frame* caller, + frame* interpreter_frame, + bool is_top_frame) +{ + assert(popframe_extra_args == 0, "what to do?"); + assert(!is_top_frame || (!callee_locals && !callee_param_count), + "top frame should have no caller") + + // This code must exactly match what InterpreterFrame::build + // does (the full InterpreterFrame::build, that is, not the + // one that creates empty frames for the deoptimizer). + // + // If interpreter_frame is not NULL then it will be filled in. + // It's size is determined by a previous call to this method, + // so it should be correct. + // + // Note that tempcount is the current size of the expression + // stack. For top most frames we will allocate a full sized + // expression stack and not the trimmed version that non-top + // frames have. + + int header_words = InterpreterFrame::header_words; + int monitor_words = moncount * frame::interpreter_frame_monitor_size(); + int stack_words = is_top_frame ? method->max_stack() : tempcount; + int callee_extra_locals = callee_locals - callee_param_count; + + if (interpreter_frame) { + intptr_t *locals = interpreter_frame->sp() + method->max_locals(); + interpreterState istate = interpreter_frame->get_interpreterState(); + intptr_t *monitor_base = (intptr_t*) istate; + intptr_t *stack_base = monitor_base - monitor_words; + intptr_t *stack = stack_base - tempcount - 1; + + BytecodeInterpreter::layout_interpreterState(istate, + caller, + NULL, + method, + locals, + stack, + stack_base, + monitor_base, + NULL, + is_top_frame); + } + return header_words + monitor_words + stack_words + callee_extra_locals; +} + +void BytecodeInterpreter::layout_interpreterState(interpreterState istate, + frame* caller, + frame* current, + methodOop method, + intptr_t* locals, + intptr_t* stack, + intptr_t* stack_base, + intptr_t* monitor_base, + intptr_t* frame_bottom, + bool is_top_frame) +{ + istate->set_locals(locals); + istate->set_method(method); + istate->set_self_link(istate); + istate->set_prev_link(NULL); + // thread will be set by a hacky repurposing of frame::patch_pc() + // bcp will be set by vframeArrayElement::unpack_on_stack() + istate->set_constants(method->constants()->cache()); + istate->set_msg(BytecodeInterpreter::method_resume); + istate->set_bcp_advance(0); + istate->set_oop_temp(NULL); + istate->set_mdx(NULL); + if (caller->is_interpreted_frame()) { + interpreterState prev = caller->get_interpreterState(); + prev->set_callee(method); + if (*prev->bcp() == Bytecodes::_invokeinterface) + prev->set_bcp_advance(5); + else + prev->set_bcp_advance(3); + } + istate->set_callee(NULL); + istate->set_monitor_base((BasicObjectLock *) monitor_base); + istate->set_stack_base(stack_base); + istate->set_stack(stack); + istate->set_stack_limit(stack_base - method->max_stack() - 1); +} + +address CppInterpreter::return_entry(TosState state, int length) +{ + Unimplemented(); +} + +address CppInterpreter::deopt_entry(TosState state, int length) +{ +#ifdef SHARK + return NULL; +#else + Unimplemented(); +#endif // SHARK +} + // Helper for (runtime) stack overflow checks int AbstractInterpreter::size_top_interpreter_activation(methodOop method) @@ -696,34 +845,15 @@ int AbstractInterpreter::size_top_interp return 0; } -// Deoptimization helpers for C++ interpreter - -int AbstractInterpreter::layout_activation(methodOop method, - int tempcount, - int popframe_extra_args, - int moncount, - int callee_param_count, - int callee_locals, - frame* caller, - frame* interpreter_frame, - bool is_top_frame) -{ - Unimplemented(); -} - -address CppInterpreter::return_entry(TosState state, int length) -{ - Unimplemented(); -} - -address CppInterpreter::deopt_entry(TosState state, int length) -{ - Unimplemented(); -} +// Helper for figuring out if frames are interpreter frames bool CppInterpreter::contains(address pc) { +#ifdef PRODUCT ShouldNotCallThis(); +#else + return false; // make frame::print_value_on work +#endif // !PRODUCT } // Result handlers and convertors diff -r 9ff3417e28cc -r 28523a4d7bd6 ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp --- a/ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp Mon Sep 29 12:04:41 2008 -0400 +++ b/ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp Tue Sep 30 08:42:10 2008 -0400 @@ -28,9 +28,13 @@ // Size of interpreter code const static int InterpreterCodeSize = 6 * K; - private: + public: // Method entries static void normal_entry(methodOop method, intptr_t UNUSED, TRAPS); static void native_entry(methodOop method, intptr_t UNUSED, TRAPS); static void accessor_entry(methodOop method, intptr_t UNUSED, TRAPS); static void empty_entry(methodOop method, intptr_t UNUSED, TRAPS); + + public: + // Main loop of normal_entry + static void main_loop(int recurse, TRAPS); diff -r 9ff3417e28cc -r 28523a4d7bd6 ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp Tue Sep 30 08:42:10 2008 -0400 @@ -0,0 +1,49 @@ +/* + * Copyright 2003-2007 Sun Microsystems, Inc. All Rights Reserved. + * Copyright 2008 Red Hat, Inc. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + * + */ + +// | ... | +// +--------------------+ ------------------ +// | frame_type | low addresses +// | next_frame | high addresses +// +--------------------+ ------------------ +// | ... | + +class DeoptimizerFrame : public ZeroFrame { + friend class ZeroStackPrinter; + + private: + DeoptimizerFrame() : ZeroFrame() + { + ShouldNotCallThis(); + } + + protected: + enum Layout { + header_words = jf_header_words + }; + + public: + static DeoptimizerFrame *build(ZeroStack* stack); +}; diff -r 9ff3417e28cc -r 28523a4d7bd6 ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp --- a/ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp Mon Sep 29 12:04:41 2008 -0400 +++ b/ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp Tue Sep 30 08:42:10 2008 -0400 @@ -36,12 +36,7 @@ void Disassembler::decode(nmethod *nm, o { From mark at klomp.org Sat Oct 18 21:23:20 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:20 +0000 Subject: changeset in /hg/icedtea: * patches/icedtea-6712835-ifnode.patch... Message-ID: changeset 210cf639f45c in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=210cf639f45c description: * patches/icedtea-6712835-ifnode.patch: New patch. * Makefile.am (NON_ZERO_PATCHES): Add icedtea-6712835-ifnode.patch * HACKING: Document patches/icedtea-6712835-ifnode.patch. diffstat: 4 files changed, 34 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ HACKING | 1 + Makefile.am | 3 ++- patches/icedtea-6712835-ifnode.patch | 25 +++++++++++++++++++++++++ diffs (66 lines): diff -r a5883d41d7ec -r 210cf639f45c ChangeLog --- a/ChangeLog Fri Sep 26 11:58:58 2008 +0200 +++ b/ChangeLog Fri Sep 26 12:04:02 2008 +0200 @@ -1,3 +1,9 @@ 2008-09-26 Mark Wielaard + + * patches/icedtea-6712835-ifnode.patch: New patch. + * Makefile.am (NON_ZERO_PATCHES): Add icedtea-6712835-ifnode.patch + * HACKING: Document patches/icedtea-6712835-ifnode.patch. + 2008-09-26 Mark Wielaard * patches/icedtea-6700047-loopopts.patch: New patch. diff -r a5883d41d7ec -r 210cf639f45c HACKING --- a/HACKING Fri Sep 26 11:58:58 2008 +0200 +++ b/HACKING Fri Sep 26 12:04:02 2008 +0200 @@ -67,6 +67,7 @@ The following patches are only applied t * icedtea-jdk-docs-target.patch: Always set DOCS_TARGET. * icedtea-lucene-crash.patch: Fix lucene bad code generation bug #6707044. * icedtea-6700047-loopopts.patch: Fix partial peeling issue, bug #6700047. +* icedtea-6712835-ifnode.patch: Fix infinite loop in PhaseIterGVN::transform. The following patches are only applied to OpenJDK in IcedTea: diff -r a5883d41d7ec -r 210cf639f45c Makefile.am --- a/Makefile.am Fri Sep 26 11:58:58 2008 +0200 +++ b/Makefile.am Fri Sep 26 12:04:02 2008 +0200 @@ -430,7 +430,8 @@ NON_ZERO_PATCHES = \ NON_ZERO_PATCHES = \ patches/icedtea-signed-types-hot6.patch \ patches/icedtea-lucene-crash.patch \ - patches/icedtea-6700047-loopopts.patch + patches/icedtea-6700047-loopopts.patch \ + patches/icedtea-6712835-ifnode.patch if ZERO_BUILD ZERO_PATCHES_COND = $(ZERO_PATCHES) diff -r a5883d41d7ec -r 210cf639f45c patches/icedtea-6712835-ifnode.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6712835-ifnode.patch Fri Sep 26 12:04:02 2008 +0200 @@ -0,0 +1,25 @@ +6712835: Server compiler fails with assertion (loop_count < K,"infinite loop in PhaseIterGVN::transform") + +diff -r 4aebfff4f8a2 hotspot/src/share/vm/opto/ifnode.cpp +--- openjdk.orig/hotspot/src/share/vm/opto/ifnode.cpp Mon Sep 15 11:38:34 2008 +0200 ++++ openjdk/hotspot/src/share/vm/opto/ifnode.cpp Fri Sep 26 11:56:32 2008 +0200 +@@ -569,6 +569,11 @@ + int true_path = phi->is_diamond_phi(); + if( true_path == 0 ) return NULL; + ++ // Make sure that iff and the control of the phi are different. This ++ // should really only happen for dead control flow since it requires ++ // an illegal cycle. ++ if (phi->in(0)->in(1)->in(0) == iff) return NULL; ++ + // phi->region->if_proj->ifnode->bool->cmp + BoolNode *bol2 = phi->in(0)->in(1)->in(0)->in(1)->as_Bool(); + +@@ -595,6 +600,7 @@ + } + + Node* new_bol = (flip ? phase->transform( bol2->negate(phase) ) : bol2); ++ assert(new_bol != iff->in(1), "must make progress"); + iff->set_req(1, new_bol); + // Intervening diamond probably goes dead + phase->C->set_major_progress(); From dbhole at redhat.com Sat Oct 18 21:23:20 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:20 +0000 Subject: changeset in /hg/icedtea: Added IcedTeaPlugin.jar to ignore list. Message-ID: changeset 9ff3417e28cc in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=9ff3417e28cc description: Added IcedTeaPlugin.jar to ignore list. diffstat: 1 file changed, 1 insertion(+) .hgignore | 1 + diffs (11 lines): diff -r 210cf639f45c -r 9ff3417e28cc .hgignore --- a/.hgignore Fri Sep 26 12:04:02 2008 +0200 +++ b/.hgignore Mon Sep 29 12:04:41 2008 -0400 @@ -25,6 +25,7 @@ gcjwebplugin.so gcjwebplugin.so IcedTeaPlugin.o IcedTeaPlugin.so +IcedTeaPlugin.jar extra-source-files.txt rt-source-files.txt hotspot-tools-source-files.txt From langel at redhat.com Sat Oct 18 21:23:22 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:22 +0000 Subject: changeset in /hg/icedtea: Fixed typo Message-ID: changeset d03dd528c2ed in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d03dd528c2ed description: Fixed typo diffstat: 1 file changed, 1 deletion(-) visualvm.desktop | 1 - diffs (8 lines): diff -r 0b0f039954b2 -r d03dd528c2ed visualvm.desktop --- a/visualvm.desktop Tue Sep 30 13:20:46 2008 -0400 +++ b/visualvm.desktop Tue Sep 30 13:22:52 2008 -0400 @@ -7,4 +7,3 @@ Type=Application Type=Application Categories=Development;Java; Version=1.0 -MimeType=application/x-java-jnlp-file; From gbenson at redhat.com Sat Oct 18 21:23:22 2008 From: gbenson at redhat.com (Gary Benson) Date: Sun, 19 Oct 2008 04:23:22 +0000 Subject: changeset in /hg/icedtea: 2008-10-01 Gary Benson changeset f4981f8a1720 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=f4981f8a1720 description: 2008-10-01 Gary Benson * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a section of old code that had been #ifdef'd out. diffstat: 2 files changed, 5 insertions(+), 261 deletions(-) ChangeLog | 5 ports/hotspot/src/share/vm/shark/sharkState.cpp | 261 ----------------------- diffs (283 lines): diff -r d03dd528c2ed -r f4981f8a1720 ChangeLog --- a/ChangeLog Tue Sep 30 13:22:52 2008 -0400 +++ b/ChangeLog Wed Oct 01 05:52:01 2008 -0400 @@ -1,3 +1,8 @@ 2008-09-30 Lillian Angel + + * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a + section of old code that had been #ifdef'd out. + 2008-09-30 Lillian Angel * Makefile.am diff -r d03dd528c2ed -r f4981f8a1720 ports/hotspot/src/share/vm/shark/sharkState.cpp --- a/ports/hotspot/src/share/vm/shark/sharkState.cpp Tue Sep 30 13:22:52 2008 -0400 +++ b/ports/hotspot/src/share/vm/shark/sharkState.cpp Wed Oct 01 05:52:01 2008 -0400 @@ -205,267 +205,6 @@ void SharkPHIState::add_incoming(SharkSt } } -#if 0 -void SharkTrackingState::decache_for(CDReason reason, ciMethod *callee) -{ - // Start recording the debug information - OopMap *oopmap = new OopMap( - oopmap_slot_munge(function()->oopmap_frame_size()), - oopmap_slot_munge(function()->arg_size())); - int offset = function()->code_offset(); - debug_info()->add_safepoint(offset, oopmap); - - // Decache expression stack slots as necessary - GrowableArray *exparray = - new GrowableArray(stack_depth()); - - for (int i = stack_depth() - 1; i >= 0; i--) { - SharkValue *value = stack(i); - - Location::Type type = Location::normal; - if (value && value->is_jobject()) - type = Location::oop; - - int dst = i + max_stack() - stack_depth(); - int oiwfusp = function()->stack_slots_offset() + dst; - VMReg dst_as_vmreg = slot2reg(oiwfusp); - LocationValue* dst_as_lv = slot2lv(oiwfusp, type); - - bool write = false; - bool record = false; - - if (reason == TRAP) { - write = value != NULL; - record = true; - } - else if (value) { - if (reason == JAVA_CALL && i < callee->arg_size()) { - write = true; - record = false; - } - else { - write = value->is_jobject(); - record = true; - } - } - - if (write) { - if (value->is_two_word()) { - assert(i > 0, "should be"); - assert(stack(i - 1) == NULL, "should be"); - dst--; - } - - builder()->CreateStore( - value->generic_value(), - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->stack_slots(), dst), - PointerType::getUnqual(SharkType::to_stackType( - value->basic_type())))); - - if (record) - oopmap->set_oop(dst_as_vmreg); - } - - if (record) - exparray->append(dst_as_lv); - } - - // If we're decaching for a call then pop the arguments - int trim_slots = max_stack() - stack_depth(); - if (reason == JAVA_CALL) - pop(callee->arg_size()); - - // Record any monitors - GrowableArray *monarray = - new GrowableArray(function()->monitor_count()); - - for (int i = 0; i < function()->monitor_count(); i++) { - int box_oiwfusp = - function()->monitors_slots_offset() + - i * frame::interpreter_frame_monitor_size(); - - int obj_oiwfusp = - box_oiwfusp + - (BasicObjectLock::obj_offset_in_bytes() >> LogBytesPerWord); - - oopmap->set_oop(slot2reg(obj_oiwfusp)); - - monarray->append(new MonitorValue( - slot2lv (obj_oiwfusp, Location::oop), - slot2loc(box_oiwfusp, Location::normal))); - } - - // Record the exception slot - oopmap->set_oop(slot2reg(function()->exception_slot_offset())); - - // Decache the method pointer - builder()->CreateStore(method(), function()->method_slot()); - oopmap->set_oop(slot2reg(function()->method_slot_offset())); - - // Decache the PC - builder()->CreateStore( - builder()->CreateAdd( - function()->base_pc(), LLVMValue::intptr_constant(offset)), - function()->pc_slot()); - - // Decache local variables as necesary - GrowableArray *locarray = - new GrowableArray(max_locals()); - - for (int i = 0; i < max_locals(); i++) { - SharkValue *value = local(i); - - Location::Type type = Location::invalid; - if (value) { - if (value->is_jobject()) - type = Location::oop; - else - type = Location::normal; - } - else if (i > 0) { - SharkValue *prev = local(i - 1); - if (prev && prev->is_two_word()) - type = Location::normal; - } - - int dst = max_locals() - 1 - i; - int oiwfusp = function()->locals_slots_offset() + dst; - VMReg dst_as_vmreg = slot2reg(oiwfusp); - LocationValue* dst_as_lv = slot2lv(oiwfusp, type); - - if (value) { - if (value->is_two_word()) { - assert(i + 1 < max_locals(), "should be"); - assert(local(i + 1) == NULL, "should be"); - dst--; - } - - if (reason == TRAP || value->is_jobject()) { - builder()->CreateStore( - value->generic_value(), - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->locals_slots(), dst), - PointerType::getUnqual( - SharkType::to_stackType(value->basic_type())))); - } - - if (value->is_jobject()) - oopmap->set_oop(dst_as_vmreg); - } - locarray->append(dst_as_lv); - } - - // Trim back the stack if necessary - if (trim_slots) { - function()->CreateStoreZeroStackPointer( - builder()->CreatePtrToInt( - builder()->CreateStructGEP( - function()->stack_slots(), trim_slots), - SharkType::intptr_type())); - } - - // Record the scope and end the block of debug information - DebugToken *locvals = debug_info()->create_scope_values(locarray); - DebugToken *expvals = debug_info()->create_scope_values(exparray); - DebugToken *monvals = debug_info()->create_monitor_values(monarray); - debug_info()->describe_scope( - offset, block()->target(), block()->bci(), locvals, expvals, monvals); - debug_info()->end_safepoint(offset); -} - -void SharkTrackingState::cache_after(CDReason reason, ciMethod *callee) -{ - assert(reason != TRAP, "shouldn't be"); - - // If we're caching after a call then push a dummy result to set up the stack - int result_size = reason == JAVA_CALL ? callee->return_type()->size() : 0; - if (result_size) { - ciType *result_type; - switch (callee->return_type()->basic_type()) { - case T_BOOLEAN: - case T_BYTE: - case T_CHAR: - case T_SHORT: - result_type = ciType::make(T_INT); - break; - - default: - result_type = callee->return_type(); - } - - push(SharkValue::create_generic(result_type, NULL)); - if (result_size == 2) - push(NULL); - } - - // Cache expression stack slots as necessary - for (int i = 0; i < stack_depth(); i++) { - SharkValue *value = stack(i); - if (value == NULL) { - set_stack(i, NULL); - continue; - } - - bool read; - - if (i < result_size) { - read = true; - } - else { - read = value->is_jobject(); - } - - if (read) { - int src = i + max_stack() - stack_depth(); - if (value->is_two_word()) { - assert(i > 0, "should be"); - assert(stack(i - 1) == NULL, "should be"); - src--; - } - - set_stack( - i, - SharkValue::create_generic( - value->type(), - builder()->CreateLoad( - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->stack_slots(), src), - PointerType::getUnqual( - SharkType::to_stackType(value->basic_type())))))); - } - } - - // Cache the method pointer - set_method(builder()->CreateLoad(function()->method_slot())); - - // Cache local variables as necesary - for (int i = max_locals() - 1; i >= 0; i--) { - SharkValue *value = local(i); - if (value && value->is_jobject()) { - int src = max_locals() - 1 - i; - set_local( - i, - SharkValue::create_generic( - value->type(), - builder()->CreateLoad( - builder()->CreateBitCast( - builder()->CreateStructGEP(function()->locals_slots(), src), - PointerType::getUnqual( - SharkType::to_stackType(value->type())))))); - } - } - - // Restore the stack pointer if necessary - if (stack_depth() != max_stack()) { - function()->CreateStoreZeroStackPointer( - builder()->CreatePtrToInt( - builder()->CreateStructGEP(function()->stack_slots(), 0), - SharkType::intptr_type())); - } -} -#endif // 0 - void SharkTrackingState::merge(SharkState* other, BasicBlock* other_block, BasicBlock* this_block) From langel at redhat.com Sat Oct 18 21:23:22 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:22 +0000 Subject: changeset in /hg/icedtea: 2008-10-02 Lillian Angel changeset 09dcedbe63a8 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=09dcedbe63a8 description: 2008-10-02 Lillian Angel * HACKING: Updated with new visualvm patch. * INSTALL: Updated to include netbeans in requirements. * Makefile.am: Updated to build and install visualvm with system-installed NetBeans 6.1 (currently in Fedora rawhide). Added new visualvm patch to the list and removed need for NetBeans platform sources. * README: Updated visualvm notes. * acinclude.m4: Updated to find netbeans and removed WITH_NETBEANS_PLATFORM_SRC_ZIP check. * configure.ac: Updated to check for netbeans and added --with-netbeans-home option. * patches/icedtea-visualvm.patch: Visualvm patch. diffstat: 8 files changed, 178 insertions(+), 68 deletions(-) ChangeLog | 15 ++++ HACKING | 1 INSTALL | 1 Makefile.am | 127 +++++++++++++++++++++++++--------------- README | 11 +-- acinclude.m4 | 42 +++++++------ configure.ac | 23 ++++++- patches/icedtea-visualvm.patch | 26 ++++++++ diffs (495 lines): diff -r f4981f8a1720 -r 09dcedbe63a8 ChangeLog --- a/ChangeLog Wed Oct 01 05:52:01 2008 -0400 +++ b/ChangeLog Thu Oct 02 10:55:55 2008 -0400 @@ -1,3 +1,18 @@ 2008-10-01 Gary Benson + + * HACKING: Updated with new visualvm patch. + * INSTALL: Updated to include netbeans in requirements. + * Makefile.am: Updated to build and install visualvm with + system-installed NetBeans 6.1 (currently in Fedora rawhide). Added new + visualvm patch to the list and removed need for NetBeans platform + sources. + * README: Updated visualvm notes. + * acinclude.m4: Updated to find netbeans and removed + WITH_NETBEANS_PLATFORM_SRC_ZIP check. + * configure.ac: Updated to check for netbeans and added + --with-netbeans-home option. + * patches/icedtea-visualvm.patch: Visualvm patch. + 2008-10-01 Gary Benson * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a diff -r f4981f8a1720 -r 09dcedbe63a8 HACKING --- a/HACKING Wed Oct 01 05:52:01 2008 -0400 +++ b/HACKING Thu Oct 02 10:55:55 2008 -0400 @@ -53,6 +53,7 @@ The following patches are currently appl * icedtea-tools.patch: Remove DebugHelperHelper and add sources in make/java/awt/Makefile to fix build of jvmti. * icedtea-use-system-tzdata.patch: Use timezone data from the system (PR70/S6593486). * icedtea-version.patch: Replace name and bug URL with IcedTea versions. +* icedtea-visualvm.patch: Patches sources to build with platform8 and profiler3 instead of platform7 and profiler2. * icedtea-webservices.patch: Add applet support. * icedtea-zero-build.patch: Add support for the zero assembler build. * icedtea-shark-build.patch: Add support for building the Shark JIT. diff -r f4981f8a1720 -r 09dcedbe63a8 INSTALL --- a/INSTALL Wed Oct 01 05:52:01 2008 -0400 +++ b/INSTALL Thu Oct 02 10:55:55 2008 -0400 @@ -30,6 +30,7 @@ libjpeg-devel = 6b libjpeg-devel = 6b zlib-devel rhino +netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm For building the zero-assembler port (see below), you will need libffi. diff -r f4981f8a1720 -r 09dcedbe63a8 Makefile.am --- a/Makefile.am Wed Oct 01 05:52:01 2008 -0400 +++ b/Makefile.am Thu Oct 02 10:55:55 2008 -0400 @@ -5,7 +5,7 @@ CACAO_VERSION = 0.99.3 CACAO_VERSION = 0.99.3 CACAO_MD5SUM = 80de3ad344c1a20c086ec5f1390bd1b8 -NETBEANS_PLATFORM_MD5SUM = 77c79b3a7d3dbe6a8858639f8d564a38 +NETBEANS_BASIC_CLUSTER = a7ea855f475fa3a982f094a45c155ab4 NETBEANS_PROFILER_MD5SUM = ff8e8abc42df6c6749e6b02bcf7bb0a5 VISUALVM_MD5SUM = 4b55bc623418818793392bb233da2927 @@ -19,8 +19,8 @@ ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = ICEDTEAPLUGIN_JAR = +LIVECONNECT = PLUGIN_PATCH = patches/icedtea-plugin.patch -LIVECONNECT = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -28,6 +28,12 @@ GCJWEBPLUGIN_CLEAN = GCJWEBPLUGIN_CLEAN = GCJWEBPLUGIN_TARGET = endif +endif + +if WITH_VISUALVM +VISUALVM_PATCH = patches/icedtea-visualvm.patch +else +VISUALVM_PATCH = endif # Top-Level Targets @@ -48,19 +54,15 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so - rm -rf IcedTeaPlugin.jar + rm -f IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so endif endif -if WITH_VISUALVM + rm -rf cacao rm -rf visualvm rm -rf netbeans -endif -if WITH_CACAO - rm -rf cacao -endif install: @@ -83,7 +85,7 @@ EXTRA_DIST = rt generated $(ICEDTEA_PATC overlays extra jconsole.desktop policytool.desktop \ test/jtreg patches/icedtea-plugin.patch \ patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING + HACKING patches/icedtea-visualvm.patch # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. @@ -280,13 +282,8 @@ else CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.gz endif -NETBEANS_PLATFORM_URL = http://download.netbeans.org/netbeans/6.0/final/zip/ - -if USE_ALT_NETBEANS_PLATFORM_SRC_ZIP - NETBEANS_PLATFORM_SRC_ZIP = $(ALT_NETBEANS_PLATFORM_SRC_ZIP) -else - NETBEANS_PLATFORM_SRC_ZIP = netbeans-6.0.1-200801291616-platform-src.zip -endif +NETBEANS_BASIC_CLUSTER_URL = http://nbi.netbeans.org/files/documents/210/2056/ +NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip NETBEANS_PROFILER_URL = http://icedtea.classpath.org/visualvm/ @@ -334,19 +331,17 @@ endif endif endif if WITH_VISUALVM -if USE_ALT_NETBEANS_PLATFORM_SRC_ZIP -else - if ! echo "$(NETBEANS_PLATFORM_MD5SUM) $(NETBEANS_PLATFORM_SRC_ZIP)" \ + if ! echo "$(NETBEANS_BASIC_CLUSTER_MD5SUM) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP)" \ | $(MD5SUM) --check ; \ then \ - if [ $(NETBEANS_PLATFORM_SRC_ZIP) ] ; \ + if [ $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ] ; \ then \ - mv $(NETBEANS_PLATFORM_SRC_ZIP) $(NETBEANS_PLATFORM_SRC_ZIP).old ; \ + mv $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP).old ; \ fi ; \ - $(WGET) $(NETBEANS_PLATFORM_URL)$(NETBEANS_PLATFORM_SRC_ZIP) \ - -O $(NETBEANS_PLATFORM_SRC_ZIP) ; \ - fi -endif + $(WGET) $(NETBEANS_BASIC_CLUSTER_URL)$(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ + -O $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ; \ + fi + if USE_ALT_NETBEANS_PROFILER_SRC_ZIP else if ! echo "$(NETBEANS_PROFILER_MD5SUM) $(NETBEANS_PROFILER_SRC_ZIP)" \ @@ -384,8 +379,8 @@ endif endif if WITH_VISUALVM rm -f $(VISUALVM_SRC_ZIP) - rm -f $(NETBEANS_PLATFORM_SRC_ZIP) rm -f $(NETBEANS_PROFILER_SRC_ZIP) + rm -rf $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) endif # Link ports sources into tree @@ -510,7 +505,8 @@ ICEDTEA_PATCHES = \ $(GCC_PATCH) \ patches/icedtea-arch.patch \ patches/icedtea-lc_ctype.patch \ - patches/icedtea-messageutils.patch + patches/icedtea-messageutils.patch \ + $(VISUALVM_PATCH) if WITH_RHINO ICEDTEA_PATCHES += \ @@ -550,8 +546,17 @@ if WITH_VISUALVM if ! test -d netbeans ; \ then \ mkdir netbeans ; \ - $(UNZIP) -q $(NETBEANS_PLATFORM_SRC_ZIP) -d netbeans ; \ $(TAR) xf $(NETBEANS_PROFILER_SRC_ZIP) -C netbeans ; \ + $(UNZIP) -q $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) nbbuild/* -d netbeans/ ; \ + mv netbeans/profiler/ netbeans/profiler.cvs/ ; \ + $(UNZIP) -q $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ + api.java/* api.progress/* apisupport.harness/* editor.mimelookup/* \ + o.jdesktop.layout/* openide.actions/* openide.awt/* \ + openide.dialogs/* openide.execution/* openide.explorer/* \ + openide.filesystems/* openide.io/* openide.loaders/* \ + openide.modules/* openide.nodes/* openide.text/* openide.util/* \ + openide.windows/* options.api/* projectapi/* queries/* java.platform/* \ + -d netbeans/ ; \ fi endif if [ ! -e $(abs_top_builddir)/generated ]; then \ @@ -595,6 +600,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo WARNING make clean-patch before retrying a fix ; \ false; \ fi + if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ endif @@ -936,6 +942,7 @@ endif endif if WITH_VISUALVM mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ sed "s/APPNAME=\`basename.*\`/APPNAME=visualvm/" \ visualvm/visualvm/launcher/visualvm >> \ $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/jvisualvm ; \ @@ -944,18 +951,18 @@ if WITH_VISUALVM $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ echo visualvm >> \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ - echo profiler2 >> \ + echo profiler3 >> \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ - cp -r visualvm/visualvm/build/cluster \ + cp -r visualvm/visualvm/build/cluster/* \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ - cp -r netbeans/nbbuild/netbeans/platform7 \ + cp -r netbeans/nbbuild/netbeans/platform8 \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm ; \ - cp -r netbeans/nbbuild/netbeans/profiler2 \ + cp -r netbeans/nbbuild/netbeans/profiler3 \ $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm endif cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/about.jnlp \ extra-lib/about.jar \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib + $(BUILD_OUTPUT_DIR)/j2re-image/lib ; \ cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/about.jnlp \ extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib @@ -989,9 +996,29 @@ if ENABLE_PLUGIN $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) endif endif +if WITH_VISUALVM + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ + sed "s/APPNAME=\`basename.*\`/APPNAME=visualvm/" \ + visualvm/visualvm/launcher/visualvm >> \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/jvisualvm ; \ + chmod a+x $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/jvisualvm ; \ + cp visualvm/visualvm/launcher/visualvm.conf \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ + echo visualvm >> \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ + echo profiler3 >> \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc/visualvm.clusters ; \ + cp -r visualvm/visualvm/build/cluster/* \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/visualvm ; \ + cp -r netbeans/nbbuild/netbeans/platform8 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm ; \ + cp -r netbeans/nbbuild/netbeans/profiler3 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm +endif cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/default.jnlp \ extra-lib/about.jar \ - $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib ; \ cp $(abs_top_srcdir)/rt/net/sourceforge/jnlp/resources/default.jnlp \ extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib @@ -1247,10 +1274,10 @@ bootstrap/jdk1.7.0/jre/lib/rt-closed.jar if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ $(JAR) cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ fi if test -d bootstrap/ecj/jre/lib ; \ then \ @@ -1326,7 +1353,6 @@ IcedTeaPlugin.o: IcedTeaPlugin.cc $(GTK_CFLAGS) \ $(XULRUNNER_CFLAGS) \ -fPIC -c -o $@ $< - IcedTeaPlugin.so: IcedTeaPlugin.o $(CXX) $(CXXFLAGS) \ $< \ @@ -1427,7 +1453,8 @@ stamps/visualvm.stamp: $(BOOTSTRAP_DIREC stamps/extract.stamp stamps/nbplatform.stamp if WITH_VISUALVM cd visualvm/visualvm ; \ - ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans netbeans ; \ + ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans . ; \ + rm netbeans/profiler3 && mv netbeans/extra netbeans/profiler3 ; \ JAVA_HOME=$(ICEDTEA_HOME) $(ANT) build endif mkdir -p stamps @@ -1442,10 +1469,18 @@ stamps/nbplatform.stamp: $(BOOTSTRAP_DIR stamps/nbplatform.stamp: $(BOOTSTRAP_DIRECTORY_STAMP) stamps/extract.stamp \ stamps/download.stamp if WITH_VISUALVM - cd netbeans/nbbuild && JAVA_HOME=$(ICEDTEA_HOME) $(ANT) \ - -Dpermit.jdk6.builds=true build-platform ; \ - cd ../profiler && find . -iname '*.so' | xargs rm ; \ - cd libs/jfluid/native/build ; \ + cd netbeans ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/libs/jfluid/ lib.profiler ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/libs/common/ lib.profiler.common ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/libs/jfluid-ui/ lib.profiler.ui ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/modules/nbmodule/ profiler.nbmodule ; \ + mkdir -p ./nbbuild/netbeans/ ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/platform8/ ./nbbuild/netbeans/platform8 ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/apisupport1/ ./nbbuild/netbeans/apisupport1 ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/harness/ ./nbbuild/netbeans/harness ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/java2/ ./nbbuild/netbeans/java2 ; \ + ln -s $(SYSTEM_NETBEANS_DIR)/ide9/ ./nbbuild/netbeans/ide9 ; \ + cd profiler.cvs/libs/jfluid/native/build ; \ if ! (uname -a | grep x86_64) ; then \ buildscript=./buildnative-linux-15.sh ; \ else \ @@ -1453,13 +1488,15 @@ if WITH_VISUALVM fi ; \ JAVA_HOME_15=$(ICEDTEA_HOME) JAVA_HOME_16=$(ICEDTEA_HOME) \ $$buildscript ; \ - cd ../../../.. ; \ + cd ../../../../.. ; \ + ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans/extra nbbuild/netbeans/profiler3 ; \ + ln -s $(abs_top_srcdir)/netbeans/profiler.cvs/modules/main/ profiler ; \ for dir in jfluid jfluid-ui common ; do \ JAVA_HOME=$(ICEDTEA_HOME) $(ANT) -Dpermit.jdk6.builds=true \ - -f libs/$$dir/build.xml ; \ + -f profiler.cvs/libs/$$dir/build.xml ; \ done ; \ JAVA_HOME=$(ICEDTEA_HOME) $(ANT) -Dpermit.jdk6.builds=true \ - -f modules/main/build.xml ; + -f profiler.cvs/modules/main/build.xml ; endif mkdir -p stamps touch $@ diff -r f4981f8a1720 -r 09dcedbe63a8 README --- a/README Wed Oct 01 05:52:01 2008 -0400 +++ b/README Thu Oct 02 10:55:55 2008 -0400 @@ -151,10 +151,11 @@ VisualVM ======== Passing --enable-visualvm to configure will build the VisualVM profiling -and troubleshooting tool. NetBeans platform7 and a modified version of -NetBeans profiler2 (visualvm_preview2) are built from source before building -VisualVM. A binary launcher jvisualvm is placed in the +and troubleshooting tool. NetBeans profiler3 (visualvm_preview2) is +built from source before building VisualVM. NetBeans 6.1 must be installed +on the system. A binary launcher jvisualvm is placed in the openjdk/control/build/arch/j2sdk-image/bin directory after the jdk is built. Other useful VisualVM configure options include --with-visualvm-src-zip, ---with-netbeans-platform-src-zip, and --with-netbeans-profiler-src-zip which -can be used to prevent re-downloading of the source zips. +and --with-netbeans-profiler-src-zip which can be used to prevent +re-downloading of the source zips. --with-netbeans-home can be used to specify +where the Netbeans tools are installed (default /usr/share/netbeans). diff -r f4981f8a1720 -r 09dcedbe63a8 acinclude.m4 --- a/acinclude.m4 Wed Oct 01 05:52:01 2008 -0400 +++ b/acinclude.m4 Thu Oct 02 10:55:55 2008 -0400 @@ -456,23 +456,6 @@ AC_DEFUN([WITH_VISUALVM_SRC_ZIP], AC_SUBST(ALT_VISUALVM_SRC_ZIP) ]) -AC_DEFUN([WITH_NETBEANS_PLATFORM_SRC_ZIP], -[ - AC_MSG_CHECKING(netbeans platform source zip) - AC_ARG_WITH([netbeans-platform-src-zip], - [AS_HELP_STRING(--with-netbeans-platform-src-zip, specify the location of the netbeans platform source zip)], - [ - ALT_NETBEANS_PLATFORM_SRC_ZIP=${withval} - AM_CONDITIONAL(USE_ALT_NETBEANS_PLATFORM_SRC_ZIP, test x = x) - ], - [ - ALT_NETBEANS_PLATFORM_SRC_ZIP="not specified" - AM_CONDITIONAL(USE_ALT_NETBEANS_PLATFORM_SRC_ZIP, test x != x) - ]) - AC_MSG_RESULT(${ALT_NETBEANS_PLATFORM_SRC_ZIP}) - AC_SUBST(ALT_NETBEANS_PLATFORM_SRC_ZIP) -]) - AC_DEFUN([WITH_NETBEANS_PROFILER_SRC_ZIP], [ AC_MSG_CHECKING(netbeans profiler source zip) @@ -613,6 +596,31 @@ AC_DEFUN([FIND_XERCES2_JAR], AC_MSG_ERROR("A xerces2 jar was not found.") fi AC_SUBST(XERCES2_JAR) +]) + +AC_DEFUN([FIND_NETBEANS], +[ + AC_ARG_WITH([netbeans], + [AS_HELP_STRING(--with-netbeans,specify location of netbeans)], + [ + if test -f "${withval}"; then + AC_MSG_CHECKING(netbeans) + NETBEANS="${withval}" + AC_MSG_RESULT(${withval}) + else + AC_PATH_PROG(NETBEANS, "${withval}") + fi + ], + [ + NETBEANS= + ]) + if test -z "${NETBEANS}"; then + AC_PATH_PROG(NETBEANS, "netbeans") + fi + if test -z "${NETBEANS}"; then + AC_MSG_ERROR("NetBeans was not found.") + fi + AC_SUBST(NETBEANS) ]) AC_DEFUN([FIND_RHINO_JAR], diff -r f4981f8a1720 -r 09dcedbe63a8 configure.ac --- a/configure.ac Wed Oct 01 05:52:01 2008 -0400 +++ b/configure.ac Thu Oct 02 10:55:55 2008 -0400 @@ -82,6 +82,22 @@ AC_ARG_WITH([icedtea-home], ]) AC_SUBST(SYSTEM_ICEDTEA_DIR) +AC_ARG_WITH([netbeans-home], + [AS_HELP_STRING([--with-netbeans-home], + [NetBeans home directory (default is /usr/share/netbeans)])], + [ + if test "x${withval}" = x + then + SYSTEM_NETBEANS_DIR=/usr/share/netbeans + else + SYSTEM_NETBEANS_DIR=${withval} + fi + ], + [ + SYSTEM_NETBEANS_DIR=/usr/share/netbeans + ]) +AC_SUBST(SYSTEM_NETBEANS_DIR) + AC_ARG_WITH([ant-home], [AS_HELP_STRING([--with-ant-home], [Ant home directory (default is /usr/share/ant)])], @@ -121,6 +137,11 @@ AC_ARG_ENABLE([visualvm], [Enable compilation of visualvm.])], [enable_visualvm="yes"], [enable_visualvm="no"]) AM_CONDITIONAL(WITH_VISUALVM, test "x${enable_visualvm}" = "xyes") + +if test "x${enable_visualvm}" = "xyes" +then + FIND_NETBEANS +fi AC_ARG_WITH([icedtea], [AS_HELP_STRING([--with-icedtea], @@ -214,10 +235,10 @@ fi fi fi FIND_RHINO_JAR +FIND_NETBEANS WITH_OPENJDK_SRC_ZIP WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP -WITH_NETBEANS_PLATFORM_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP WITH_ALT_JAR_BINARY AC_CHECK_WITH_CACAO diff -r f4981f8a1720 -r 09dcedbe63a8 patches/icedtea-visualvm.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-visualvm.patch Thu Oct 02 10:55:55 2008 -0400 @@ -0,0 +1,26 @@ +--- oldplatform.properties 2008-09-29 13:52:36.000000000 -0400 ++++ visualvm/visualvm/jvm/nbproject/platform.properties 2008-09-29 13:53:33.000000000 -0400 +@@ -16,8 +16,8 @@ + org.openide.compat,\ + org.openide.util.enumerations + enabled.clusters=\ +- platform7,\ +- profiler2 ++ platform8,\ ++ profiler3 + nbjdk.active=Java_HotSpot_TM__Client_VM_1.6.0-b88-17-release + nbplatform.active=NetBeans_Platform_Dev_(Build_200711261600) + suite.dir=${basedir} +--- oldplatform.properties1 2008-09-29 13:52:46.000000000 -0400 ++++ visualvm/visualvm/nbproject/platform.properties 2008-09-29 13:53:41.000000000 -0400 +@@ -15,8 +15,8 @@ + org.openide.compat,\ + org.openide.util.enumerations + enabled.clusters=\ +- platform7,\ +- profiler2 ++ platform8,\ ++ profiler3 + nbjdk.active=default + nbplatform.active=NetBeans_Platform_6.0.1_(Build_200801291616) + suite.dir=${basedir} From mark at klomp.org Sat Oct 18 21:23:20 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:20 +0000 Subject: changeset in /hg/icedtea: * patches/icedtea-6700047-loopopts.pat... Message-ID: changeset a5883d41d7ec in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=a5883d41d7ec description: * patches/icedtea-6700047-loopopts.patch: New patch. * Makefile.am (NON_ZERO_PATCHES): Add icedtea-6700047-loopopts.patch. * HACKING: Document patches/icedtea-6700047-loopopts.patch. diffstat: 4 files changed, 44 insertions(+), 2 deletions(-) ChangeLog | 8 ++++++- HACKING | 1 Makefile.am | 3 +- patches/icedtea-6700047-loopopts.patch | 34 ++++++++++++++++++++++++++++++++ diffs (77 lines): diff -r f2f33bede67b -r a5883d41d7ec ChangeLog --- a/ChangeLog Fri Sep 26 11:37:46 2008 +0200 +++ b/ChangeLog Fri Sep 26 11:58:58 2008 +0200 @@ -1,4 +1,10 @@ 2008-09-25 Mark Wielaard +2008-09-26 Mark Wielaard + + * patches/icedtea-6700047-loopopts.patch: New patch. + * Makefile.am (NON_ZERO_PATCHES): Add icedtea-6700047-loopopts.patch. + * HACKING: Document patches/icedtea-6700047-loopopts.patch. + +2008-09-26 Mark Wielaard * patches/icedtea-hotspot7-tests.patch: New patch. * Makefile.am (ICEDTEA_PATCHES): Add icedtea-hotspot7-tests.patch. diff -r f2f33bede67b -r a5883d41d7ec HACKING --- a/HACKING Fri Sep 26 11:37:46 2008 +0200 +++ b/HACKING Fri Sep 26 11:58:58 2008 +0200 @@ -66,6 +66,7 @@ The following patches are only applied t * icedtea-sparc.patch: Add support for GNU/Linux on SPARC. * icedtea-jdk-docs-target.patch: Always set DOCS_TARGET. * icedtea-lucene-crash.patch: Fix lucene bad code generation bug #6707044. +* icedtea-6700047-loopopts.patch: Fix partial peeling issue, bug #6700047. The following patches are only applied to OpenJDK in IcedTea: diff -r f2f33bede67b -r a5883d41d7ec Makefile.am --- a/Makefile.am Fri Sep 26 11:37:46 2008 +0200 +++ b/Makefile.am Fri Sep 26 11:58:58 2008 +0200 @@ -429,7 +429,8 @@ ZERO_PATCHES = \ # Patches needed when not using the newer OpenJDK 7 HotSpot for zero. NON_ZERO_PATCHES = \ patches/icedtea-signed-types-hot6.patch \ - patches/icedtea-lucene-crash.patch + patches/icedtea-lucene-crash.patch \ + patches/icedtea-6700047-loopopts.patch if ZERO_BUILD ZERO_PATCHES_COND = $(ZERO_PATCHES) diff -r f2f33bede67b -r a5883d41d7ec patches/icedtea-6700047-loopopts.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6700047-loopopts.patch Fri Sep 26 11:58:58 2008 +0200 @@ -0,0 +1,34 @@ +6700047: C2 failed in idom_no_update +Summary: partial peeling shouldn't place clones into loop + +diff -r 4aebfff4f8a2 hotspot/src/share/vm/opto/loopopts.cpp +--- openjdk.orig/hotspot/src/share/vm/opto/loopopts.cpp Mon Sep 15 11:38:34 2008 +0200 ++++ openjdk/hotspot/src/share/vm/opto/loopopts.cpp Fri Sep 26 11:29:06 2008 +0200 +@@ -1865,18 +1865,19 @@ + _igvn.hash_delete(use); + use->set_req(j, n_clone); + _igvn._worklist.push(use); ++ Node* use_c; + if (!use->is_Phi()) { +- Node* use_c = has_ctrl(use) ? get_ctrl(use) : use->in(0); +- set_ctrl(n_clone, use_c); +- assert(!loop->is_member(get_loop(use_c)), "should be outside loop"); +- get_loop(use_c)->_body.push(n_clone); ++ use_c = has_ctrl(use) ? get_ctrl(use) : use->in(0); + } else { + // Use in a phi is considered a use in the associated predecessor block +- Node *prevbb = use->in(0)->in(j); +- set_ctrl(n_clone, prevbb); +- assert(!loop->is_member(get_loop(prevbb)), "should be outside loop"); +- get_loop(prevbb)->_body.push(n_clone); ++ use_c = use->in(0)->in(j); + } ++ if (use_c->is_CountedLoop()) { ++ use_c = use_c->in(LoopNode::EntryControl); ++ } ++ set_ctrl(n_clone, use_c); ++ assert(!loop->is_member(get_loop(use_c)), "should be outside loop"); ++ get_loop(use_c)->_body.push(n_clone); + _igvn.register_new_node_with_optimizer(n_clone); + #if !defined(PRODUCT) + if (TracePartialPeeling) { From langel at redhat.com Sat Oct 18 21:23:21 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:21 +0000 Subject: changeset in /hg/icedtea: 2008-09-30 Lillian Angel changeset 4089c5ff39f2 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=4089c5ff39f2 description: 2008-09-30 Lillian Angel * Makefile.am: Updated cleanup. diffstat: 2 files changed, 10 insertions(+), 2 deletions(-) ChangeLog | 4 ++++ Makefile.am | 8 ++++++-- diffs (36 lines): diff -r 28523a4d7bd6 -r 4089c5ff39f2 ChangeLog --- a/ChangeLog Tue Sep 30 08:42:10 2008 -0400 +++ b/ChangeLog Tue Sep 30 09:53:18 2008 -0400 @@ -1,3 +1,7 @@ 2008-09-30 Gary Benson + + * Makefile.am: Updated cleanup. + 2008-09-30 Gary Benson * patches/icedtea-shark.patch: Updated to latest Shark. diff -r 28523a4d7bd6 -r 4089c5ff39f2 Makefile.am --- a/Makefile.am Tue Sep 30 08:42:10 2008 -0400 +++ b/Makefile.am Tue Sep 30 09:53:18 2008 -0400 @@ -48,15 +48,19 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so + rm -rf IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so endif endif - rm -rf cacao +if WITH_VISUALVM rm -rf visualvm rm -rf netbeans - rm -f gcjwebplugin.so +endif +if WITH_CACAO + rm -rf cacao +endif install: From dbhole at redhat.com Sat Oct 18 21:23:23 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:23 +0000 Subject: changeset in /hg/icedtea: More refactoring -- the last big one i... Message-ID: changeset 358cb21c4730 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=358cb21c4730 description: More refactoring -- the last big one in the forseeable future. Implemented proper sandbox for liveconnect calls. Added error detection in the plugin, so it doesn't loop forever if Java side encounters an error. diffstat: 30 files changed, 2483 insertions(+), 2274 deletions(-) .hgignore | 1 ChangeLog | 44 IcedTeaPlugin.cc | 214 +- Makefile.am | 31 plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 -------- plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java | 193 - plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 - plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 --- plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java | 172 - plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 6 plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java | 76 plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java | 75 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 1021 ++++++++++ plugin/icedtea/sun/applet/PluginCallRequestFactory.java | 19 plugin/icedtea/sun/applet/PluginMain.java | 188 + plugin/icedtea/sun/applet/PluginMessageConsumer.java | 67 plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java | 78 plugin/icedtea/sun/applet/PluginObjectStore.java | 121 + plugin/icedtea/sun/applet/PluginStreamHandler.java | 371 +++ plugin/icedtea/sun/applet/RequestQueue.java | 39 plugin/icedtea/sun/applet/TestEnv.java | 172 + plugin/icedtea/sun/applet/VoidPluginCallRequest.java | 68 diffs (truncated from 5148 to 500 lines): diff -r f4981f8a1720 -r 358cb21c4730 .hgignore --- a/.hgignore Wed Oct 01 05:52:01 2008 -0400 +++ b/.hgignore Wed Oct 01 16:40:56 2008 -0400 @@ -25,7 +25,6 @@ gcjwebplugin.so gcjwebplugin.so IcedTeaPlugin.o IcedTeaPlugin.so -IcedTeaPlugin.jar extra-source-files.txt rt-source-files.txt hotspot-tools-source-files.txt diff -r f4981f8a1720 -r 358cb21c4730 ChangeLog --- a/ChangeLog Wed Oct 01 05:52:01 2008 -0400 +++ b/ChangeLog Wed Oct 01 16:40:56 2008 -0400 @@ -1,3 +1,47 @@ 2008-10-01 Gary Benson + * .hgignore: Removed IcedTeaPlugin.jar + * IcedTeaPlugin.cc: Updated classpath when launching Java. added checks to + detect error on Java side. + * Makefile.am: Updated to fit new refactored files. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: New file, + moved out of org/classpath/icedtea/plugin/, as a result of refactoring. + * plugin/icedtea/sun/applet/PluginCallRequestFactory.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Same. + * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. + * plugin/icedtea/sun/applet/PluginMain.java: Same. + * plugin/icedtea/sun/applet/PluginMessageConsumer.java: Same. + * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java: Same. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/RequestQueue.java: Same. + * plugin/icedtea/sun/applet/TestEnv.java: Same. + * plugin/icedtea/sun/applet/VoidPluginCallRequest.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java: + Removed, as a result of refactoring. + * plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java: + Same. + *plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java: + Same. + * + plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java: + Same. + * + plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java: + Same. + * plugin/icedtea/sun/applet/AppletSecurityContext.java: Same. + 2008-10-01 Gary Benson * ports/hotspot/src/share/vm/shark/sharkState.cpp: Remove a diff -r f4981f8a1720 -r 358cb21c4730 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Wed Oct 01 05:52:01 2008 -0400 +++ b/IcedTeaPlugin.cc Wed Oct 01 16:40:56 2008 -0400 @@ -244,7 +244,6 @@ static GError* channel_error = NULL; static GError* channel_error = NULL; // Fully-qualified appletviewer executable. static char* appletviewer_executable = NULL; -static char* extra_jars = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -317,8 +316,6 @@ char const* TYPES[10] = { "Object", char context[16]; \ GetCurrentPageAddress(&addr); \ GetCurrentContextAddr(context); \ - printf("Addr: %s , Context: %s\n", addr, context);\ -\ nsCString message ("context "); \ message.AppendInt (0); \ message += " reference "; \ @@ -428,12 +425,14 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_REFERENCE(reference, cast, name) \ nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ - if (factory->result_map[reference]->returnIdentifier == 0) \ + if (factory->result_map[reference]->returnIdentifier == 0 || \ + factory->result_map[reference]->errorOccured == PR_TRUE) \ { \ *name = NULL; \ } else { \ @@ -449,25 +448,33 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + { \ + *id = NULL; \ + } else \ + { \ *id = reinterpret_cast \ (new JNIID (factory->result_map[reference]->returnIdentifier, signature)); \ printf ("RECEIVE_ID: %s result: %x = %d, %s\n", \ __func__, *id, factory->result_map[reference]->returnIdentifier, \ - signature); + signature); \ + } #define MESSAGE_RECEIVE_VALUE(reference, ctype, result) \ nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = ParseValue (type, factory->result_map[reference]->returnValue); + *result = ParseValue (type, factory->result_map[reference]->returnValue); // \ // char* valueString = ValueString (type, *result); \ // printf ("RECEIVE_VALUE: %s result: %x = %s\n", \ @@ -479,13 +486,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ - PLUGIN_CHECK ("parse integer", conversionResult); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ + PLUGIN_CHECK ("parse integer", conversionResult); \ + } // \ // printf ("RECEIVE_SIZE: %s result: %x = %d\n", \ // __func__, result, *result); @@ -495,13 +508,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ - *result = reinterpret_cast \ - (strdup (factory->result_map[reference]->returnValue.get ())); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + {\ + printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ + *result = reinterpret_cast \ + (strdup (factory->result_map[reference]->returnValue.get ()));\ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ // __func__, result, *result); @@ -511,16 +530,22 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ - while (factory->result_map[reference]->returnValueUCS.IsEmpty()) \ + while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - int length = factory->result_map[reference]->returnValueUCS.Length (); \ - jchar* newstring = static_cast (PR_Malloc (length)); \ - memset (newstring, 0, length); \ - memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ - std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ - *result = static_cast (newstring); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + int length = factory->result_map[reference]->returnValueUCS.Length (); \ + jchar* newstring = static_cast (PR_Malloc (length)); \ + memset (newstring, 0, length); \ + memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ + std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ + *result = static_cast (newstring); \ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ @@ -530,11 +555,15 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = factory->result_map[reference]->returnIdentifier; + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + *result = factory->result_map[reference]->returnIdentifier; // res = factory->current->ProcessNextEvent (PR_TRUE, \ // &processed); \ // PLUGIN_CHECK_RETURN (__func__, res); \ @@ -1225,9 +1254,57 @@ template NS_IMETHODIMP template NS_IMETHODIMP IcedTeaRunnableMethod::Run () { - (object->*method) (); - return NS_OK; -} + (object->*method) (); + return NS_OK; +} + + +// FIXME: Special class just for dispatching GetURL to another +// thread.. seriously, a class just for that? there has to be a better way! + +class GetURLRunnable : public nsIRunnable +{ +public: + NS_DECL_ISUPPORTS + NS_DECL_NSIRUNNABLE + + GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target); + + ~GetURLRunnable (); + +private: + nsIPluginInstancePeer* peer; + const char* url; + const char* target; +}; + +NS_IMPL_ISUPPORTS1 (GetURLRunnable, nsIRunnable) + +GetURLRunnable::GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target) +: peer(peer), + url(url), + target(target) +{ + NS_ADDREF (peer); +} + +GetURLRunnable::~GetURLRunnable () +{ + NS_RELEASE(peer); +} + +NS_IMETHODIMP +GetURLRunnable::Run () +{ + nsCOMPtr ownerGetter = + do_QueryInterface (peer); + nsIPluginInstanceOwner* owner = nsnull; + ownerGetter->GetOwner (&owner); + + return owner->GetURL ((const char*) url, (const char*) target, + nsnull, 0, nsnull, 0); +} + NS_IMPL_ISUPPORTS6 (IcedTeaPluginFactory, nsIFactory, nsIPlugin, nsIJVMManager, nsIJVMPrefsWindow, nsIJVMPlugin, nsIInputStreamCallback) @@ -2433,6 +2510,11 @@ IcedTeaPluginFactory::OnInputStreamReady return NS_OK; } +#include +#include +#include +#include + void IcedTeaPluginFactory::HandleMessage (nsCString const& message) { @@ -2477,8 +2559,11 @@ IcedTeaPluginFactory::HandleMessage (nsC { IcedTeaPluginInstance* instance = NULL; instances.Get (identifier, &instance); -// if (instance != 0) -// instance->peer->ShowStatus (nsCString (rest).get ()); + if (instance != 0) + { + instance->peer->ShowStatus (nsCString (rest).get ()); + + } } else if (command == "initialized") { @@ -2504,9 +2589,10 @@ IcedTeaPluginFactory::HandleMessage (nsC nsIPluginInstanceOwner* owner = nsnull; ownerGetter->GetOwner (&owner); printf("Calling GetURL with %s and %s\n", nsCString (url).get (), nsCString (target).get ()); - owner->GetURL (nsCString (url).get (), - nsCString (target).get (), - nsnull, 0, nsnull, 0); + nsCOMPtr event = new GetURLRunnable (instance->peer, + nsCString (url).get (), + nsCString (target).get ()); + current->Dispatch(event, nsIEventTarget::DISPATCH_NORMAL); } } else if (command == "GetWindow") @@ -2841,20 +2927,47 @@ void IcedTeaPluginFactory::ProcessMessag void IcedTeaPluginFactory::ProcessMessage () { while (true) { - printf("Process thread sleeping...\n"); - PR_Sleep(PR_INTERVAL_NO_TIMEOUT); + PR_Sleep(1000); + + // If there was an interrupt, clear it PR_ClearInterrupt(); - - printf("Process thread interrupted...\n"); - // Was I interrupted for shutting down? if (shutting_down == PR_TRUE) { break; } - ConsumeMsgFromJVM(); + // Nope. Ok, is there work to do? + if (!jvmMsgQueue.empty()) + ConsumeMsgFromJVM(); + + // All done. Now let's process pending events + + // Were there new events dispatched? + + PRBool this_has_pending, curr_has_pending, processed = PR_FALSE; + PRBool continue_processing = PR_TRUE; + + while (continue_processing == PR_TRUE) { + + processThread->HasPendingEvents(&this_has_pending); + if (this_has_pending == PR_TRUE) { + processThread->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (this) ... %d\n", processed); + } + + current->HasPendingEvents(&curr_has_pending); + if (curr_has_pending == PR_TRUE) { + current->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (current) ... %d\n", processed); + } + + if (this_has_pending != PR_TRUE && curr_has_pending != PR_TRUE) { + continue_processing = PR_FALSE; + } + } } + } void IcedTeaPluginFactory::ConsumeMsgFromJVM () @@ -2872,9 +2985,7 @@ void IcedTeaPluginFactory::ConsumeMsgFro HandleMessage (message); printf("Processing complete\n"); } - -} - +} /** * @@ -3189,9 +3300,9 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_CHECK_RETURN ("init process", result); // FIXME: hard-coded port number. - char const* args[8] = { "-classpath", extra_jars, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "org.classpath.icedtea.plugin.PluginMain", "50007" }; + char const* args[5] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain", "50007" }; // char const* args[2] = { "sun.applet.PluginMain", "50007" }; - result = applet_viewer_process->Run (PR_FALSE, args, 8, nsnull); + result = applet_viewer_process->Run (PR_FALSE, args, 5, nsnull); PLUGIN_CHECK_RETURN ("run process", result); // start processing thread @@ -3812,6 +3923,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) { + return NS_OK; PLUGIN_TRACE_JNIENV (); // Get JSContext from stack. @@ -3835,7 +3947,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) { - + return NS_OK; PLUGIN_TRACE_JNIENV (); nsIPrincipal *prin; @@ -4922,27 +5034,15 @@ NSGetFactory (nsISupports* aServMgr, nsC //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - extrajars += jar; - extrajars += nsCString("/IcedTeaPlugin.jar"); - extrajars += ":"; - extrajars += jar; - extrajars += nsCString("/rt.jar"); //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - extra_jars = strdup (extrajars.get ()); //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); - return NS_ERROR_OUT_OF_MEMORY; - } - - if (!extra_jars) - { - PLUGIN_ERROR ("Failed to create plugin jar name."); return NS_ERROR_OUT_OF_MEMORY; } diff -r f4981f8a1720 -r 358cb21c4730 Makefile.am --- a/Makefile.am Wed Oct 01 05:52:01 2008 -0400 +++ b/Makefile.am Wed Oct 01 16:40:56 2008 -0400 @@ -12,13 +12,11 @@ if ENABLE_LIVECONNECT if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so -ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = -ICEDTEAPLUGIN_JAR = PLUGIN_PATCH = patches/icedtea-plugin.patch LIVECONNECT = if ENABLE_PLUGIN @@ -48,7 +46,6 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so - rm -rf IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so @@ -597,6 +594,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta fi if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + cp -a plugin/icedtea/netscape openjdk/jdk/src/share/classes/ endif clean-patch: @@ -616,6 +614,7 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi + rm -rf openjdk/jdk/src/share/classes/netscape for file in plugin/icedtea/sun/applet/*java ; \ do \ rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ @@ -911,7 +910,7 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ From dbhole at redhat.com Sat Oct 18 21:23:24 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:24 +0000 Subject: changeset in /hg/icedtea: - More updates to the makefile so that... Message-ID: changeset e41e54a1c0b0 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e41e54a1c0b0 description: - More updates to the makefile so that it works with the new structure diffstat: 1 file changed, 8 insertions(+), 7 deletions(-) Makefile.am | 15 ++++++++------- diffs (66 lines): diff -r 358cb21c4730 -r e41e54a1c0b0 Makefile.am --- a/Makefile.am Wed Oct 01 16:40:56 2008 -0400 +++ b/Makefile.am Thu Oct 02 15:27:35 2008 -0400 @@ -13,12 +13,12 @@ ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugi ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so PLUGIN_PATCH = patches/icedtea-liveconnect.patch -LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ +LIVECONNECT_DIR = -C lib/rt netscape else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = PLUGIN_PATCH = patches/icedtea-plugin.patch -LIVECONNECT = +LIVECONNECT_DIR = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -44,6 +44,7 @@ distclean-local: clean-copy clean-jtreg rm -rf openjdk-ecj rm -rf openjdk rm -rf hotspot-tools + rm -rf rt/netscape if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so else @@ -594,7 +595,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta fi if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ - cp -a plugin/icedtea/netscape openjdk/jdk/src/share/classes/ + cp -a plugin/icedtea/netscape rt/ endif clean-patch: @@ -614,7 +615,7 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi - rm -rf openjdk/jdk/src/share/classes/netscape + rm -rf rt/netscape for file in plugin/icedtea/sun/applet/*java ; \ do \ rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ @@ -1203,7 +1204,7 @@ bootstrap/jdk1.7.0/jre/lib/tools.jar: st # rt-closed.jar class files. rt-source-files.txt: stamps/extract.stamp stamps/copy-source-files.stamp - find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT) -name '*.java' \ + find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt -name '*.java' \ | sort -u > $@ stamps/rt-class-files.stamp: rt-source-files.txt @@ -1238,10 +1239,10 @@ bootstrap/jdk1.7.0/jre/lib/rt-closed.jar if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ $(JAR) cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \ fi if test -d bootstrap/ecj/jre/lib ; \ then \ From dbhole at redhat.com Sat Oct 18 21:23:24 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:24 +0000 Subject: changeset in /hg/icedtea: ChangeLog update Message-ID: changeset 868547baa028 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=868547baa028 description: ChangeLog update diffstat: 1 file changed, 43 insertions(+) ChangeLog | 43 +++++++++++++++++++++++++++++++++++++++++++ diffs (50 lines): diff -r 09dcedbe63a8 -r 868547baa028 ChangeLog --- a/ChangeLog Thu Oct 02 10:55:55 2008 -0400 +++ b/ChangeLog Thu Oct 02 15:34:39 2008 -0400 @@ -1,3 +1,46 @@ 2008-10-02 Lillian Angel + * .hgignore: Removed IcedTeaPlugin.jar + * IcedTeaPlugin.cc: Updated classpath when launching Java. added + checks to detect error on Java side. + * Makefile.am: Updated to fit new refactored files. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: New + file, moved out of org/classpath/icedtea/plugin/, as a result of + refactoring. + * plugin/icedtea/sun/applet/PluginCallRequestFactory.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Same. + * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. + * plugin/icedtea/sun/applet/PluginMain.java: Same. + * plugin/icedtea/sun/applet/PluginMessageConsumer.java: Same. + * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java: Same. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/RequestQueue.java: Same. + * plugin/icedtea/sun/applet/TestEnv.java: Same. + * plugin/icedtea/sun/applet/VoidPluginCallRequest.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java: + Removed, as a result of refactoring. + * plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java: + Same. + * plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java: Same. + * plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java: + Same. + * plugin/icedtea/sun/applet/AppletSecurityContext.java: Same. + 2008-10-02 Lillian Angel * HACKING: Updated with new visualvm patch. From doko at ubuntu.com Sat Oct 18 21:23:25 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:25 +0000 Subject: changeset in /hg/icedtea: 2008-10-05 Matthias Klose changeset 192176f52fb4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=192176f52fb4 description: 2008-10-05 Matthias Klose * Makefile.am (distclean-local): Remove IcedTeaPlugin object file. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 2 +- diffs (23 lines): diff -r e0a13e4cc434 -r 192176f52fb4 ChangeLog --- a/ChangeLog Fri Oct 03 07:58:17 2008 -0400 +++ b/ChangeLog Mon Oct 06 10:37:31 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-03 Gary Benson + + * Makefile.am (distclean-local): Remove IcedTeaPlugin object file. + 2008-10-03 Gary Benson * ports/hotspot/build/linux/makefiles/shark.make: diff -r e0a13e4cc434 -r 192176f52fb4 Makefile.am --- a/Makefile.am Fri Oct 03 07:58:17 2008 -0400 +++ b/Makefile.am Mon Oct 06 10:37:31 2008 +0200 @@ -52,7 +52,7 @@ distclean-local: clean-copy clean-jtreg rm -rf hotspot-tools rm -rf rt/netscape if ENABLE_LIVECONNECT - rm -f IcedTeaPlugin.so + rm -f IcedTeaPlugin.o IcedTeaPlugin.so else if ENABLE_PLUGIN rm -f gcjwebplugin.so From dbhole at redhat.com Sat Oct 18 21:23:25 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:25 +0000 Subject: changeset in /hg/icedtea: Merge with upstream Message-ID: changeset b83387569a2a in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=b83387569a2a description: Merge with upstream diffstat: 1 file changed, 1 deletion(-) configure.ac | 1 - diffs (11 lines): diff -r 880c7189324c -r b83387569a2a configure.ac --- a/configure.ac Thu Oct 02 15:45:31 2008 -0400 +++ b/configure.ac Thu Oct 02 16:15:21 2008 -0400 @@ -235,7 +235,6 @@ fi fi fi FIND_RHINO_JAR -FIND_NETBEANS WITH_OPENJDK_SRC_ZIP WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP From dbhole at redhat.com Sat Oct 18 21:23:25 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:25 +0000 Subject: changeset in /hg/icedtea: Merging local with remote Message-ID: changeset 880c7189324c in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=880c7189324c description: Merging local with remote diffstat: 29 files changed, 2445 insertions(+), 2280 deletions(-) .hgignore | 1 IcedTeaPlugin.cc | 214 +- Makefile.am | 43 plugin/icedtea/org/classpath/icedtea/plugin/GetMemberPluginCallRequest.java | 78 plugin/icedtea/org/classpath/icedtea/plugin/GetWindowPluginCallRequest.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginAppletSecurityContext.java | 855 -------- plugin/icedtea/org/classpath/icedtea/plugin/PluginCallRequestFactoryImpl.java | 22 plugin/icedtea/org/classpath/icedtea/plugin/PluginMain.java | 193 - plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageConsumer.java | 76 plugin/icedtea/org/classpath/icedtea/plugin/PluginMessageHandlerWorker.java | 79 plugin/icedtea/org/classpath/icedtea/plugin/PluginObjectStore.java | 119 - plugin/icedtea/org/classpath/icedtea/plugin/PluginStreamHandlerImpl.java | 362 --- plugin/icedtea/org/classpath/icedtea/plugin/RequestQueue.java | 40 plugin/icedtea/org/classpath/icedtea/plugin/TestEnv.java | 172 - plugin/icedtea/org/classpath/icedtea/plugin/VoidPluginCallRequest.java | 69 plugin/icedtea/sun/applet/AppletSecurityContext.java | 25 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 6 plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java | 76 plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java | 75 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 1021 ++++++++++ plugin/icedtea/sun/applet/PluginCallRequestFactory.java | 19 plugin/icedtea/sun/applet/PluginMain.java | 188 + plugin/icedtea/sun/applet/PluginMessageConsumer.java | 67 plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java | 78 plugin/icedtea/sun/applet/PluginObjectStore.java | 121 + plugin/icedtea/sun/applet/PluginStreamHandler.java | 371 +++ plugin/icedtea/sun/applet/RequestQueue.java | 39 plugin/icedtea/sun/applet/TestEnv.java | 172 + plugin/icedtea/sun/applet/VoidPluginCallRequest.java | 68 diffs (truncated from 5129 to 500 lines): diff -r 868547baa028 -r 880c7189324c .hgignore --- a/.hgignore Thu Oct 02 15:34:39 2008 -0400 +++ b/.hgignore Thu Oct 02 15:45:31 2008 -0400 @@ -25,7 +25,6 @@ gcjwebplugin.so gcjwebplugin.so IcedTeaPlugin.o IcedTeaPlugin.so -IcedTeaPlugin.jar extra-source-files.txt rt-source-files.txt hotspot-tools-source-files.txt diff -r 868547baa028 -r 880c7189324c IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 02 15:34:39 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 02 15:45:31 2008 -0400 @@ -244,7 +244,6 @@ static GError* channel_error = NULL; static GError* channel_error = NULL; // Fully-qualified appletviewer executable. static char* appletviewer_executable = NULL; -static char* extra_jars = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -317,8 +316,6 @@ char const* TYPES[10] = { "Object", char context[16]; \ GetCurrentPageAddress(&addr); \ GetCurrentContextAddr(context); \ - printf("Addr: %s , Context: %s\n", addr, context);\ -\ nsCString message ("context "); \ message.AppendInt (0); \ message += " reference "; \ @@ -428,12 +425,14 @@ char const* TYPES[10] = { "Object", #define MESSAGE_RECEIVE_REFERENCE(reference, cast, name) \ nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ - if (factory->result_map[reference]->returnIdentifier == 0) \ + if (factory->result_map[reference]->returnIdentifier == 0 || \ + factory->result_map[reference]->errorOccured == PR_TRUE) \ { \ *name = NULL; \ } else { \ @@ -449,25 +448,33 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 &&\ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + { \ + *id = NULL; \ + } else \ + { \ *id = reinterpret_cast \ (new JNIID (factory->result_map[reference]->returnIdentifier, signature)); \ printf ("RECEIVE_ID: %s result: %x = %d, %s\n", \ __func__, *id, factory->result_map[reference]->returnIdentifier, \ - signature); + signature); \ + } #define MESSAGE_RECEIVE_VALUE(reference, ctype, result) \ nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = ParseValue (type, factory->result_map[reference]->returnValue); + *result = ParseValue (type, factory->result_map[reference]->returnValue); // \ // char* valueString = ValueString (type, *result); \ // printf ("RECEIVE_VALUE: %s result: %x = %s\n", \ @@ -479,13 +486,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ - PLUGIN_CHECK ("parse integer", conversionResult); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + *result = factory->result_map[reference]->returnValue.ToInteger (&conversionResult); \ + PLUGIN_CHECK ("parse integer", conversionResult); \ + } // \ // printf ("RECEIVE_SIZE: %s result: %x = %d\n", \ // __func__, result, *result); @@ -495,13 +508,19 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ - while (factory->result_map[reference]->returnValue == "") \ + while (factory->result_map[reference]->returnValue == "" && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ - *result = reinterpret_cast \ - (strdup (factory->result_map[reference]->returnValue.get ())); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + {\ + printf("Setting result to: %s\n", strdup (factory->result_map[reference]->returnValue.get ())); \ + *result = reinterpret_cast \ + (strdup (factory->result_map[reference]->returnValue.get ()));\ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ // __func__, result, *result); @@ -511,16 +530,22 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ - while (factory->result_map[reference]->returnValueUCS.IsEmpty()) \ + while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - int length = factory->result_map[reference]->returnValueUCS.Length (); \ - jchar* newstring = static_cast (PR_Malloc (length)); \ - memset (newstring, 0, length); \ - memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ - std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ - *result = static_cast (newstring); + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + { \ + int length = factory->result_map[reference]->returnValueUCS.Length (); \ + jchar* newstring = static_cast (PR_Malloc (length)); \ + memset (newstring, 0, length); \ + memcpy (newstring, factory->result_map[reference]->returnValueUCS.get (), length); \ + std::cout << "Setting result to: " << factory->result_map[reference]->returnValueUCS.get() << std::endl; \ + *result = static_cast (newstring); \ + } // \ // printf ("RECEIVE_STRING: %s result: %x = %s\n", \ @@ -530,11 +555,15 @@ char const* TYPES[10] = { "Object", PRBool processed = PR_FALSE; \ nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ - while (factory->result_map[reference]->returnIdentifier == -1) \ + while (factory->result_map[reference]->returnIdentifier == -1 && \ + factory->result_map[reference]->errorOccured == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - *result = factory->result_map[reference]->returnIdentifier; + if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + *result = NULL; \ + else \ + *result = factory->result_map[reference]->returnIdentifier; // res = factory->current->ProcessNextEvent (PR_TRUE, \ // &processed); \ // PLUGIN_CHECK_RETURN (__func__, res); \ @@ -1225,9 +1254,57 @@ template NS_IMETHODIMP template NS_IMETHODIMP IcedTeaRunnableMethod::Run () { - (object->*method) (); - return NS_OK; -} + (object->*method) (); + return NS_OK; +} + + +// FIXME: Special class just for dispatching GetURL to another +// thread.. seriously, a class just for that? there has to be a better way! + +class GetURLRunnable : public nsIRunnable +{ +public: + NS_DECL_ISUPPORTS + NS_DECL_NSIRUNNABLE + + GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target); + + ~GetURLRunnable (); + +private: + nsIPluginInstancePeer* peer; + const char* url; + const char* target; +}; + +NS_IMPL_ISUPPORTS1 (GetURLRunnable, nsIRunnable) + +GetURLRunnable::GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target) +: peer(peer), + url(url), + target(target) +{ + NS_ADDREF (peer); +} + +GetURLRunnable::~GetURLRunnable () +{ + NS_RELEASE(peer); +} + +NS_IMETHODIMP +GetURLRunnable::Run () +{ + nsCOMPtr ownerGetter = + do_QueryInterface (peer); + nsIPluginInstanceOwner* owner = nsnull; + ownerGetter->GetOwner (&owner); + + return owner->GetURL ((const char*) url, (const char*) target, + nsnull, 0, nsnull, 0); +} + NS_IMPL_ISUPPORTS6 (IcedTeaPluginFactory, nsIFactory, nsIPlugin, nsIJVMManager, nsIJVMPrefsWindow, nsIJVMPlugin, nsIInputStreamCallback) @@ -2433,6 +2510,11 @@ IcedTeaPluginFactory::OnInputStreamReady return NS_OK; } +#include +#include +#include +#include + void IcedTeaPluginFactory::HandleMessage (nsCString const& message) { @@ -2477,8 +2559,11 @@ IcedTeaPluginFactory::HandleMessage (nsC { IcedTeaPluginInstance* instance = NULL; instances.Get (identifier, &instance); -// if (instance != 0) -// instance->peer->ShowStatus (nsCString (rest).get ()); + if (instance != 0) + { + instance->peer->ShowStatus (nsCString (rest).get ()); + + } } else if (command == "initialized") { @@ -2504,9 +2589,10 @@ IcedTeaPluginFactory::HandleMessage (nsC nsIPluginInstanceOwner* owner = nsnull; ownerGetter->GetOwner (&owner); printf("Calling GetURL with %s and %s\n", nsCString (url).get (), nsCString (target).get ()); - owner->GetURL (nsCString (url).get (), - nsCString (target).get (), - nsnull, 0, nsnull, 0); + nsCOMPtr event = new GetURLRunnable (instance->peer, + nsCString (url).get (), + nsCString (target).get ()); + current->Dispatch(event, nsIEventTarget::DISPATCH_NORMAL); } } else if (command == "GetWindow") @@ -2841,20 +2927,47 @@ void IcedTeaPluginFactory::ProcessMessag void IcedTeaPluginFactory::ProcessMessage () { while (true) { - printf("Process thread sleeping...\n"); - PR_Sleep(PR_INTERVAL_NO_TIMEOUT); + PR_Sleep(1000); + + // If there was an interrupt, clear it PR_ClearInterrupt(); - - printf("Process thread interrupted...\n"); - // Was I interrupted for shutting down? if (shutting_down == PR_TRUE) { break; } - ConsumeMsgFromJVM(); + // Nope. Ok, is there work to do? + if (!jvmMsgQueue.empty()) + ConsumeMsgFromJVM(); + + // All done. Now let's process pending events + + // Were there new events dispatched? + + PRBool this_has_pending, curr_has_pending, processed = PR_FALSE; + PRBool continue_processing = PR_TRUE; + + while (continue_processing == PR_TRUE) { + + processThread->HasPendingEvents(&this_has_pending); + if (this_has_pending == PR_TRUE) { + processThread->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (this) ... %d\n", processed); + } + + current->HasPendingEvents(&curr_has_pending); + if (curr_has_pending == PR_TRUE) { + current->ProcessNextEvent(PR_TRUE, &processed); + printf("Pending event processed (current) ... %d\n", processed); + } + + if (this_has_pending != PR_TRUE && curr_has_pending != PR_TRUE) { + continue_processing = PR_FALSE; + } + } } + } void IcedTeaPluginFactory::ConsumeMsgFromJVM () @@ -2872,9 +2985,7 @@ void IcedTeaPluginFactory::ConsumeMsgFro HandleMessage (message); printf("Processing complete\n"); } - -} - +} /** * @@ -3189,9 +3300,9 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_CHECK_RETURN ("init process", result); // FIXME: hard-coded port number. - char const* args[8] = { "-classpath", extra_jars, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "org.classpath.icedtea.plugin.PluginMain", "50007" }; + char const* args[5] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain", "50007" }; // char const* args[2] = { "sun.applet.PluginMain", "50007" }; - result = applet_viewer_process->Run (PR_FALSE, args, 8, nsnull); + result = applet_viewer_process->Run (PR_FALSE, args, 5, nsnull); PLUGIN_CHECK_RETURN ("run process", result); // start processing thread @@ -3812,6 +3923,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) { + return NS_OK; PLUGIN_TRACE_JNIENV (); // Get JSContext from stack. @@ -3835,7 +3947,7 @@ nsresult nsresult IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) { - + return NS_OK; PLUGIN_TRACE_JNIENV (); nsIPrincipal *prin; @@ -4922,27 +5034,15 @@ NSGetFactory (nsISupports* aServMgr, nsC //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - extrajars += jar; - extrajars += nsCString("/IcedTeaPlugin.jar"); - extrajars += ":"; - extrajars += jar; - extrajars += nsCString("/rt.jar"); //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - extra_jars = strdup (extrajars.get ()); //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); - return NS_ERROR_OUT_OF_MEMORY; - } - - if (!extra_jars) - { - PLUGIN_ERROR ("Failed to create plugin jar name."); return NS_ERROR_OUT_OF_MEMORY; } diff -r 868547baa028 -r 880c7189324c Makefile.am --- a/Makefile.am Thu Oct 02 15:34:39 2008 -0400 +++ b/Makefile.am Thu Oct 02 15:45:31 2008 -0400 @@ -12,15 +12,13 @@ if ENABLE_LIVECONNECT if ENABLE_LIVECONNECT ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin ICEDTEAPLUGIN_TARGET = IcedTeaPlugin.so -ICEDTEAPLUGIN_JAR = IcedTeaPlugin.jar PLUGIN_PATCH = patches/icedtea-liveconnect.patch -LIVECONNECT = $(abs_top_srcdir)/plugin/icedtea/ +LIVECONNECT_DIR = -C lib/rt netscape else ICEDTEAPLUGIN_CLEAN = ICEDTEAPLUGIN_TARGET = -ICEDTEAPLUGIN_JAR = -LIVECONNECT = PLUGIN_PATCH = patches/icedtea-plugin.patch +LIVECONNECT_DIR = if ENABLE_PLUGIN GCJWEBPLUGIN_CLEAN = clean-gcjwebplugin GCJWEBPLUGIN_TARGET = gcjwebplugin.so @@ -52,9 +50,9 @@ distclean-local: clean-copy clean-jtreg rm -rf openjdk-ecj rm -rf openjdk rm -rf hotspot-tools + rm -rf rt/netscape if ENABLE_LIVECONNECT rm -f IcedTeaPlugin.so - rm -f IcedTeaPlugin.jar else if ENABLE_PLUGIN rm -f gcjwebplugin.so @@ -600,9 +598,9 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo WARNING make clean-patch before retrying a fix ; \ false; \ fi - if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + cp -a plugin/icedtea/netscape rt/ endif clean-patch: @@ -622,6 +620,7 @@ clean-patch: if ! test x$${all_patches_ok} = "xyes" ; then \ echo "WARNING Not all patches reverted cleanly" ; \ fi + rm -rf rt/netscape for file in plugin/icedtea/sun/applet/*java ; \ do \ rm -f openjdk/jdk/src/share/classes/sun/applet/`basename $file` ; \ @@ -917,7 +916,7 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ - $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) $(ICEDTEAPLUGIN_JAR) \ + $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp $(MAKE) \ $(ICEDTEA_ENV) \ @@ -928,10 +927,6 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib/ else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -973,7 +968,7 @@ stamps/icedtea-debug.stamp: stamps/boots stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ - $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) $(ICEDTEAPLUGIN_JAR) \ + $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ extra-lib/about.jar stamps/cacao.stamp $(MAKE) \ $(ICEDTEA_ENV) \ @@ -984,10 +979,6 @@ if ENABLE_LIVECONNECT $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) cp -pPRf IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ - cp -pPRf IcedTeaPlugin.jar \ - $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ else if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ @@ -1239,7 +1230,7 @@ bootstrap/jdk1.7.0/jre/lib/tools.jar: st # rt-closed.jar class files. rt-source-files.txt: stamps/extract.stamp stamps/copy-source-files.stamp - find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT) -name '*.java' \ From gbenson at redhat.com Sat Oct 18 21:23:25 2008 From: gbenson at redhat.com (Gary Benson) Date: Sun, 19 Oct 2008 04:23:25 +0000 Subject: changeset in /hg/icedtea: 2008-10-03 Gary Benson changeset e0a13e4cc434 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e0a13e4cc434 description: 2008-10-03 Gary Benson * ports/hotspot/build/linux/makefiles/shark.make: Work around some GCC optimizer failures. diffstat: 2 files changed, 19 insertions(+) ChangeLog | 5 +++++ ports/hotspot/build/linux/makefiles/shark.make | 14 ++++++++++++++ diffs (39 lines): diff -r b83387569a2a -r e0a13e4cc434 ChangeLog --- a/ChangeLog Thu Oct 02 16:15:21 2008 -0400 +++ b/ChangeLog Fri Oct 03 07:58:17 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-01 Deepak Bhole + + * ports/hotspot/build/linux/makefiles/shark.make: + Work around some GCC optimizer failures. + 2008-10-01 Deepak Bhole * .hgignore: Removed IcedTeaPlugin.jar * IcedTeaPlugin.cc: Updated classpath when launching Java. added diff -r b83387569a2a -r e0a13e4cc434 ports/hotspot/build/linux/makefiles/shark.make --- a/ports/hotspot/build/linux/makefiles/shark.make Thu Oct 02 16:15:21 2008 -0400 +++ b/ports/hotspot/build/linux/makefiles/shark.make Fri Oct 03 07:58:17 2008 -0400 @@ -1,5 +1,6 @@ # # Copyright 1999-2005 Sun Microsystems, Inc. All Rights Reserved. +# Copyright 2008 Red Hat, Inc. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -29,3 +30,16 @@ VM_SUBDIR = server VM_SUBDIR = server CFLAGS += -DSHARK + +# Something these files fail with GCC at higher optimization levels. +# An llvm::Value ends up NULL, causing segfaults in LLVM when it is +# used. Observed with 4.1.2 20070925 (Red Hat 4.1.2-33) and 4.3.2. +OPT_CFLAGS/sharkBlock.o = -O0 +OPT_CFLAGS/sharkMonitor.o = -O0 + +# Something in this file fails with GCC at higher optimization levels. +# The part of ciTypeFlow::StateVector::meet_exception() that fills in +# local variables stops part way through leaving the rest set to T_TOP +# (ie uninitialized). The VM then aborts with a ShouldNotReachHere() +# in SharkPHIState::initialize(). Observed with 4.3.2. +OPT_CFLAGS/ciTypeFlow.o = -O1 From dbhole at redhat.com Sat Oct 18 21:23:27 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Sun, 19 Oct 2008 04:23:27 +0000 Subject: changeset in /hg/icedtea: - Implemented JS->Java security. Message-ID: changeset 86fbcf148d1f in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=86fbcf148d1f description: - Implemented JS->Java security. - Removed ambiguity from class finding mechanism for cases where JS needs a signature involving an applet specific class. - Rewrote code that parsed messages from C++ side -- now it can handle any number of optional components. diffstat: 7 files changed, 730 insertions(+), 323 deletions(-) ChangeLog | 13 IcedTeaPlugin.cc | 508 +++++++---- plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 10 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 412 ++++++-- plugin/icedtea/sun/applet/PluginAppletViewer.java | 33 plugin/icedtea/sun/applet/PluginObjectStore.java | 11 plugin/icedtea/sun/applet/PluginStreamHandler.java | 66 - diffs (truncated from 1911 to 500 lines): diff -r ab8aa9425fc4 -r 86fbcf148d1f ChangeLog --- a/ChangeLog Tue Oct 07 11:16:16 2008 -0400 +++ b/ChangeLog Wed Oct 08 17:00:19 2008 -0400 @@ -1,3 +1,16 @@ 2008-10-07 Gary Benson + * IcedTeaPlugin.cc: Implemented JS->Java security. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. Also, + remove ambiguity from class finding mechanism for cases where JS needs a + signature involving an applet specific class. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Implemented JS->Java + security. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Rewrote code that + parsed messages from C++ side -- now it can handle any number of optional + components. + 2008-10-07 Gary Benson Andrew Haley diff -r ab8aa9425fc4 -r 86fbcf148d1f IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Tue Oct 07 11:16:16 2008 -0400 +++ b/IcedTeaPlugin.cc Wed Oct 08 17:00:19 2008 -0400 @@ -309,29 +309,36 @@ char const* TYPES[10] = { "Object", #include // FIXME: create index from security context. -#define MESSAGE_CREATE(reference) \ - const char* addr; \ - char context[16]; \ - GetCurrentPageAddress(&addr); \ - GetCurrentContextAddr(context); \ +#define MESSAGE_CREATE() \ nsCString message ("context "); \ message.AppendInt (0); \ + +#define MESSAGE_ADD_STACK_REFERENCE(reference) \ message += " reference "; \ message.AppendInt (reference); \ - if (factory->codebase_map.find(nsCString(addr)) != factory->codebase_map.end()) \ - { \ - message += " src "; \ - message += factory->codebase_map[nsCString(addr)];\ - } \ - message += " "; \ - message += __func__; \ if (factory->result_map[reference] == NULL) { \ factory->result_map[reference] = new ResultContainer(); \ printf("ResultMap created -- %p %d\n", factory->result_map[reference], factory->result_map[reference]->returnIdentifier); \ } \ else \ - factory->result_map[reference]->Clear(); - + factory->result_map[reference]->Clear(); + +#define MESSAGE_ADD_SRC(src) \ + message += " src "; \ + message += src; + +#define MESSAGE_ADD_PRIVILEGES() \ + nsCString privileges(""); \ + GetEnabledPrivileges(&privileges); \ + if (privileges.Length() > 0) \ + { \ + message += " privileges "; \ + message += privileges; \ + } + +#define MESSAGE_ADD_FUNC() \ + message += " "; \ + message += __func__; #define MESSAGE_ADD_STRING(name) \ message += " "; \ @@ -396,7 +403,7 @@ char const* TYPES[10] = { "Object", #define PROCESS_PENDING_EVENTS_REF(reference) \ if (factory->shutting_down == PR_TRUE && \ - factory->result_map[reference]->errorOccured == PR_TRUE) \ + factory->result_map[reference]->errorOccurred == PR_TRUE) \ { \ printf("Error occured. Exiting function\n"); \ return NS_ERROR_FAILURE; \ @@ -424,13 +431,13 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf ("RECEIVE 1\n"); \ while (factory->result_map[reference]->returnIdentifier == -1 &&\ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ printf ("RECEIVE 3\n"); \ if (factory->result_map[reference]->returnIdentifier == 0 || \ - factory->result_map[reference]->errorOccured == PR_TRUE) \ + factory->result_map[reference]->errorOccurred == PR_TRUE) \ { \ *name = NULL; \ } else { \ @@ -447,12 +454,12 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE ID 1\n"); \ while (factory->result_map[reference]->returnIdentifier == -1 &&\ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ { \ *id = NULL; \ } else \ @@ -468,7 +475,7 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE VALUE 1\n"); \ while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ @@ -485,12 +492,12 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE SIZE 1\n"); \ while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ nsresult conversionResult; \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ { \ @@ -507,11 +514,11 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE STRING 1\n"); \ while (factory->result_map[reference]->returnValue == "" && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ {\ @@ -529,11 +536,11 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE STRING UCS 1\n"); \ while (factory->result_map[reference]->returnValueUCS.IsEmpty() && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ { \ @@ -554,11 +561,11 @@ char const* TYPES[10] = { "Object", nsresult res = NS_OK; \ printf("RECEIVE BOOLEAN 1\n"); \ while (factory->result_map[reference]->returnIdentifier == -1 && \ - factory->result_map[reference]->errorOccured == PR_FALSE) \ + factory->result_map[reference]->errorOccurred == PR_FALSE) \ { \ PROCESS_PENDING_EVENTS_REF (reference); \ } \ - if (factory->result_map[reference]->errorOccured == PR_TRUE) \ + if (factory->result_map[reference]->errorOccurred == PR_TRUE) \ *result = NULL; \ else \ *result = factory->result_map[reference]->returnIdentifier; @@ -717,8 +724,8 @@ class ResultContainer PRUint32 returnIdentifier; nsCString returnValue; nsString returnValueUCS; - PRBool errorOccured; - + nsCString errorMessage; + PRBool errorOccurred; }; ResultContainer::ResultContainer () @@ -728,7 +735,8 @@ ResultContainer::ResultContainer () returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); - errorOccured = PR_FALSE; + errorMessage.Truncate(); + errorOccurred = PR_FALSE; } ResultContainer::~ResultContainer () @@ -738,6 +746,7 @@ ResultContainer::~ResultContainer () returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); + errorMessage.Truncate(); } void @@ -748,7 +757,8 @@ ResultContainer::Clear() returnIdentifier = -1; returnValue.Truncate(); returnValueUCS.Truncate(); - errorOccured = PR_FALSE; + errorMessage.Truncate(); + errorOccurred = PR_FALSE; } #include @@ -1182,6 +1192,7 @@ private: void DecrementContextCounter(); nsresult GetCurrentContextAddr(char *addr); nsresult GetCurrentPageAddress(const char **addr); + nsresult GetEnabledPrivileges(nsCString *privileges); int contextCounter; }; @@ -2780,7 +2791,16 @@ IcedTeaPluginFactory::HandleMessage (nsC else if (command == "Error") { printf("Error occured. Setting error flag for container @ %d to true\n", reference); - result_map[reference]->errorOccured = PR_TRUE; + result_map[reference]->errorOccurred = PR_TRUE; + result_map[reference]->errorMessage = (nsCString) rest; + + rest += "ERROR: "; + IcedTeaPluginInstance* instance = NULL; + instances.Get (identifier, &instance); + if (instance != 0) + { + instance->peer->ShowStatus (nsCString (rest).get ()); + } } } else if (prefix == "context") @@ -3916,91 +3936,72 @@ IcedTeaJNIEnv::DecrementContextCounter ( PR_ExitMonitor(contextCounterPRMonitor); } -#include - nsresult -IcedTeaJNIEnv::GetCurrentContextAddr(char *addr) -{ - return NS_OK; - PLUGIN_TRACE_JNIENV (); - - // Get JSContext from stack. - nsCOMPtr mJSContextStack(do_GetService("@mozilla.org/js/xpc/ContextStack;1")); - if (mJSContextStack) { - JSContext *cx; - if (NS_FAILED(mJSContextStack->Peek(&cx))) - return NS_ERROR_FAILURE; - - printf("Context1: %p\n", cx); - - // address cannot be more than 8 bytes (8 bytes = 64 bits) - sprintf(addr, "%p", cx); - - printf("Context2: %s\n", addr); - } - - return NS_OK; -} - -nsresult -IcedTeaJNIEnv::GetCurrentPageAddress(const char **addr) -{ - return NS_OK; - PLUGIN_TRACE_JNIENV (); - - nsIPrincipal *prin; - nsCOMPtr sec_man(do_GetService("@mozilla.org/scriptsecuritymanager;1")); - - if (sec_man) { - - PRBool isEnabled = PR_FALSE; - sec_man->IsCapabilityEnabled("UniversalBrowserRead", &isEnabled); - - if (isEnabled == PR_FALSE) { - printf("UniversalBrowserRead is NOT enabled\n"); - } else { - printf("UniversalBrowserRead IS enabled\n"); - } - - sec_man->IsCapabilityEnabled("UniversalBrowserWrite", &isEnabled); - - if (isEnabled == PR_FALSE) { - printf("UniversalBrowserWrite is NOT enabled\n"); - } else { - printf("UniversalBrowserWrite IS enabled\n"); - } - } - - if (sec_man) - { - sec_man->GetSubjectPrincipal(&prin); - } else { +IcedTeaJNIEnv::GetEnabledPrivileges(nsCString *privileges) +{ + nsresult rv; + nsCOMPtr sec_man = + do_GetService(NS_SCRIPTSECURITYMANAGER_CONTRACTID, &rv); + + if (NS_FAILED(rv) || !sec_man) { return NS_ERROR_FAILURE; } - if (prin) - { - nsIURI *uri; - prin->GetURI(&uri); - - if (uri) - { - nsCAutoString str; - uri->GetSpec(str); - NS_CStringGetData(str, addr); - } else { - return NS_ERROR_FAILURE; - } - } else { - return NS_ERROR_FAILURE; - } - - - nsCOMPtr js_id(do_GetService("@mozilla.org/js/xpc/ID;1")); - printf("JS ID is: %s\n", js_id->GetID()->ToString()); - - return NS_OK; - + PRBool isEnabled = PR_FALSE; + + // check privileges one by one + + privileges->Truncate(); + char available_privileges[1024]; + + // see: http://docs.sun.com/source/816-6170-10/index.htm + + // Should these other privileges be supported? According to + // http://java.sun.com/j2se/1.3/docs/guide/plugin/security.html it is + // either UniversalBrowserRead/UniversalJavaPermissions or the highway... + +/* + // broken down to make it clean... + sprintf(available_privileges, "%s %s %s %s %s %s %s %s %s %s %s %s", + "LimitedInstall FullInstall SilentInstall", + "UniversalAccept UniversalAwtEventQueueAccess UniversalConnect", + "UniversalConnectWithRedirect UniversalDialogModality", + "UniversalExecAccess UniversalExitAccess UniversalFdRead", + "UniversalFileDelete UniversalFileRead UniversalFileWrite", + "UniversalLinkAccess UniversalListen UniversalMulticast", + "UniversalJavaPermissions UniversalPackageAccess", + "UniversalPackageDefinition UniversalPrintJobAccess", + "UniversalPropertyRead UniversalPropertyWrite", + "UniversalSendMail UniversalSetFactory UniversalSystemClipboardAccess", + "UniversalThreadAccess UniversalThreadGroupAccess", + "UniversalTopLevelWindow"); +*/ + + sprintf(available_privileges, "%s", + "UniversalBrowserRead UniversalJavaPermissions"); + + + char *token = strtok(available_privileges, " "); + while (token != NULL) + { + isEnabled = PR_FALSE; + sec_man->IsCapabilityEnabled(token, &isEnabled); + + if (isEnabled == PR_TRUE) + { + printf("GetEnabledPrivileges : %s is enabled\n", token); + *privileges += token; + *privileges += ","; + } else { + printf("GetEnabledPrivileges : %s is _NOT_ enabled\n", token); + } + + token = strtok (NULL, " "); + } + + privileges->Trim(","); + + return NS_OK; } NS_IMETHODIMP @@ -4011,14 +4012,41 @@ IcedTeaJNIEnv::NewObject (jclass clazz, nsISecurityContext* ctx) { PLUGIN_TRACE_JNIENV (); + + char origin[1024]; + sprintf(origin, ""); + + if (ctx) + ctx->GetOrigin(origin, 1024); + int reference = IncrementContextCounter (); - MESSAGE_CREATE (reference); + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_FUNC(); MESSAGE_ADD_REFERENCE (clazz); MESSAGE_ADD_ID (methodID); MESSAGE_ADD_ARGS (methodID, args); MESSAGE_SEND (); - printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_REFERENCE (reference, jobject, result); + + if (factory->result_map[reference]->errorOccurred == PR_TRUE && + factory->result_map[reference]->errorMessage.Find("LiveConnectPermissionNeeded") == 0) + { + // Permission error. Try again. This time, send permissions over the wire + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_PRIVILEGES(); + MESSAGE_ADD_FUNC(); + MESSAGE_ADD_REFERENCE (clazz); + MESSAGE_ADD_ID (methodID); + MESSAGE_ADD_ARGS (methodID, args); + MESSAGE_SEND (); + MESSAGE_RECEIVE_REFERENCE (reference, jobject, result); + } + + DecrementContextCounter (); return NS_OK; @@ -4033,15 +4061,43 @@ IcedTeaJNIEnv::CallMethod (jni_type type nsISecurityContext* ctx) { PLUGIN_TRACE_JNIENV (); + + char origin[1024]; + sprintf(origin, ""); + + if (ctx) + ctx->GetOrigin(origin, 1024); + int reference = IncrementContextCounter (); - MESSAGE_CREATE (reference); + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_FUNC(); MESSAGE_ADD_REFERENCE (obj); MESSAGE_ADD_ID (methodID); MESSAGE_ADD_ARGS (methodID, args); - std::cout << "CALLMETHOD -- OBJ: " << obj << " METHOD: " << methodID << " ARGS: " << args << std::endl; MESSAGE_SEND (); - printf("MSG SEND COMPLETE. NOW RECEIVING...\n"); MESSAGE_RECEIVE_VALUE (reference, type, result); + + if (factory->result_map[reference]->errorOccurred == PR_TRUE && + factory->result_map[reference]->errorMessage.Find("LiveConnectPermissionNeeded") == 0) + { + MESSAGE_CREATE (); + MESSAGE_ADD_STACK_REFERENCE(reference); + MESSAGE_ADD_SRC(origin); + MESSAGE_ADD_PRIVILEGES(); + MESSAGE_ADD_FUNC(); + MESSAGE_ADD_REFERENCE (obj); + MESSAGE_ADD_ID (methodID); + MESSAGE_ADD_ARGS (methodID, args); + MESSAGE_SEND (); + MESSAGE_RECEIVE_VALUE (reference, type, result); + + // if everything was OK, clear exception from previous access exception + if (factory->result_map[reference]->errorOccurred == PR_FALSE) + ExceptionClear(); + } + DecrementContextCounter (); return NS_OK; @@ -4307,13 +4363,37 @@ IcedTeaJNIEnv::GetField (jni_type type, nsISecurityContext* ctx) { PLUGIN_TRACE_JNIENV (); + + char origin[1024]; + sprintf(origin, ""); + + if (ctx) + ctx->GetOrigin(origin, 1024); From gbenson at redhat.com Sat Oct 18 21:23:26 2008 From: gbenson at redhat.com (Gary Benson) Date: Sun, 19 Oct 2008 04:23:26 +0000 Subject: changeset in /hg/icedtea: 2008-10-07 Gary Benson changeset ab8aa9425fc4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ab8aa9425fc4 description: 2008-10-07 Gary Benson Andrew Haley * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp (object): Add missing return statement. (displaced_header): Likewise. * ports/hotspot/build/linux/makefiles/shark.make: Remove workaround for the above. diffstat: 3 files changed, 12 insertions(+), 8 deletions(-) ChangeLog | 10 ++++++++++ ports/hotspot/build/linux/makefiles/shark.make | 6 ------ ports/hotspot/src/share/vm/shark/sharkMonitor.hpp | 4 ++-- diffs (54 lines): diff -r e4575e17609d -r ab8aa9425fc4 ChangeLog --- a/ChangeLog Tue Oct 07 14:11:49 2008 +0200 +++ b/ChangeLog Tue Oct 07 11:16:16 2008 -0400 @@ -1,3 +1,13 @@ 2008-10-07 Matthias Klose + Andrew Haley + + * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp + (object): Add missing return statement. + (displaced_header): Likewise. + + * ports/hotspot/build/linux/makefiles/shark.make: + Remove workaround for the above. + 2008-10-07 Matthias Klose * Makefile.am: Don't rely on versioned cacao source directory. diff -r e4575e17609d -r ab8aa9425fc4 ports/hotspot/build/linux/makefiles/shark.make --- a/ports/hotspot/build/linux/makefiles/shark.make Tue Oct 07 14:11:49 2008 +0200 +++ b/ports/hotspot/build/linux/makefiles/shark.make Tue Oct 07 11:16:16 2008 -0400 @@ -31,12 +31,6 @@ VM_SUBDIR = server CFLAGS += -DSHARK -# Something these files fail with GCC at higher optimization levels. -# An llvm::Value ends up NULL, causing segfaults in LLVM when it is -# used. Observed with 4.1.2 20070925 (Red Hat 4.1.2-33) and 4.3.2. -OPT_CFLAGS/sharkBlock.o = -O0 -OPT_CFLAGS/sharkMonitor.o = -O0 - # Something in this file fails with GCC at higher optimization levels. # The part of ciTypeFlow::StateVector::meet_exception() that fills in # local variables stops part way through leaving the rest set to T_TOP diff -r e4575e17609d -r ab8aa9425fc4 ports/hotspot/src/share/vm/shark/sharkMonitor.hpp --- a/ports/hotspot/src/share/vm/shark/sharkMonitor.hpp Tue Oct 07 14:11:49 2008 +0200 +++ b/ports/hotspot/src/share/vm/shark/sharkMonitor.hpp Tue Oct 07 11:16:16 2008 -0400 @@ -67,7 +67,7 @@ class SharkMonitor : public ResourceObj public: llvm::Value* object() const { - builder()->CreateLoad(object_addr()); + return builder()->CreateLoad(object_addr()); } void set_object(llvm::Value* object) const { @@ -75,7 +75,7 @@ class SharkMonitor : public ResourceObj } llvm::Value* displaced_header() const { - builder()->CreateLoad(displaced_header_addr()); + return builder()->CreateLoad(displaced_header_addr()); } void set_displaced_header(llvm::Value* displaced_header) const { From doko at ubuntu.com Sat Oct 18 21:23:27 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:27 +0000 Subject: changeset in /hg/icedtea: 2008-10-09 Matthias Klose changeset 6790b974078e in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=6790b974078e description: 2008-10-09 Matthias Klose * patches/icedtea-6open-6616825.patch: New. * patches/icedtea-6open-6651382.patch: New. * patches/icedtea-6open-6756202.patch: New. * Makefile.am: Apply patches. diffstat: 5 files changed, 440 insertions(+) ChangeLog | 7 Makefile.am | 3 patches/icedtea-6open-6616825.patch | 294 +++++++++++++++++++++++++++++++++++ patches/icedtea-6open-6651382.patch | 116 +++++++++++++ patches/icedtea-6open-6756202.patch | 20 ++ diffs (469 lines): diff -r 86fbcf148d1f -r 6790b974078e ChangeLog --- a/ChangeLog Wed Oct 08 17:00:19 2008 -0400 +++ b/ChangeLog Thu Oct 09 13:35:37 2008 +0200 @@ -1,3 +1,10 @@ 2008-10-08 Deepak Bhole + + * patches/icedtea-6open-6616825.patch: New. + * patches/icedtea-6open-6651382.patch: New. + * patches/icedtea-6open-6756202.patch: New. + * Makefile.am: Apply patches. + 2008-10-08 Deepak Bhole * IcedTeaPlugin.cc: Implemented JS->Java security. * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. diff -r 86fbcf148d1f -r 6790b974078e Makefile.am --- a/Makefile.am Wed Oct 08 17:00:19 2008 -0400 +++ b/Makefile.am Thu Oct 09 13:35:37 2008 +0200 @@ -504,6 +504,9 @@ ICEDTEA_PATCHES = \ patches/icedtea-arch.patch \ patches/icedtea-lc_ctype.patch \ patches/icedtea-messageutils.patch \ + patches/icedtea-6open-6616825.patch \ + patches/icedtea-6open-6651382.patch \ + patches/icedtea-6open-6756202.patch \ $(VISUALVM_PATCH) if WITH_RHINO diff -r 86fbcf148d1f -r 6790b974078e patches/icedtea-6open-6616825.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6open-6616825.patch Thu Oct 09 13:35:37 2008 +0200 @@ -0,0 +1,294 @@ +--- openjdk/jdk/src/share/classes/javax/management/ObjectName.java Wed Oct 8 06:07:09 2008 ++++ openjdk/jdk/src/share/classes/javax/management/ObjectName.java Wed Oct 8 06:07:09 2008 +@@ -37,9 +37,6 @@ + import java.util.HashMap; + import java.util.Hashtable; + import java.util.Map; +-import javax.management.MBeanServer; +-import javax.management.MalformedObjectNameException; +-import javax.management.QueryExp; + + /** + *

Represents the object name of an MBean, or a pattern that can +@@ -1159,9 +1156,19 @@ + // + //in.defaultReadObject(); + final ObjectInputStream.GetField fields = in.readFields(); ++ String propListString = ++ (String)fields.get("propertyListString", ""); ++ ++ // 6616825: take care of property patterns ++ final boolean propPattern = ++ fields.get("propertyPattern" , false); ++ if (propPattern) { ++ propListString = ++ (propListString.length()==0?"*":(propListString+",*")); ++ } ++ + cn = (String)fields.get("domain", "default")+ +- ":"+ +- (String)fields.get("propertyListString", ""); ++ ":"+ propListString; + } else { + // Read an object serialized in the new serial form + // +@@ -1795,6 +1802,7 @@ + * @return True if object is an ObjectName whose + * canonical form is equal to that of this ObjectName. + */ ++ @Override + public boolean equals(Object object) { + + // same object case +@@ -1818,6 +1826,7 @@ + * Returns a hash code for this object name. + * + */ ++ @Override + public int hashCode() { + return _canonicalName.hashCode(); + } +--- openjdk/jdk/test/javax/management/ObjectName/SerialCompatTest.java Wed Oct 8 06:07:12 2008 ++++ openjdk/jdk/test/javax/management/ObjectName/SerialCompatTest.java Wed Oct 8 06:07:12 2008 +@@ -23,9 +23,9 @@ + + /* + * @test +- * @bug 6211220 ++ * @bug 6211220 6616825 + * @summary Test that jmx.serial.form=1.0 works for ObjectName +- * @author Eamonn McManus ++ * @author Eamonn McManus, Daniel Fuchs + * @run clean SerialCompatTest + * @run build SerialCompatTest + * @run main/othervm SerialCompatTest +@@ -36,20 +36,8 @@ + import javax.management.ObjectName; + + public class SerialCompatTest { +- public static void main(String[] args) throws Exception { +- System.setProperty("jmx.serial.form", "1.0"); ++ public static void check6211220() throws Exception { + +- /* Check that we really are in jmx.serial.form=1.0 mode. +- The property is frozen the first time the ObjectName class +- is referenced so checking that it is set to the correct +- value now is not enough. */ +- ObjectStreamClass osc = ObjectStreamClass.lookup(ObjectName.class); +- if (osc.getFields().length != 6) { +- throw new Exception("Not using old serial form: fields: " + +- Arrays.asList(osc.getFields())); +- // new serial form has no fields, uses writeObject +- } +- + ObjectName on = new ObjectName("a:b=c"); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + ObjectOutputStream oos = new ObjectOutputStream(bos); +@@ -62,53 +50,192 @@ + + // if the bug is present, these will get NullPointerException + for (int i = 0; i <= 11; i++) { ++ String msg = "6211220 case("+i+")"; + try { + switch (i) { + case 0: +- check(on1.getDomain().equals("a")); break; ++ check(msg, on1.getDomain().equals("a")); break; + case 1: +- check(on1.getCanonicalName().equals("a:b=c")); break; ++ check(msg, on1.getCanonicalName().equals("a:b=c")); break; + case 2: +- check(on1.getKeyPropertyListString().equals("b=c")); break; ++ check(msg, on1.getKeyPropertyListString().equals("b=c")); ++ break; + case 3: +- check(on1.getCanonicalKeyPropertyListString().equals("b=c")); ++ check(msg, on1.getCanonicalKeyPropertyListString() ++ .equals("b=c")); + break; + case 4: +- check(on1.getKeyProperty("b").equals("c")); break; ++ check(msg, on1.getKeyProperty("b").equals("c")); break; + case 5: +- check(on1.getKeyPropertyList() ++ check(msg, on1.getKeyPropertyList() + .equals(Collections.singletonMap("b", "c"))); break; + case 6: +- check(!on1.isDomainPattern()); break; ++ check(msg, !on1.isDomainPattern()); break; + case 7: +- check(!on1.isPattern()); break; ++ check(msg, !on1.isPattern()); break; + case 8: +- check(!on1.isPropertyPattern()); break; ++ check(msg, !on1.isPropertyPattern()); break; + case 9: +- check(on1.equals(on)); break; ++ check(msg, on1.equals(on)); break; + case 10: +- check(on.equals(on1)); break; ++ check(msg, on.equals(on1)); break; + case 11: +- check(on1.apply(on)); break; ++ check(msg, on1.apply(on)); break; + default: ++ throw new Exception(msg+": Test incorrect"); ++ } ++ } catch (Exception e) { ++ System.out.println(msg+": Test failed with exception:"); ++ e.printStackTrace(System.out); ++ failed = true; ++ } ++ } ++ ++ if (failed) ++ throw new Exception("Some tests for 6211220 failed"); ++ else ++ System.out.println("All tests for 6211220 passed"); ++ } ++ ++ static void checkName(String testname, ObjectName on) ++ throws Exception { ++ ByteArrayOutputStream bos = new ByteArrayOutputStream(); ++ ObjectOutputStream oos = new ObjectOutputStream(bos); ++ oos.writeObject(on); ++ oos.close(); ++ byte[] bytes = bos.toByteArray(); ++ ByteArrayInputStream bis = new ByteArrayInputStream(bytes); ++ ObjectInputStream ois = new ObjectInputStream(bis); ++ ObjectName on1 = (ObjectName) ois.readObject(); ++ // if the bug is present, these will get NullPointerException ++ for (int i = 0; i <= 11; i++) { ++ String msg = testname + " case("+i+")"; ++ try { ++ switch (i) { ++ case 0: ++ check(msg,on1.getDomain().equals(on.getDomain())); ++ break; ++ case 1: ++ check(msg,on1.getCanonicalName(). ++ equals(on.getCanonicalName())); ++ break; ++ case 2: ++ check(msg,on1.getKeyPropertyListString(). ++ equals(on.getKeyPropertyListString())); break; ++ case 3: ++ check(msg,on1.getCanonicalKeyPropertyListString(). ++ equals(on.getCanonicalKeyPropertyListString())); ++ break; ++ case 4: ++ for (Object ko : on1.getKeyPropertyList().keySet()) { ++ final String key = (String) ko; ++ check(msg,on1.getKeyProperty(key). ++ equals(on.getKeyProperty(key))); ++ } ++ for (Object ko : on.getKeyPropertyList().keySet()) { ++ final String key = (String) ko; ++ check(msg,on1.getKeyProperty(key). ++ equals(on.getKeyProperty(key))); ++ } ++ case 5: ++ check(msg,on1.getKeyPropertyList() ++ .equals(on.getKeyPropertyList())); break; ++ case 6: ++ check(msg,on1.isDomainPattern()==on.isDomainPattern()); ++ break; ++ case 7: ++ check(msg,on1.isPattern()==on.isPattern()); break; ++ case 8: ++ check(msg, ++ on1.isPropertyPattern()==on.isPropertyPattern()); break; ++ case 9: ++ check(msg,on1.equals(on)); break; ++ case 10: ++ check(msg,on.equals(on1)); break; ++ case 11: ++ if (!on.isPattern()) ++ check(msg,on1.apply(on)); break; ++ default: + throw new Exception("Test incorrect: case: " + i); + } + } catch (Exception e) { +- System.out.println("Test failed with exception:"); ++ System.out.println("Test ("+i+") failed with exception:"); + e.printStackTrace(System.out); + failed = true; + } + } + ++ } ++ ++ private static String[] names6616825 = { ++ "a:b=c","a:b=c,*","*:*",":*",":b=c",":b=c,*", ++ "a:*,b=c",":*",":*,b=c","*x?:k=\"x\\*z\"","*x?:k=\"x\\*z\",*", ++ "*x?:*,k=\"x\\*z\"","*x?:k=\"x\\*z\",*,b=c" ++ }; ++ ++ static void check6616825() throws Exception { ++ System.out.println("Testing 616825"); ++ for (String n : names6616825) { ++ final ObjectName on; ++ try { ++ on = new ObjectName(n); ++ } catch (Exception x) { ++ failed = true; ++ System.out.println("Unexpected failure for 6616825 ["+n ++ +"]: "+x); ++ x.printStackTrace(System.out); ++ continue; ++ } ++ try { ++ checkName("616825 "+n,on); ++ } catch (Exception x) { ++ failed = true; ++ System.out.println("6616825 failed for ["+n+"]: "+x); ++ x.printStackTrace(System.out); ++ } ++ } ++ + if (failed) ++ throw new Exception("Some tests for 6616825 failed"); ++ else ++ System.out.println("All tests for 6616825 passed"); ++ } ++ ++ public static void main(String[] args) throws Exception { ++ System.setProperty("jmx.serial.form", "1.0"); ++ ++ /* Check that we really are in jmx.serial.form=1.0 mode. ++ The property is frozen the first time the ObjectName class ++ is referenced so checking that it is set to the correct ++ value now is not enough. */ ++ ObjectStreamClass osc = ObjectStreamClass.lookup(ObjectName.class); ++ if (osc.getFields().length != 6) { ++ throw new Exception("Not using old serial form: fields: " + ++ Arrays.asList(osc.getFields())); ++ // new serial form has no fields, uses writeObject ++ } ++ ++ try { ++ check6211220(); ++ } catch (Exception x) { ++ System.err.println(x.getMessage()); ++ } ++ try { ++ check6616825(); ++ } catch (Exception x) { ++ System.err.println(x.getMessage()); ++ } ++ ++ if (failed) + throw new Exception("Some tests failed"); + else + System.out.println("All tests passed"); ++ + } + +- private static void check(boolean condition) { ++ private static void check(String msg, boolean condition) { + if (!condition) { +- new Throwable("Test failed").printStackTrace(System.out); ++ new Throwable("Test failed "+msg).printStackTrace(System.out); + failed = true; + } + } diff -r 86fbcf148d1f -r 6790b974078e patches/icedtea-6open-6651382.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6open-6651382.patch Thu Oct 09 13:35:37 2008 +0200 @@ -0,0 +1,116 @@ +--- openjdk/jdk/src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java Tue Oct 7 08:43:32 2008 ++++ openjdk/jdk/src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java Tue Oct 7 08:43:32 2008 +@@ -26,7 +26,6 @@ + + // java imports + // +-import java.io.Serializable; + import java.util.Map; + + // jmx imports +@@ -36,9 +35,7 @@ + + // jdmk imports + // +-import com.sun.jmx.snmp.agent.SnmpMib; + +-import java.lang.management.ManagementFactory; + import java.lang.management.MemoryUsage; + import java.lang.management.MemoryType; + import java.lang.management.MemoryPoolMXBean; +@@ -73,8 +70,10 @@ + "jvmMemPoolEntry.getCollectionUsage"; + final static MemoryUsage ZEROS = new MemoryUsage(0,0,0,0); + +- +- ++ final String entryMemoryTag; ++ final String entryPeakMemoryTag; ++ final String entryCollectMemoryTag; ++ + MemoryUsage getMemoryUsage() { + try { + final Map m = JvmContextFactory.getUserData(); +@@ -81,10 +80,10 @@ + + if (m != null) { + final MemoryUsage cached = (MemoryUsage) +- m.get(memoryTag); ++ m.get(entryMemoryTag); + if (cached != null) { +- log.debug("getMemoryUsage", +- "jvmMemPoolEntry.getUsage found in cache."); ++ log.debug("getMemoryUsage",entryMemoryTag+ ++ " found in cache."); + return cached; + } + +@@ -91,7 +90,7 @@ + MemoryUsage u = pool.getUsage(); + if (u == null) u = ZEROS; + +- m.put(memoryTag,u); ++ m.put(entryMemoryTag,u); + return u; + } + // Should never come here. +@@ -113,11 +112,11 @@ + + if (m != null) { + final MemoryUsage cached = (MemoryUsage) +- m.get(peakMemoryTag); ++ m.get(entryPeakMemoryTag); + if (cached != null) { + if (log.isDebugOn()) + log.debug("getPeakMemoryUsage", +- peakMemoryTag + " found in cache."); ++ entryPeakMemoryTag + " found in cache."); + return cached; + } + +@@ -124,7 +123,7 @@ + MemoryUsage u = pool.getPeakUsage(); + if (u == null) u = ZEROS; + +- m.put(peakMemoryTag,u); ++ m.put(entryPeakMemoryTag,u); + return u; + } + // Should never come here. +@@ -146,11 +145,11 @@ + + if (m != null) { + final MemoryUsage cached = (MemoryUsage) +- m.get(collectMemoryTag); ++ m.get(entryCollectMemoryTag); + if (cached != null) { + if (log.isDebugOn()) + log.debug("getCollectMemoryUsage", +- collectMemoryTag + " found in cache."); ++ entryCollectMemoryTag + " found in cache."); + return cached; + } + +@@ -157,7 +156,7 @@ + MemoryUsage u = pool.getCollectionUsage(); + if (u == null) u = ZEROS; + +- m.put(collectMemoryTag,u); ++ m.put(entryCollectMemoryTag,u); + return u; + } + // Should never come here. +@@ -179,9 +178,12 @@ + /** + * Constructor for the "JvmMemPoolEntry" group. + */ +- public JvmMemPoolEntryImpl(MemoryPoolMXBean mp, int index) { ++ public JvmMemPoolEntryImpl(MemoryPoolMXBean mp, final int index) { + this.pool=mp; + this.jvmMemPoolIndex = index; ++ this.entryMemoryTag = memoryTag + "." + index; ++ this.entryPeakMemoryTag = peakMemoryTag + "." + index; ++ this.entryCollectMemoryTag = collectMemoryTag + "." + index; + } + + /** diff -r 86fbcf148d1f -r 6790b974078e patches/icedtea-6open-6756202.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6open-6756202.patch Thu Oct 09 13:35:37 2008 +0200 @@ -0,0 +1,20 @@ +--- openjdk/jdk/make/netbeans/jmx/build.properties Wed Oct 8 09:13:27 2008 ++++ openjdk/jdk/make/netbeans/jmx/build.properties Wed Oct 8 09:13:27 2008 +@@ -42,14 +42,14 @@ + java/lang/management/ \ + javax/management/ + +-project.spec.version = JMX API 2.0 ++project.spec.version = JMX API 1.4 + + jar.jmx.name = jmx.jar + jar.jmx.sealed = true +-jar.jmx.spec.title = JSR 003, 160, 255 - JMX API ++jar.jmx.spec.title = JSR 003, 160 - JMX API + jar.jmx.spec.version = ${project.spec.version} + jar.jmx.spec.vendor = Sun Microsystems, Inc. +-jar.jmx.impl.title = JSR 003, 160, 255 - OpenJDK 7 JMX API ++jar.jmx.impl.title = JSR 003, 160 - OpenJDK 6 JMX API + jar.jmx.impl.vendor = Project OpenJDK + + javadoc.options=-J-Xmx256m From doko at ubuntu.com Sat Oct 18 21:23:26 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:26 +0000 Subject: changeset in /hg/icedtea: 2008-10-06 Matthias Klose changeset 76843a64878d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=76843a64878d description: 2008-10-06 Matthias Klose * IcedTeaPlugin.cc (PLUGIN_MIME_DESC): Remove 1.7 specs. diffstat: 2 files changed, 6 insertions(+), 4 deletions(-) ChangeLog | 4 ++++ IcedTeaPlugin.cc | 6 ++---- diffs (34 lines): diff -r 192176f52fb4 -r 76843a64878d ChangeLog --- a/ChangeLog Mon Oct 06 10:37:31 2008 +0200 +++ b/ChangeLog Mon Oct 06 11:59:41 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-05 Matthias Klose + + * IcedTeaPlugin.cc (PLUGIN_MIME_DESC): Remove 1.7 specs. + 2008-10-05 Matthias Klose * Makefile.am (distclean-local): Remove IcedTeaPlugin object file. diff -r 192176f52fb4 -r 76843a64878d IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Oct 06 10:37:31 2008 +0200 +++ b/IcedTeaPlugin.cc Mon Oct 06 11:59:41 2008 +0200 @@ -215,8 +215,7 @@ private: "application/x-java-applet;version=1.4.2:class,jar:IcedTea;" \ "application/x-java-applet;version=1.5:class,jar:IcedTea;" \ "application/x-java-applet;version=1.6:class,jar:IcedTea;" \ - "application/x-java-applet;version=1.7:class,jar:IcedTea;" \ - "application/x-java-applet;jpi-version=1.7.0_00:class,jar:IcedTea;" \ + "application/x-java-applet;jpi-version=1.6.0_00:class,jar:IcedTea;" \ "application/x-java-bean:class,jar:IcedTea;" \ "application/x-java-bean;version=1.1:class,jar:IcedTea;" \ "application/x-java-bean;version=1.1.1:class,jar:IcedTea;" \ @@ -232,8 +231,7 @@ private: "application/x-java-bean;version=1.4.2:class,jar:IcedTea;" \ "application/x-java-bean;version=1.5:class,jar:IcedTea;" \ "application/x-java-bean;version=1.6:class,jar:IcedTea;" \ - "application/x-java-bean;version=1.7:class,jar:IcedTea;" \ - "application/x-java-bean;jpi-version=1.7.0_00:class,jar:IcedTea;" + "application/x-java-bean;jpi-version=1.6.0_00:class,jar:IcedTea;" #define FAILURE_MESSAGE "IcedTeaPluginFactory error: Failed to run %s." \ " For more detail rerun \"firefox -g\" in a terminal window." From doko at ubuntu.com Sat Oct 18 21:23:26 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:26 +0000 Subject: changeset in /hg/icedtea: 2008-10-06 Matthias Klose changeset d6c8840e4167 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d6c8840e4167 description: 2008-10-06 Matthias Klose * generated/sun/misc/Version.java: Regenerate for 6b12. * generated/sun/tools/jconsole/Version.java: Likewise. diffstat: 3 files changed, 8 insertions(+), 3 deletions(-) ChangeLog | 5 +++++ generated/sun/misc/Version.java | 4 ++-- generated/sun/tools/jconsole/Version.java | 2 +- diffs (40 lines): diff -r 76843a64878d -r d6c8840e4167 ChangeLog --- a/ChangeLog Mon Oct 06 11:59:41 2008 +0200 +++ b/ChangeLog Mon Oct 06 12:02:04 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-06 Matthias Klose + + * generated/sun/misc/Version.java: Regenerate for 6b12. + * generated/sun/tools/jconsole/Version.java: Likewise. + 2008-10-06 Matthias Klose * IcedTeaPlugin.cc (PLUGIN_MIME_DESC): Remove 1.7 specs. diff -r 76843a64878d -r d6c8840e4167 generated/sun/misc/Version.java --- a/generated/sun/misc/Version.java Mon Oct 06 11:59:41 2008 +0200 +++ b/generated/sun/misc/Version.java Mon Oct 06 12:02:04 2008 +0200 @@ -36,10 +36,10 @@ public class Version { "1.6.0_0"; private static final String java_runtime_name = - "OpenJDK Runtime Environment"; + "OpenJDK Runtime Environment"; private static final String java_runtime_version = - "1.6.0_0-b11"; + "1.6.0_0-b12"; static { init(); diff -r 76843a64878d -r d6c8840e4167 generated/sun/tools/jconsole/Version.java --- a/generated/sun/tools/jconsole/Version.java Mon Oct 06 11:59:41 2008 +0200 +++ b/generated/sun/tools/jconsole/Version.java Mon Oct 06 12:02:04 2008 +0200 @@ -29,7 +29,7 @@ import java.io.PrintStream; public class Version { private static final String jconsole_version = - "1.6.0_0-b11"; + "1.6.0_0-b12"; public static void print(PrintStream ps) { printFullVersion(ps); From doko at ubuntu.com Sat Oct 18 21:23:26 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:26 +0000 Subject: changeset in /hg/icedtea: 2008-10-07 Matthias Klose changeset e4575e17609d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e4575e17609d description: 2008-10-07 Matthias Klose * Makefile.am: Don't rely on versioned cacao source directory. diffstat: 2 files changed, 7 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 4 +++- diffs (32 lines): diff -r d6c8840e4167 -r e4575e17609d ChangeLog --- a/ChangeLog Mon Oct 06 12:02:04 2008 +0200 +++ b/ChangeLog Tue Oct 07 14:11:49 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-06 Matthias Klose + + * Makefile.am: Don't rely on versioned cacao source directory. + 2008-10-06 Matthias Klose * generated/sun/misc/Version.java: Regenerate for 6b12. diff -r d6c8840e4167 -r e4575e17609d Makefile.am --- a/Makefile.am Mon Oct 06 12:02:04 2008 +0200 +++ b/Makefile.am Tue Oct 07 14:11:49 2008 +0200 @@ -533,6 +533,8 @@ if !USE_SYSTEM_CACAO then \ mkdir cacao ; \ $(TAR) xf $(CACAO_SRC_ZIP) -C cacao ; \ + dir=$$(basename cacao/cacao-*) ; \ + ln -s $$dir cacao/cacao ; \ fi endif endif @@ -1316,7 +1318,7 @@ stamps/cacao.stamp: stamps/extract.stamp stamps/cacao.stamp: stamps/extract.stamp stamps/rt-class-files.stamp if WITH_CACAO if !USE_SYSTEM_CACAO - cd cacao/cacao-$(CACAO_VERSION) && \ + cd cacao/cacao && \ ./configure \ --prefix=$(abs_top_builddir)/cacao/install \ --with-java-runtime-library=openjdk \ From iivan at redhat.com Sat Oct 18 21:23:28 2008 From: iivan at redhat.com (Ioana Ivan) Date: Sun, 19 Oct 2008 04:23:28 +0000 Subject: changeset in /hg/icedtea: 2008-10-10 Ioana Ivan Message-ID: changeset e7b6e8e732e4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e7b6e8e732e4 description: 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getLine): LineUnavailablException is no longer thrown if the mixer is not open (getTargetLines) : returns a Line[] array instead of a TargetDataLine[] array * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine (open(AudioFormat format, int bufferSize)): throws LineUnavailableException if the mixer is not open * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip (open()): throws LineUnavailableException if the mixer is not open * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort (PulseAudioPort): calls open() diffstat: 6 files changed, 32 insertions(+), 10 deletions(-) ChangeLog | 17 ++++++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 5 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 5 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 6 --- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 8 ++-- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 1 diffs (120 lines): diff -r 8b85ec866923 -r e7b6e8e732e4 ChangeLog --- a/ChangeLog Fri Oct 10 16:03:12 2008 -0400 +++ b/ChangeLog Fri Oct 10 17:12:18 2008 -0400 @@ -1,3 +1,20 @@ 2008-10-10 Ioana Ivan +2008-10-10 Ioana Ivan + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java + (getLine): LineUnavailablException is no longer thrown if the mixer is + not open + (getTargetLines) : returns a Line[] array instead of a + TargetDataLine[] array + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine + (open(AudioFormat format, int bufferSize)): throws + LineUnavailableException if the mixer is not open + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip + (open()): throws LineUnavailableException if the mixer is not open + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort + (PulseAudioPort): calls open() + 2008-10-10 Ioana Ivan Omair Majid diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Fri Oct 10 17:12:18 2008 -0400 @@ -398,6 +398,11 @@ public class PulseAudioClip extends Puls public void open(AudioFormat format, byte[] data, int offset, int bufferSize) throws LineUnavailableException { + if(!PulseAudioMixer.getInstance().isOpen()) { + throw new LineUnavailableException("The mixer needs to be opened before opening a line"); + } + + /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Fri Oct 10 17:12:18 2008 -0400 @@ -84,6 +84,10 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } + if(!PulseAudioMixer.getInstance().isOpen()) { + throw new LineUnavailableException("The mixer needs to be opened before opening a line"); + } + createStream(format); addStreamListeners(); @@ -277,7 +281,6 @@ public abstract class PulseAudioDataLine public void open() throws LineUnavailableException { assert (defaultFormat != null); - open(defaultFormat, DEFAULT_BUFFER_SIZE); } diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Fri Oct 10 17:12:18 2008 -0400 @@ -271,10 +271,6 @@ public class PulseAudioMixer implements throw new IllegalArgumentException("Line unsupported: " + info); } - if (!isOpen) { - throw new LineUnavailableException("The mixer isnt open"); - } - AudioFormat[] formats = null; AudioFormat defaultFormat = null; @@ -410,7 +406,7 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - return (Line[]) targetLines.toArray(new TargetDataLine[0]); + return (Line[]) targetLines.toArray(new Line[0]); } @Override diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Oct 10 17:12:18 2008 -0400 @@ -76,8 +76,8 @@ public abstract class PulseAudioPort ext controls.add(volumeControl); muteControl = new PulseAudioMuteControl(this, volumeControl); controls.add(muteControl); - isOpen = true; - + //isOpen = true; + open(); /* * unlike other lines, Ports must either be open or close * @@ -141,7 +141,9 @@ public abstract class PulseAudioPort ext @Override public void open() { - + if(isOpen) { + return; + } native_setVolume(volume); isOpen = true; fireLineEvent(new LineEvent(this, LineEvent.Type.OPEN, diff -r 8b85ec866923 -r e7b6e8e732e4 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 10 16:03:12 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Oct 10 17:12:18 2008 -0400 @@ -51,7 +51,6 @@ public class PulseAudioTargetPort extend public PulseAudioTargetPort(String name, EventLoop eventLoop) { super(name, eventLoop); - } public void open() { From doko at ubuntu.com Sat Oct 18 21:23:28 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:28 +0000 Subject: changeset in /hg/icedtea: 2008-10-11 Matthias Klose changeset 72f37a7f8077 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=72f37a7f8077 description: 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Remove jni-common.o. diffstat: 2 files changed, 2 insertions(+), 1 deletion(-) ChangeLog | 2 +- Makefile.am | 1 + diffs (23 lines): diff -r a0124c4addcd -r 72f37a7f8077 ChangeLog --- a/ChangeLog Sat Oct 11 16:26:33 2008 +0200 +++ b/ChangeLog Sat Oct 11 17:28:17 2008 +0200 @@ -1,7 +1,7 @@ 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring - without pulseaudio. + without pulseaudio, remove jni-common.o. 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java diff -r a0124c4addcd -r 72f37a7f8077 Makefile.am --- a/Makefile.am Sat Oct 11 16:26:33 2008 +0200 +++ b/Makefile.am Sat Oct 11 17:28:17 2008 +0200 @@ -1499,6 +1499,7 @@ if ENABLE_PULSE_JAVA rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so + rm -f jni-common.o endif # end of pulse-java From gbenson at redhat.com Sat Oct 18 21:23:27 2008 From: gbenson at redhat.com (Gary Benson) Date: Sun, 19 Oct 2008 04:23:27 +0000 Subject: changeset in /hg/icedtea: 2008-10-09 Gary Benson changeset fa94fa7ac782 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=fa94fa7ac782 description: 2008-10-09 Gary Benson Andrew Haley * patches/icedtea-hotspot-citypeflow.patch: Reinstated. * Makefile.am (ZERO_PATCHES): Apply the above for HotSpot 7 builds. * ports/hotspot/build/linux/makefiles/shark.make: Remove workaround for the above. diffstat: 4 files changed, 22 insertions(+), 8 deletions(-) ChangeLog | 9 +++++++++ Makefile.am | 3 ++- patches/icedtea-hotspot-citypeflow.patch | 11 +++++++++++ ports/hotspot/build/linux/makefiles/shark.make | 7 ------- diffs (58 lines): diff -r 6790b974078e -r fa94fa7ac782 ChangeLog --- a/ChangeLog Thu Oct 09 13:35:37 2008 +0200 +++ b/ChangeLog Thu Oct 09 11:25:22 2008 -0400 @@ -1,3 +1,12 @@ 2008-10-09 Matthias Klose + Andrew Haley + + * patches/icedtea-hotspot-citypeflow.patch: Reinstated. + * Makefile.am (ZERO_PATCHES): Apply the above for HotSpot 7 builds. + + * ports/hotspot/build/linux/makefiles/shark.make: + Remove workaround for the above. + 2008-10-09 Matthias Klose * patches/icedtea-6open-6616825.patch: New. diff -r 6790b974078e -r fa94fa7ac782 Makefile.am --- a/Makefile.am Thu Oct 09 13:35:37 2008 +0200 +++ b/Makefile.am Thu Oct 09 11:25:22 2008 -0400 @@ -421,7 +421,8 @@ ZERO_PATCHES = \ patches/icedtea-signed-types.patch \ patches/icedtea-test-atomic-operations.patch \ patches/icedtea-zero.patch \ - patches/icedtea-ia64-bugfix.patch + patches/icedtea-ia64-bugfix.patch \ + patches/icedtea-hotspot-citypeflow.patch # Patches needed when not using the newer OpenJDK 7 HotSpot for zero. NON_ZERO_PATCHES = \ diff -r 6790b974078e -r fa94fa7ac782 patches/icedtea-hotspot-citypeflow.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-hotspot-citypeflow.patch Thu Oct 09 11:25:22 2008 -0400 @@ -0,0 +1,11 @@ +--- openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp~ 2008-07-10 22:04:30.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp 2008-07-25 14:32:03.544802121 +0200 +@@ -130,7 +130,7 @@ + + // Used as a combined index for locals and temps + enum Cell { +- Cell_0 ++ Cell_0, Cell_max = UINT_MAX + }; + + // A StateVector summarizes the type information at some diff -r 6790b974078e -r fa94fa7ac782 ports/hotspot/build/linux/makefiles/shark.make --- a/ports/hotspot/build/linux/makefiles/shark.make Thu Oct 09 13:35:37 2008 +0200 +++ b/ports/hotspot/build/linux/makefiles/shark.make Thu Oct 09 11:25:22 2008 -0400 @@ -30,10 +30,3 @@ VM_SUBDIR = server VM_SUBDIR = server CFLAGS += -DSHARK - -# Something in this file fails with GCC at higher optimization levels. -# The part of ciTypeFlow::StateVector::meet_exception() that fills in -# local variables stops part way through leaving the rest set to T_TOP -# (ie uninitialized). The VM then aborts with a ShouldNotReachHere() -# in SharkPHIState::initialize(). Observed with 4.3.2. -OPT_CFLAGS/ciTypeFlow.o = -O1 From doko at ubuntu.com Sat Oct 18 21:23:29 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:29 +0000 Subject: changeset in /hg/icedtea: 2008-10-11 Matthias Klose changeset 64f23360289f in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=64f23360289f description: 2008-10-11 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Remove -fpic flag, add -fPIC to build jni-common.c. (gcjwebplugin.so): Use -fPIC. diffstat: 2 files changed, 10 insertions(+), 7 deletions(-) ChangeLog | 3 +++ Makefile.am | 14 +++++++------- diffs (44 lines): diff -r 72f37a7f8077 -r 64f23360289f ChangeLog --- a/ChangeLog Sat Oct 11 17:28:17 2008 +0200 +++ b/ChangeLog Sat Oct 11 18:34:47 2008 +0200 @@ -2,6 +2,9 @@ 2008-10-11 Matthias Klose * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java diff -r 72f37a7f8077 -r 64f23360289f Makefile.am --- a/Makefile.am Sat Oct 11 17:28:17 2008 +0200 +++ b/Makefile.am Sat Oct 11 18:34:47 2008 +0200 @@ -1408,7 +1408,7 @@ gcjwebplugin.so: gcjwebplugin.cc $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ $(GTK_CFLAGS) $(GTK_LIBS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ - -fpic -shared -o $@ $< + -fPIC -shared -o $@ $< clean-gcjwebplugin: rm -f gcjwebplugin.so @@ -1421,12 +1421,12 @@ endif stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA - $(CC) $(CFLAGS) -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) endif From doko at ubuntu.com Sat Oct 18 21:23:28 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:28 +0000 Subject: changeset in /hg/icedtea: 2008-10-11 Matthias Klose changeset a0124c4addcd in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=a0124c4addcd description: 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring without pulseaudio. diffstat: 2 files changed, 7 insertions(+) ChangeLog | 5 +++++ Makefile.am | 2 ++ diffs (29 lines): diff -r e7b6e8e732e4 -r a0124c4addcd ChangeLog --- a/ChangeLog Fri Oct 10 17:12:18 2008 -0400 +++ b/ChangeLog Sat Oct 11 16:26:33 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-10 Ioana Ivan +2008-10-11 Matthias Klose + + * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring + without pulseaudio. + 2008-10-10 Ioana Ivan * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getLine): LineUnavailablException is no longer thrown if the mixer is diff -r e7b6e8e732e4 -r a0124c4addcd Makefile.am --- a/Makefile.am Fri Oct 10 17:12:18 2008 -0400 +++ b/Makefile.am Sat Oct 11 16:26:33 2008 +0200 @@ -1493,11 +1493,13 @@ endif clean-pulse-java: +if ENABLE_PULSE_JAVA rm -rf $(PULSE_JAVA_CLASS_DIR)/* rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so +endif # end of pulse-java From omajid at redhat.com Sat Oct 18 21:23:28 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:28 +0000 Subject: changeset in /hg/icedtea: 2008-10-10 Ioana Ivan Message-ID: changeset 8b85ec866923 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8b85ec866923 description: 2008-10-10 Ioana Ivan Omair Majid * INSTALL: Updated to reflect requirements for pulse-java. * Makefile.am (distclean-local): Clean up pulse-java. (EXTRA_DIST): Add pulseaudio folder. (stamps/icedtea.stamp): Added dependency on stamps/pulse-java.stamp. Also copy generated .jar and .so files to the jre images. (stamps/icedtea-debug.stamp): Likewise. (stamps/pulse-java.stamp): New target. (stamps/pulse-java-jar.stamp): Likewise. (stamps/pulse-java-class.stamp): Likewise. (stamps/pulse-java-headers.stamp): Likewise. (clean-pulse-java): Likewise. * README: Added note for PulseAudio based mixer. * acinclude.m4 (FIND_PULSEAUDIO): Find the pulseaudio binary. * configure.ac: Check for pulseaudio server and header files being installed. * patches/icedtea-pulse-soundproperties.patch: Dont use pulse-java as the default Mixer. * pulseaudio/: Copied over sources from pulseaudio repository. diffstat: 52 files changed, 11603 insertions(+), 4 deletions(-) ChangeLog | 24 INSTALL | 4 Makefile.am | 134 README | 8 acinclude.m4 | 9 configure.ac | 25 patches/icedtea-pulse-soundproperties.patch | 16 pulseaudio/AUTHORS | 5 pulseaudio/COPYING | 340 ++ pulseaudio/README | 28 pulseaudio/src/java/META-INF/services/javax.sound.sampled.spi.MixerProvider | 3 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextEvent.java | 56 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextListener.java | 44 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 280 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java | 147 + pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 568 ++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 471 +++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java | 118 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 881 ++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerInfo.java | 62 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerProvider.java | 63 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMuteControl.java | 78 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPlaybackLine.java | 54 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 155 + pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 340 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 94 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 373 ++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 94 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java | 90 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java | 777 +++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamBufferAttributes.java | 84 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamSampleSpecification.java | 70 pulseaudio/src/native/jni-common.c | 236 + pulseaudio/src/native/jni-common.h | 90 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_EventLoop.c | 362 ++ pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Operation.c | 83 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c | 102 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c | 67 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c | 107 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Stream.c | 1010 +++++++ pulseaudio/testsounds/README | 4 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/OtherSoundProvidersAvailableTest.java | 114 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java | 623 ++++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioEventLoopOverhead.java | 100 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerProviderTest.java | 118 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerRawTest.java | 120 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 434 +++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineRawTest.java | 305 ++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java | 1345 ++++++++++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java | 122 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java | 648 ++++ pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java | 122 diffs (truncated from 11924 to 500 lines): diff -r fa94fa7ac782 -r 8b85ec866923 ChangeLog --- a/ChangeLog Thu Oct 09 11:25:22 2008 -0400 +++ b/ChangeLog Fri Oct 10 16:03:12 2008 -0400 @@ -1,3 +1,27 @@ 2008-10-09 Gary Benson + Omair Majid + + * INSTALL: Updated to reflect requirements for pulse-java. + * Makefile.am + (distclean-local): Clean up pulse-java. + (EXTRA_DIST): Add pulseaudio folder. + (stamps/icedtea.stamp): Added dependency on stamps/pulse-java.stamp. Also + copy generated .jar and .so files to the jre images. + (stamps/icedtea-debug.stamp): Likewise. + (stamps/pulse-java.stamp): New target. + (stamps/pulse-java-jar.stamp): Likewise. + (stamps/pulse-java-class.stamp): Likewise. + (stamps/pulse-java-headers.stamp): Likewise. + (clean-pulse-java): Likewise. + * README: Added note for PulseAudio based mixer. + * acinclude.m4 + (FIND_PULSEAUDIO): Find the pulseaudio binary. + * configure.ac: Check for pulseaudio server and header files being + installed. + * patches/icedtea-pulse-soundproperties.patch: Dont use pulse-java as the + default Mixer. + * pulseaudio/: Copied over sources from pulseaudio repository. + 2008-10-09 Gary Benson Andrew Haley diff -r fa94fa7ac782 -r 8b85ec866923 INSTALL --- a/INSTALL Thu Oct 09 11:25:22 2008 -0400 +++ b/INSTALL Fri Oct 10 16:03:12 2008 -0400 @@ -31,6 +31,10 @@ zlib-devel zlib-devel rhino netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm + +For builing the PulseAudio based mixer, you will need +pulseaudio-libs-devel >= 0.9.11 +pulseaudio >= 0.9.11 For building the zero-assembler port (see below), you will need libffi. diff -r fa94fa7ac782 -r 8b85ec866923 Makefile.am --- a/Makefile.am Thu Oct 09 11:25:22 2008 -0400 +++ b/Makefile.am Fri Oct 10 16:03:12 2008 -0400 @@ -28,6 +28,19 @@ endif endif endif +if ENABLE_PULSE_JAVA +# include the makefile in pulseaudio subdir +PULSE_JAVA_DIR = pulseaudio +PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native +PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java +PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_DIR)/bin +else +PULSE_JAVA_DIR = +PULSE_JAVA_NATIVE_SRCDIR = +PULSE_JAVA_JAVA_SRCDIR = +PULSE_JAVA_CLASS_DIR = +endif + if WITH_VISUALVM VISUALVM_PATCH = patches/icedtea-visualvm.patch else @@ -39,7 +52,7 @@ endif all-local: icedtea-against-icedtea -distclean-local: clean-copy clean-jtreg clean-jtreg-reports +distclean-local: clean-copy clean-jtreg clean-jtreg-reports clean-pulse-java rm -rf stamps rm -f rt-source-files.txt \ hotspot-tools-source-files.txt \ @@ -83,7 +96,7 @@ EXTRA_DIST = rt generated $(ICEDTEA_PATC overlays extra jconsole.desktop policytool.desktop \ test/jtreg patches/icedtea-plugin.patch \ patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING patches/icedtea-visualvm.patch + HACKING patches/icedtea-visualvm.patch pulseaudio # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. @@ -520,6 +533,11 @@ ICEDTEA_PATCHES += \ patches/icedtea-cacao.patch endif +if ENABLE_PULSE_JAVA +ICEDTEA_PATCHES += \ + patches/icedtea-pulse-soundproperties.patch +endif + ICEDTEA_PATCHES += \ $(DISTRIBUTION_PATCHES) @@ -923,7 +941,8 @@ stamps/icedtea.stamp: stamps/bootstrap-d stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ - extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp + extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp \ + stamps/pulse-java.stamp $(MAKE) \ $(ICEDTEA_ENV) \ -C openjdk/control/make/ \ @@ -940,6 +959,16 @@ if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) endif +endif +if ENABLE_PULSE_JAVA + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext endif if WITH_VISUALVM mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ @@ -975,7 +1004,8 @@ stamps/icedtea-debug.stamp: stamps/boots stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \ $(GCJWEBPLUGIN_TARGET) $(ICEDTEAPLUGIN_TARGET) \ - extra-lib/about.jar stamps/cacao.stamp + extra-lib/about.jar stamps/cacao.stamp \ + stamps/pulse-java.stamp $(MAKE) \ $(ICEDTEA_ENV) \ -C openjdk/control/make \ @@ -992,6 +1022,16 @@ if ENABLE_PLUGIN cp -pPRf gcjwebplugin.so \ $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) endif +endif +if ENABLE_PULSE_JAVA + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf libpulse-java.so \ + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ext + cp -pPRf pulse-java.jar \ + $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/ext endif if WITH_VISUALVM mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/lib/visualvm/etc ; \ @@ -1374,6 +1414,92 @@ clean-gcjwebplugin: rm -f gcjwebplugin.so endif endif + + +# PulseAudio based mixer +# (pulse-java) + +stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp +if ENABLE_PULSE_JAVA + $(CC) $(CFLAGS) -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fpic -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o + mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) +endif + mkdir -p stamps + touch stamps/pulse-java.stamp + +stamps/pulse-java-jar.stamp: stamps/pulse-java-class.stamp +if ENABLE_PULSE_JAVA + mkdir -p $(PULSE_JAVA_CLASS_DIR); + if ! test -d $(ICEDTEA_BOOT_DIR) ; \ + then \ + $(JAR) cf pulse-java.jar -C $(PULSE_JAVA_CLASS_DIR) .; \ + else \ + $(ICEDTEA_BOOT_DIR)/bin/jar cf pulse-java.jar -C $(PULSE_JAVA_CLASS_DIR) .; \ + fi +endif + mkdir -p stamps + touch stamps/pulse-java-jar.stamp + +stamps/pulse-java-class.stamp: +if ENABLE_PULSE_JAVA + mkdir -p $(PULSE_JAVA_CLASS_DIR) + if ! test -d $(ICEDTEA_BOOT_DIR) ; \ + then \ + (cd $(PULSE_JAVA_JAVA_SRCDIR); \ + $(JAVAC) -d ../../../$(PULSE_JAVA_CLASS_DIR) \ + -bootclasspath \ + '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ + else \ + (cd $(PULSE_JAVA_JAVA_SRCDIR); \ + $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ + -bootclasspath \ + '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ + fi + cp -r $(PULSE_JAVA_JAVA_SRCDIR)/META-INF $(PULSE_JAVA_CLASS_DIR) +endif + mkdir -p stamps + touch stamps/pulse-java-class.stamp + + +stamps/pulse-java-headers.stamp: stamps/pulse-java-class.stamp +if ENABLE_PULSE_JAVA + if ! test -d $(ICEDTEA_BOOT_DIR) ; \ + then \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \ + $(JAVAH) -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \ + else \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \ + $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_SRCDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \ + fi +endif + mkdir -p stamps + touch stamps/pulse-java-headers.stamp + + +clean-pulse-java: + rm -rf $(PULSE_JAVA_CLASS_DIR)/* + rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + rm -f stamps/pulse-java*.stamp + rm -f pulse-java.jar + rm -f libpulse-java.so + +# end of pulse-java # jtreg diff -r fa94fa7ac782 -r 8b85ec866923 README --- a/README Thu Oct 09 11:25:22 2008 -0400 +++ b/README Fri Oct 10 16:03:12 2008 -0400 @@ -159,3 +159,11 @@ and --with-netbeans-profiler-src-zip whi and --with-netbeans-profiler-src-zip which can be used to prevent re-downloading of the source zips. --with-netbeans-home can be used to specify where the Netbeans tools are installed (default /usr/share/netbeans). + + + +PulseAudio Mixer +================ + +Passing --enable-pulse-java to configure will build the PulseAudio Mixer for +java. This allows java programs to use PulseAudio as the sound backend. diff -r fa94fa7ac782 -r 8b85ec866923 acinclude.m4 --- a/acinclude.m4 Thu Oct 09 11:25:22 2008 -0400 +++ b/acinclude.m4 Fri Oct 10 16:03:12 2008 -0400 @@ -665,6 +665,15 @@ AC_DEFUN([FIND_RHINO_JAR], AC_SUBST(RHINO_JAR) ]) +AC_DEFUN([FIND_PULSEAUDIO], +[ + AC_PATH_PROG(PULSEAUDIO_BIN, "pulseaudio") + if test -z "${PULSEAUDIO_BIN}"; then + AC_MSG_ERROR("pulseaudio was not found.") + fi + AC_SUBST(PULSEAUDIO_BIN) +]) + AC_DEFUN([ENABLE_OPTIMIZATIONS], [ AC_MSG_CHECKING(whether to disable optimizations) diff -r fa94fa7ac782 -r 8b85ec866923 configure.ac --- a/configure.ac Thu Oct 09 11:25:22 2008 -0400 +++ b/configure.ac Fri Oct 10 16:03:12 2008 -0400 @@ -125,6 +125,12 @@ AC_ARG_ENABLE([liveconnect], [Enable experimental LiveConnect plugin])], [enable_liveconnect="yes"], [enable_liveconnect="no"]) AM_CONDITIONAL(ENABLE_LIVECONNECT, test "x${enable_liveconnect}" = "xyes") + +AC_ARG_ENABLE([pulse-java], + [AS_HELP_STRING([--enable-pulse-java], + [Enable pulse-java - an audio mixer spi that uses PulseAudio])], + [enable_pulse_java="yes"], [enable_pulse_java="no"]) +AM_CONDITIONAL(ENABLE_PULSE_JAVA, test "x${enable_pulse_java}" = "xyes") AC_ARG_ENABLE([docs], [AS_HELP_STRING([--disable-docs], @@ -247,6 +253,11 @@ ENABLE_ZERO_BUILD ENABLE_ZERO_BUILD SET_CORE_OR_SHARK_BUILD +if test "x${enable_pulse_java}" = "xyes" +then + FIND_PULSEAUDIO +fi + dnl pkgconfig cannot be used to finid these headers and libraries. AC_CHECK_HEADERS([cups/cups.h cups/ppd.h],[] ,[AC_MSG_ERROR("CUPS headers were not found - @@ -354,6 +365,20 @@ AC_SUBST(ALSA_CFLAGS) AC_SUBST(ALSA_CFLAGS) AC_SUBST(ALSA_LIBS) +if test "x${enable_pulse_java}" = "xyes" +then + dnl Check for pulseaudio libraries. + PKG_CHECK_MODULES(LIBPULSE,[libpulse >= 0.9.11],[LIBPULSE_FOUND=yes] + ,[LIBPULSE_FOUND=no]) + if test "x${LIBPULSE_FOUND}" = xno + then + AC_MSG_ERROR([Could not find pulseaudio>=0.9.11 libraries - \ + Try installing pulseaudio-libs-devel>=0.9.11.]) + fi + AC_SUBST(LIBPULSE_CFLAGS) + AC_SUBST(LIBPULSE_LIBS) +fi + dnl Check for plugin support headers and libraries. dnl FIXME: use unstable if test "x${enable_liveconnect}" = "xyes" diff -r fa94fa7ac782 -r 8b85ec866923 patches/icedtea-pulse-soundproperties.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-pulse-soundproperties.patch Fri Oct 10 16:03:12 2008 -0400 @@ -0,0 +1,16 @@ +--- openjdk/jdk/src/share/lib/sound.properties 2008-08-28 04:15:18.000000000 -0400 ++++ openjdk/jdk/src/share/lib/sound.properties 2008-10-03 16:59:21.000000000 -0400 +@@ -37,3 +37,13 @@ + # Specify the default Receiver by provider and name: + # javax.sound.midi.Receiver=com.sun.media.sound.MidiProvider#SunMIDI1 + # ++ ++# javax.sound.sampled.Clip=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++# javax.sound.sampled.Port=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++# javax.sound.sampled.SourceDataLine=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++# javax.sound.sampled.TargetDataLine=org.classpath.icedtea.pulseaudio.PulseAudioMixerProvider ++ ++javax.sound.sampled.Clip=com.sun.media.sound.DirectAudioDeviceProvider ++javax.sound.sampled.Port=com.sun.media.sound.PortMixerProvider ++javax.sound.sampled.SourceDataLine=com.sun.media.sound.DirectAudioDeviceProvider ++javax.sound.sampled.TargetDataLine=com.sun.media.sound.DirectAudioDeviceProvider diff -r fa94fa7ac782 -r 8b85ec866923 pulseaudio/AUTHORS --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pulseaudio/AUTHORS Fri Oct 10 16:03:12 2008 -0400 @@ -0,0 +1,5 @@ +Authors + +Ioana Iivan (iivan at redhat.com) + +Omair Majid (omajid at redhat.com) \ No newline at end of file diff -r fa94fa7ac782 -r 8b85ec866923 pulseaudio/COPYING --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pulseaudio/COPYING Fri Oct 10 16:03:12 2008 -0400 @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable From doko at ubuntu.com Sat Oct 18 21:23:29 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:29 +0000 Subject: changeset in /hg/icedtea: 2008-10-12 Matthias Klose changeset df8d2a8c69c8 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=df8d2a8c69c8 description: 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include to build jni-common.c. diffstat: 2 files changed, 6 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ Makefile.am | 2 +- diffs (24 lines): diff -r 64f23360289f -r df8d2a8c69c8 ChangeLog --- a/ChangeLog Sat Oct 11 18:34:47 2008 +0200 +++ b/ChangeLog Sun Oct 12 15:45:59 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-11 Matthias Klose + + * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include + to build jni-common.c. + 2008-10-11 Matthias Klose * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring diff -r 64f23360289f -r df8d2a8c69c8 Makefile.am --- a/Makefile.am Sat Oct 11 18:34:47 2008 +0200 +++ b/Makefile.am Sun Oct 12 15:45:59 2008 +0200 @@ -1421,7 +1421,7 @@ endif stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA - $(CC) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c From doko at ubuntu.com Sat Oct 18 21:23:29 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:29 +0000 Subject: changeset in /hg/icedtea: 2008-10-12 Matthias Klose changeset 9032c6fda5c2 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=9032c6fda5c2 description: 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include to build the source files. diffstat: 2 files changed, 6 insertions(+), 6 deletions(-) ChangeLog | 2 +- Makefile.am | 10 +++++----- diffs (32 lines): diff -r df8d2a8c69c8 -r 9032c6fda5c2 ChangeLog --- a/ChangeLog Sun Oct 12 15:45:59 2008 +0200 +++ b/ChangeLog Sun Oct 12 16:31:50 2008 +0200 @@ -1,7 +1,7 @@ 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include - to build jni-common.c. + to build the source files. 2008-10-11 Matthias Klose diff -r df8d2a8c69c8 -r 9032c6fda5c2 Makefile.am --- a/Makefile.am Sun Oct 12 15:45:59 2008 +0200 +++ b/Makefile.am Sun Oct 12 16:31:50 2008 +0200 @@ -1422,11 +1422,11 @@ stamps/pulse-java.stamp: stamps/pulse-ja stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) endif From omajid at redhat.com Sat Oct 18 21:23:30 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:30 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Omair Majid changeset 81e9c55169c4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=81e9c55169c4 description: 2008-10-14 Omair Majid * Makefile.am (stamps/pulse-java.stamp): Added -I$(ICEDTEA_BOOT_DIR)/include/linux. diffstat: 2 files changed, 12 insertions(+), 6 deletions(-) ChangeLog | 6 ++++++ Makefile.am | 12 ++++++------ diffs (35 lines): diff -r a28576af0d10 -r 81e9c55169c4 ChangeLog --- a/ChangeLog Tue Oct 14 13:26:35 2008 -0400 +++ b/ChangeLog Tue Oct 14 13:29:55 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-14 Omair Majid + + * Makefile.am (stamps/pulse-java.stamp): Added + -I$(ICEDTEA_BOOT_DIR)/include/linux. + + 2008-10-14 Omair Majid * .hgignore: Added generated files to ignore list. diff -r a28576af0d10 -r 81e9c55169c4 Makefile.am --- a/Makefile.am Tue Oct 14 13:26:35 2008 -0400 +++ b/Makefile.am Tue Oct 14 13:29:55 2008 -0400 @@ -1421,12 +1421,12 @@ endif stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp if ENABLE_PULSE_JAVA - $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c - $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c + $(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c + $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) endif From omajid at redhat.com Sat Oct 18 21:23:29 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:29 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Omair Majid changeset a28576af0d10 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=a28576af0d10 description: 2008-10-14 Omair Majid * .hgignore: Added generated files to ignore list. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java (EventLoop): Initialize eventLoop object on construction. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (PulseAudioClip): Removed the parameter eventLoop. (getMicrosecondLength): Return time in microseconds. (getMicrosecondPosition): Likewise. (open): Dont throw an exception if Mixer is not open. Let super handle it. (setFramePosition): Check frame position for being positive. (setLoopPoints): Check that the starting frame is valid. (setMicrosecondPosition): Deal with negative value and values over the maximum. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (open): Open the mixer if it isnt open. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java (getLine): Dont pass eventLoop as a paramter. (close): Close all open lines on exit. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java (PulseAudioPort): Modified to not take an EventLoop paramter. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (PulseAudioSourceDataLine): Likewise. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java (PulseAudioSourcePort): Likewise. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (PulseAudioTargetDataLine): Likewise. * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java (PulseAudioTargetPort): Likewise. * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java (testMixerKnowsAboutOpenLines): Work even if mixer has some lines initially open. diffstat: 12 files changed, 135 insertions(+), 74 deletions(-) .hgignore | 4 ChangeLog | 36 ++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 33 +++--- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 11 +- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 55 ++++++---- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 12 +- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 5 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 28 ++--- pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 5 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 8 - pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java | 10 - diffs (495 lines): diff -r 9032c6fda5c2 -r a28576af0d10 .hgignore --- a/.hgignore Sun Oct 12 16:31:50 2008 +0200 +++ b/.hgignore Tue Oct 14 13:26:35 2008 -0400 @@ -441,3 +441,7 @@ rt/java/io/ rt/java/io/ rt/sun/awt generated/sun/awt/X11/generator/sizer.32.orig +pulseaudio/bin +pulseaudio/.*\.o +pulseaudio/src/native/org_.*.h +pulseaudio/.*jar diff -r 9032c6fda5c2 -r a28576af0d10 ChangeLog --- a/ChangeLog Sun Oct 12 16:31:50 2008 +0200 +++ b/ChangeLog Tue Oct 14 13:26:35 2008 -0400 @@ -1,3 +1,39 @@ 2008-10-12 Matthias Klose + + * .hgignore: Added generated files to ignore list. + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java + (EventLoop): Initialize eventLoop object on construction. + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (PulseAudioClip): Removed the parameter eventLoop. + (getMicrosecondLength): Return time in microseconds. + (getMicrosecondPosition): Likewise. + (open): Dont throw an exception if Mixer is not open. Let super handle it. + (setFramePosition): Check frame position for being positive. + (setLoopPoints): Check that the starting frame is valid. + (setMicrosecondPosition): Deal with negative value and values over the + maximum. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): Open the mixer if it isnt open. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java + (getLine): Dont pass eventLoop as a paramter. + (close): Close all open lines on exit. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java + (PulseAudioPort): Modified to not take an EventLoop paramter. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (PulseAudioSourceDataLine): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java + (PulseAudioSourcePort): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (PulseAudioTargetDataLine): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java + (PulseAudioTargetPort): Likewise. + + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java + (testMixerKnowsAboutOpenLines): Work even if mixer has some lines + initially open. + 2008-10-12 Matthias Klose * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Tue Oct 14 13:26:35 2008 -0400 @@ -110,7 +110,7 @@ public class EventLoop implements Runnab private EventLoop() { contextListeners = new ArrayList(); - + threadLock = new Object(); } synchronized public static EventLoop getEventLoop() { diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 14 13:26:35 2008 -0400 @@ -194,10 +194,8 @@ public class PulseAudioClip extends Puls stream.removeWriteListener(writeListener); } - public PulseAudioClip(EventLoop eventLoop, AudioFormat[] formats, - AudioFormat defaultFormat) { + public PulseAudioClip(AudioFormat[] formats, AudioFormat defaultFormat) { supportedFormats = formats; - this.eventLoop = eventLoop; this.defaultFormat = defaultFormat; this.currentFormat = defaultFormat; this.volume = PulseAudioVolumeControl.MAX_VOLUME; @@ -342,7 +340,7 @@ public class PulseAudioClip extends Puls return AudioSystem.NOT_SPECIFIED; } synchronized (clipLock) { - return frameCount / currentFormat.getFrameSize(); + return (long) (frameCount / currentFormat.getFrameRate() * 1000); } } @@ -353,7 +351,7 @@ public class PulseAudioClip extends Puls } synchronized (clipLock) { - return framesSinceOpen / currentFormat.getFrameSize(); + return (long) (framesSinceOpen / currentFormat.getFrameRate() * 1000); } } @@ -397,11 +395,6 @@ public class PulseAudioClip extends Puls @Override public void open(AudioFormat format, byte[] data, int offset, int bufferSize) throws LineUnavailableException { - - if(!PulseAudioMixer.getInstance().isOpen()) { - throw new LineUnavailableException("The mixer needs to be opened before opening a line"); - } - /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); @@ -472,7 +465,7 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("Line not open"); } - if (frames > frameCount) { + if (frames < 0 || frames > frameCount) { throw new IllegalArgumentException("incorreft frame value"); } @@ -497,6 +490,11 @@ public class PulseAudioClip extends Puls "ending point must be greater than or equal to the starting point"); } + if (start < 0) { + throw new IllegalArgumentException( + "starting point must be greater than or equal to 0"); + } + synchronized (clipLock) { startFrame = start; endFrame = end; @@ -510,7 +508,16 @@ public class PulseAudioClip extends Puls throw new IllegalStateException("Line not open"); } - float frameIndex = microseconds * currentFormat.getFrameRate(); + float frameIndex = microseconds * currentFormat.getFrameRate() / 1000; + + /* make frameIndex positive */ + while (frameIndex < 0) { + frameIndex += frameCount; + } + + /* frameIndex is in the range [0, frameCount-1], inclusive */ + frameIndex = frameIndex % frameCount; + synchronized (clipLock) { currentFrame = (int) frameIndex; } @@ -563,7 +570,7 @@ public class PulseAudioClip extends Puls super.stop(); } - + public javax.sound.sampled.Line.Info getLineInfo() { return new DataLine.Info(Clip.class, supportedFormats, StreamBufferAttributes.MIN_VALUE, diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 13:26:35 2008 -0400 @@ -84,10 +84,13 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } - if(!PulseAudioMixer.getInstance().isOpen()) { - throw new LineUnavailableException("The mixer needs to be opened before opening a line"); - } - + + PulseAudioMixer mixer = PulseAudioMixer.getInstance(); + if(!mixer.isOpen()) { + mixer.open(); + } + + eventLoop = EventLoop.getEventLoop(); createStream(format); addStreamListeners(); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java Tue Oct 14 13:26:35 2008 -0400 @@ -43,6 +43,7 @@ import java.net.UnknownHostException; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.concurrent.Semaphore; @@ -301,8 +302,7 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); - return new PulseAudioSourceDataLine(eventLoop, formats, - defaultFormat); + return new PulseAudioSourceDataLine(formats, defaultFormat); } if ((info.getLineClass() == TargetDataLine.class)) { @@ -310,8 +310,7 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - return new PulseAudioTargetDataLine(eventLoop, formats, - defaultFormat); + return new PulseAudioTargetDataLine(formats, defaultFormat); } if ((info.getLineClass() == Clip.class)) { @@ -319,15 +318,15 @@ public class PulseAudioMixer implements AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); - return new PulseAudioClip(eventLoop, formats, defaultFormat); + return new PulseAudioClip(formats, defaultFormat); } if (Port.Info.class.isInstance(info)) { Port.Info portInfo = (Port.Info) info; if (portInfo.isSource()) { - return new PulseAudioSourcePort(portInfo.getName(), eventLoop); + return new PulseAudioSourcePort(portInfo.getName()); } else { - return new PulseAudioTargetPort(portInfo.getName(), eventLoop); + return new PulseAudioTargetPort(portInfo.getName()); } } @@ -507,6 +506,35 @@ public class PulseAudioMixer implements throw new IllegalStateException("Mixer is not open; cant close"); } + List linesToClose = new LinkedList(); + linesToClose.addAll(sourceLines); + if (sourceLines.size() > 0) { + linesToClose.addAll(sourceLines); + for (Line line : linesToClose) { + if (line.isOpen()) { + System.out + .println("PulseAudioMixer: DEBUG: some source lines have not been closed"); + line.close(); + } + } + } + linesToClose.clear(); + + if (targetLines.size() > 0) { + linesToClose.addAll(targetLines); + for (Line line : linesToClose) { + if (line.isOpen()) { + System.out + .println("PulseAudioMixer: DEBUG: some target lines have not been closed"); + line.close(); + } + } + } + + synchronized (lineListeners) { + lineListeners.clear(); + } + eventLoopThread.interrupt(); try { @@ -519,19 +547,6 @@ public class PulseAudioMixer implements // System.out.println(this.getClass().getName() + ": closed"); isOpen = false; - - if (sourceLines.size() > 0) { - System.out.println("DEBUG: some source lines have not been closed"); - assert (sourceLines.size() < 0); // always fail - } - if (targetLines.size() > 0) { - System.out.println("DEBUG: some target lines have not been closed"); - assert (targetLines.size() < 0); // always fail - } - - synchronized (lineListeners) { - lineListeners.clear(); - } refreshSourceAndTargetLines(); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Tue Oct 14 13:26:35 2008 -0400 @@ -66,25 +66,25 @@ public abstract class PulseAudioPort ext System.loadLibrary("pulse-java"); } - public PulseAudioPort(String name, EventLoop eventLoop) { + public PulseAudioPort(String name) { this.name = name; + this.eventLoop = EventLoop.getEventLoop(); this.contextPointer = eventLoop.getContextPointer(); - this.eventLoop = eventLoop; + updateVolumeInfo(); volumeControl = new PulseAudioVolumeControl(this, eventLoop); controls.add(volumeControl); muteControl = new PulseAudioMuteControl(this, volumeControl); controls.add(muteControl); - //isOpen = true; - open(); + /* * unlike other lines, Ports must either be open or close * * close = no sound. open = sound * */ - // FIXME open(); + open(); // System.out.println("Opened Target Port " + name); } @@ -141,7 +141,7 @@ public abstract class PulseAudioPort ext @Override public void open() { - if(isOpen) { + if (isOpen) { return; } native_setVolume(volume); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Tue Oct 14 13:26:35 2008 -0400 @@ -54,11 +54,10 @@ public class PulseAudioSourceDataLine ex private boolean muted; private float volume; - public PulseAudioSourceDataLine(EventLoop eventLoop, AudioFormat[] formats, + public PulseAudioSourceDataLine(AudioFormat[] formats, AudioFormat defaultFormat) { this.supportedFormats = formats; - this.eventLoop = eventLoop; this.lineListeners = new ArrayList(); this.defaultFormat = defaultFormat; this.currentFormat = defaultFormat; @@ -69,7 +68,7 @@ public class PulseAudioSourceDataLine ex synchronized public void open(AudioFormat format, int bufferSize) throws LineUnavailableException { - /* check for permmission to play audio */ + /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Tue Oct 14 13:26:35 2008 -0400 @@ -43,43 +43,43 @@ public class PulseAudioSourcePort extend public class PulseAudioSourcePort extends PulseAudioPort { /* aka mic */ - + static { System.loadLibrary("pulse-java"); } - public PulseAudioSourcePort(String name, EventLoop eventLoop) { - super(name, eventLoop); + public PulseAudioSourcePort(String name) { + super(name); } public void open() { - + /* check for permission to record audio */ AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - + super.open(); - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.addSourceLine(this); } - + public void close() { - + /* check for permission to record audio */ AudioPermission perm = new AudioPermission("record", null); perm.checkGuard(null); - + if (!isOpen) { throw new IllegalStateException("Port is not open; so cant close"); } - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeSourceLine(this); - - super.close(); + + super.close(); } - + public native byte[] native_setVolume(float newValue); public synchronized native byte[] native_updateVolumeInfo(); @@ -88,7 +88,5 @@ public class PulseAudioSourcePort extend public javax.sound.sampled.Line.Info getLineInfo() { return new Port.Info(Port.class, getName(), false); } - - } diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Tue Oct 14 13:26:35 2008 -0400 @@ -61,10 +61,9 @@ public class PulseAudioTargetDataLine ex boolean flushed = false; boolean drained = false; - public PulseAudioTargetDataLine(EventLoop eventLoop, AudioFormat[] formats, + public PulseAudioTargetDataLine(AudioFormat[] formats, AudioFormat defaultFormat) { supportedFormats = formats; - this.eventLoop = eventLoop; this.defaultFormat = defaultFormat; this.currentFormat = defaultFormat; @@ -363,7 +362,7 @@ public class PulseAudioTargetDataLine ex fireLineEvent(new LineEvent(this, LineEvent.Type.STOP, framesSinceOpen)); } - + public javax.sound.sampled.Line.Info getLineInfo() { return new DataLine.Info(TargetDataLine.class, supportedFormats, StreamBufferAttributes.MIN_VALUE, diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Tue Oct 14 13:26:35 2008 -0400 @@ -48,9 +48,9 @@ public class PulseAudioTargetPort extend System.loadLibrary("pulse-java"); } - public PulseAudioTargetPort(String name, EventLoop eventLoop) { + public PulseAudioTargetPort(String name) { - super(name, eventLoop); + super(name); } public void open() { @@ -70,11 +70,11 @@ public class PulseAudioTargetPort extend /* check for permission to play audio */ AudioPermission perm = new AudioPermission("play", null); perm.checkGuard(null); - + if (!isOpen) { throw new IllegalStateException("not open, so cant close Port"); } - + PulseAudioMixer parent = PulseAudioMixer.getInstance(); parent.removeTargetLine(this); diff -r 9032c6fda5c2 -r a28576af0d10 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java --- a/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java Sun Oct 12 16:31:50 2008 +0200 +++ b/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java Tue Oct 14 13:26:35 2008 -0400 @@ -536,11 +536,11 @@ public class PulseAudioTargetDataLineTes targetDataLine = (TargetDataLine) mixer.getLine(new Line.Info( TargetDataLine.class)); - Assert.assertEquals(0, mixer.getTargetLines().length); - targetDataLine.open(); - Assert.assertEquals(1, mixer.getTargetLines().length); - targetDataLine.close(); - Assert.assertEquals(0, mixer.getTargetLines().length); + int initiallyOpen = mixer.getTargetLines().length; + targetDataLine.open(); + Assert.assertEquals(initiallyOpen+1, mixer.getTargetLines().length); + targetDataLine.close(); + Assert.assertEquals(initiallyOpen, mixer.getTargetLines().length); } From langel at towel.yyz.redhat.com Sat Oct 18 21:23:30 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:30 +0000 Subject: changeset in /hg/icedtea: Updated build req Message-ID: changeset d4d94a0dc23c in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d4d94a0dc23c description: Updated build req diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 5 ++++- INSTALL | 1 + diffs (27 lines): diff -r 81e9c55169c4 -r d4d94a0dc23c ChangeLog --- a/ChangeLog Tue Oct 14 13:29:55 2008 -0400 +++ b/ChangeLog Tue Oct 14 14:50:57 2008 -0400 @@ -1,8 +1,11 @@ 2008-10-14 Omair Majid + + * INSTALL: Updated requirements. + 2008-10-14 Omair Majid * Makefile.am (stamps/pulse-java.stamp): Added -I$(ICEDTEA_BOOT_DIR)/include/linux. - 2008-10-14 Omair Majid diff -r 81e9c55169c4 -r d4d94a0dc23c INSTALL --- a/INSTALL Tue Oct 14 13:29:55 2008 -0400 +++ b/INSTALL Tue Oct 14 14:50:57 2008 -0400 @@ -31,6 +31,7 @@ zlib-devel zlib-devel rhino netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm +jakarta-commons-logging - for visualvm For builing the PulseAudio based mixer, you will need pulseaudio-libs-devel >= 0.9.11 From omajid at redhat.com Sat Oct 18 21:23:30 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:30 +0000 Subject: changeset in /hg/icedtea: merged changes Message-ID: changeset 1a6322fdedc7 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=1a6322fdedc7 description: merged changes diffstat: 2 files changed, 5 insertions(+) ChangeLog | 4 ++++ INSTALL | 1 + diffs (25 lines): diff -r d5201ed0410a -r 1a6322fdedc7 ChangeLog --- a/ChangeLog Tue Oct 14 15:08:24 2008 -0400 +++ b/ChangeLog Tue Oct 14 15:10:15 2008 -0400 @@ -2,6 +2,10 @@ 2008-10-14 Omair Majid + + * INSTALL: Updated requirements. 2008-10-14 Omair Majid diff -r d5201ed0410a -r 1a6322fdedc7 INSTALL --- a/INSTALL Tue Oct 14 15:08:24 2008 -0400 +++ b/INSTALL Tue Oct 14 15:10:15 2008 -0400 @@ -31,6 +31,7 @@ zlib-devel zlib-devel rhino netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm +jakarta-commons-logging - for visualvm For builing the PulseAudio based mixer, you will need pulseaudio-libs-devel >= 0.9.11 From omajid at redhat.com Sat Oct 18 21:23:31 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:31 +0000 Subject: changeset in /hg/icedtea: merged changes Message-ID: changeset 1280e56de291 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=1280e56de291 description: merged changes diffstat: 1 file changed, 6 insertions(+) .hgignore | 6 ++++++ diffs (23 lines): diff -r 6864d36c44dd -r 1280e56de291 .hgignore --- a/.hgignore Tue Oct 14 16:49:14 2008 -0400 +++ b/.hgignore Tue Oct 14 16:50:34 2008 -0400 @@ -23,6 +23,7 @@ javac javac javap gcjwebplugin.so +jni-common.o IcedTeaPlugin.o IcedTeaPlugin.so extra-source-files.txt @@ -440,6 +441,11 @@ rt/javax/net/ssl/X509TrustManager.java rt/javax/net/ssl/X509TrustManager.java rt/java/io/ rt/sun/awt +rt/netscape/javascript/JSException.java +rt/netscape/javascript/JSObject.java +rt/netscape/javascript/JSProxy.java +rt/netscape/javascript/JSRunnable.java +rt/netscape/javascript/JSUtil.java generated/sun/awt/X11/generator/sizer.32.orig pulseaudio/bin pulseaudio/.*\.o From omajid at redhat.com Sat Oct 18 21:23:30 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:30 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Omair Majid changeset d5201ed0410a in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d5201ed0410a description: 2008-10-14 Omair Majid * .hgignore: Added pulse-java.jar to ignore list. * Makefile.am: Move jni-common.o out of the way when done. diffstat: 3 files changed, 7 insertions(+) .hgignore | 1 + ChangeLog | 5 +++++ Makefile.am | 1 + diffs (31 lines): diff -r 81e9c55169c4 -r d5201ed0410a .hgignore --- a/.hgignore Tue Oct 14 13:29:55 2008 -0400 +++ b/.hgignore Tue Oct 14 15:08:24 2008 -0400 @@ -445,3 +445,4 @@ pulseaudio/.*\.o pulseaudio/.*\.o pulseaudio/src/native/org_.*.h pulseaudio/.*jar +pulse-java.jar diff -r 81e9c55169c4 -r d5201ed0410a ChangeLog --- a/ChangeLog Tue Oct 14 13:29:55 2008 -0400 +++ b/ChangeLog Tue Oct 14 15:08:24 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * .hgignore: Added pulse-java.jar to ignore list. + * Makefile.am: Move jni-common.o out of the way when done. + 2008-10-14 Omair Majid * Makefile.am (stamps/pulse-java.stamp): Added diff -r 81e9c55169c4 -r d5201ed0410a Makefile.am --- a/Makefile.am Tue Oct 14 13:29:55 2008 -0400 +++ b/Makefile.am Tue Oct 14 15:08:24 2008 -0400 @@ -1429,6 +1429,7 @@ if ENABLE_PULSE_JAVA $(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c $(CC) $(LDFLAGS) -shared $(LIBPULSE_LIBS) -o libpulse-java.so org_*pulseaudio*.o jni-common.o mv org_classpath_icedtea_pulseaudio_*.o $(PULSE_JAVA_CLASS_DIR) + mv jni-common.o $(PULSE_JAVA_CLASS_DIR) endif mkdir -p stamps touch stamps/pulse-java.stamp From omajid at redhat.com Sat Oct 18 21:23:30 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:30 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Omair Majid changeset 3bd6f023d027 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=3bd6f023d027 description: 2008-10-14 Omair Majid * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o current directory. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ Makefile.am | 1 - diffs (23 lines): diff -r 1a6322fdedc7 -r 3bd6f023d027 ChangeLog --- a/ChangeLog Tue Oct 14 15:10:15 2008 -0400 +++ b/ChangeLog Tue Oct 14 15:14:09 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o from + current directory. + 2008-10-14 Omair Majid * .hgignore: Added pulse-java.jar to ignore list. diff -r 1a6322fdedc7 -r 3bd6f023d027 Makefile.am --- a/Makefile.am Tue Oct 14 15:10:15 2008 -0400 +++ b/Makefile.am Tue Oct 14 15:14:09 2008 -0400 @@ -1500,7 +1500,6 @@ if ENABLE_PULSE_JAVA rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so - rm -f jni-common.o endif # end of pulse-java From omajid at redhat.com Sat Oct 18 21:23:31 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:31 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Omair Majid changeset 6864d36c44dd in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=6864d36c44dd description: 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java (read): Commented out debug output. diffstat: 2 files changed, 8 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 5 +++-- diffs (27 lines): diff -r 3bd6f023d027 -r 6864d36c44dd ChangeLog --- a/ChangeLog Tue Oct 14 15:14:09 2008 -0400 +++ b/ChangeLog Tue Oct 14 16:49:14 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (read): Commented out debug output. + 2008-10-14 Omair Majid * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o from diff -r 3bd6f023d027 -r 6864d36c44dd pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Tue Oct 14 15:14:09 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java Tue Oct 14 16:49:14 2008 -0400 @@ -230,8 +230,9 @@ public class PulseAudioTargetDataLine ex stream.drop(); if (currentFragment == null) { - System.out - .println("DEBUG: PulseAudioTargetDataLine:read(): error in stream.peek()"); + // System.out + // .println("DEBUG: PulseAudioTargetDataLine:read(): + // error in stream.peek()"); continue; } From langel at towel.yyz.redhat.com Sat Oct 18 21:23:31 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:31 +0000 Subject: changeset in /hg/icedtea: Updated .hgignore Message-ID: changeset 57849268c9e4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=57849268c9e4 description: Updated .hgignore diffstat: 1 file changed, 6 insertions(+) .hgignore | 6 ++++++ diffs (23 lines): diff -r 3bd6f023d027 -r 57849268c9e4 .hgignore --- a/.hgignore Tue Oct 14 15:14:09 2008 -0400 +++ b/.hgignore Tue Oct 14 16:34:12 2008 -0400 @@ -23,6 +23,7 @@ javac javac javap gcjwebplugin.so +jni-common.o IcedTeaPlugin.o IcedTeaPlugin.so extra-source-files.txt @@ -440,6 +441,11 @@ rt/javax/net/ssl/X509TrustManager.java rt/javax/net/ssl/X509TrustManager.java rt/java/io/ rt/sun/awt +rt/netscape/javascript/JSException.java +rt/netscape/javascript/JSObject.java +rt/netscape/javascript/JSProxy.java +rt/netscape/javascript/JSRunnable.java +rt/netscape/javascript/JSUtil.java generated/sun/awt/X11/generator/sizer.32.orig pulseaudio/bin pulseaudio/.*\.o From omajid at redhat.com Sat Oct 18 21:23:31 2008 From: omajid at redhat.com (Omair Majid) Date: Sun, 19 Oct 2008 04:23:31 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Omair Majid changeset 53383766dc24 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=53383766dc24 description: 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (connect): Removed debug output. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 1 - diffs (23 lines): diff -r 1280e56de291 -r 53383766dc24 ChangeLog --- a/ChangeLog Tue Oct 14 16:50:34 2008 -0400 +++ b/ChangeLog Tue Oct 14 16:58:03 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (connect): Removed debug output. + 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java diff -r 1280e56de291 -r 53383766dc24 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 16:50:34 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 16:58:03 2008 -0400 @@ -265,7 +265,6 @@ public abstract class PulseAudioDataLine semaphore.acquire(); synchronized (eventLoop.threadLock) { if (stream.getState() != Stream.State.READY) { - System.out.println(stream.getState()); stream.disconnect(); stream.free(); throw new LineUnavailableException( From langel at towel.yyz.redhat.com Sat Oct 18 21:23:33 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:33 +0000 Subject: changeset in /hg/icedtea: Fixed whitespace Message-ID: changeset 5b3897cb5d41 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=5b3897cb5d41 description: Fixed whitespace diffstat: 1 file changed, 6 insertions(+), 6 deletions(-) ChangeLog | 12 ++++++------ diffs (25 lines): diff -r bcb125b39f86 -r 5b3897cb5d41 ChangeLog --- a/ChangeLog Wed Oct 15 11:10:08 2008 +0200 +++ b/ChangeLog Wed Oct 15 09:43:02 2008 -0400 @@ -4,15 +4,15 @@ 2008-10-15 Matthias Klose - * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java - (open): startedListener only sends a START event when playback first - starts and after an underflow - (start): sends a START event if there's data on the line + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): startedListener only sends a START event when playback first + starts and after an underflow + (start): sends a START event if there's data on the line 2008-10-14 Ioana Ivan - * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java - (connectLine): changed bufferAttributes to fix crackling in the clip tests + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (connectLine): changed bufferAttributes to fix crackling in the clip tests 2008-10-14 Omair Majid From iivan at town.yyz.redhat.com Sat Oct 18 21:23:32 2008 From: iivan at town.yyz.redhat.com (iivan at town.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:32 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Ioana Ivan Message-ID: changeset 17eedb3bbfbd in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=17eedb3bbfbd description: 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java (connectLine): changed bufferAttributes to fix crackling in the clip tests diffstat: 2 files changed, 8 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 3 ++- diffs (26 lines): diff -r 53383766dc24 -r 17eedb3bbfbd ChangeLog --- a/ChangeLog Tue Oct 14 16:58:03 2008 -0400 +++ b/ChangeLog Tue Oct 14 17:08:32 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (connectLine): changed bufferAttributes to fix crackling in the clip tests + + 2008-10-14 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java diff -r 53383766dc24 -r 17eedb3bbfbd pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 14 16:58:03 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java Tue Oct 14 17:08:32 2008 -0400 @@ -207,7 +207,8 @@ public class PulseAudioClip extends Puls protected void connectLine(int bufferSize, Stream masterStream) throws LineUnavailableException { StreamBufferAttributes bufferAttributes = new StreamBufferAttributes( - bufferSize, bufferSize / 2, bufferSize / 2, bufferSize / 2, 0); + bufferSize, bufferSize / 4, bufferSize / 8, + ((bufferSize / 10) > 100 ? bufferSize / 10 : 100), 0); if (masterStream != null) { synchronized (eventLoop.threadLock) { From doko at ubuntu.com Sat Oct 18 21:23:33 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:33 +0000 Subject: changeset in /hg/icedtea: 2008-10-15 Matthias Klose changeset bcb125b39f86 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=bcb125b39f86 description: 2008-10-15 Matthias Klose * patches/icedtea-hotspot-6b11-7b24.patch: Remove. diffstat: 2 files changed, 4 insertions(+), 56973 deletions(-) ChangeLog | 4 patches/icedtea-hotspot-6b11-7b24.patch |56973 ------------------------------- diffs (truncated from 56988 to 500 lines): diff -r 654694c101ad -r bcb125b39f86 ChangeLog --- a/ChangeLog Wed Oct 15 01:36:05 2008 -0400 +++ b/ChangeLog Wed Oct 15 11:10:08 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-14 Ioana Ivan + + * patches/icedtea-hotspot-6b11-7b24.patch: Remove. + 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java diff -r 654694c101ad -r bcb125b39f86 patches/icedtea-hotspot-6b11-7b24.patch --- a/patches/icedtea-hotspot-6b11-7b24.patch Wed Oct 15 01:36:05 2008 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56973 +0,0 @@ -diff -ruNb openjdk{6,}/hotspot/src/share -diff -ruNb openjdk{6,}/hotspot/src/os/linux - -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/BuildConfig.java openjdk/hotspot/src/share/tools/MakeDeps/BuildConfig.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/BuildConfig.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/BuildConfig.java 2007-12-14 08:57:02.000000000 +0100 -@@ -704,6 +704,3 @@ - receiver.add(attr); receiver.add(value); - } - } -- -- -- -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/Macro.java openjdk/hotspot/src/share/tools/MakeDeps/Macro.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/Macro.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/Macro.java 2007-12-14 08:57:02.000000000 +0100 -@@ -26,4 +26,3 @@ - public String name; - public String contents; - } -- -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/Platform.java openjdk/hotspot/src/share/tools/MakeDeps/Platform.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/Platform.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/Platform.java 2007-12-14 08:57:02.000000000 +0100 -@@ -169,7 +169,7 @@ - - /** max is 31 on mac, so warn */ - public int fileNameLengthLimit() { -- return 40; -+ return 45; - } - - public int defaultGrandIncludeThreshold() { -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC6.java 2007-12-14 08:57:02.000000000 +0100 -@@ -236,7 +236,7 @@ - " /nologo /base:\"0x8000000\" /subsystem:windows /dll" + - " /export:JNI_GetDefaultJavaVMInitArgs /export:JNI_CreateJavaVM /export:JNI_GetCreatedJavaVMs "+ - " /export:jio_snprintf /export:jio_printf /export:jio_fprintf /export:jio_vfprintf "+ -- " /export:jio_vsnprintf /export:JVM_EnqueueOperation "); -+ " /export:jio_vsnprintf "); - rv.add("SUBTRACT LINK32 /pdb:none /map"); - - return rv; -diff -ruNb openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java ---- openjdk6/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/tools/MakeDeps/WinGammaPlatformVC7.java 2007-12-14 08:57:02.000000000 +0100 -@@ -262,6 +262,8 @@ - - rv.add(new SpecificNameFilter("JVMTI Generated", new String[] {"^jvmti.+"})); - -+ rv.add(new SpecificNameFilter("C++ Interpreter Generated", new String[] {"^bytecodeInterpreterWithChecks.+"})); -+ - rv.add(new SpecificNameFilter("Include DBs", new String[] {"^includeDB_.+"})); - - // this one is to catch files not caught by other filters -@@ -574,8 +576,7 @@ - "/export:JNI_GetCreatedJavaVMs "+ - "/export:jio_snprintf /export:jio_printf "+ - "/export:jio_fprintf /export:jio_vfprintf "+ -- "/export:jio_vsnprintf "+ -- "/export:JVM_EnqueueOperation "); -+ "/export:jio_vsnprintf "); - addAttr(rv, "AdditionalDependencies", "Wsock32.lib winmm.lib"); - addAttr(rv, "OutputFile", outDll); - addAttr(rv, "LinkIncremental", "1"); -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlc.hpp openjdk/hotspot/src/share/vm/adlc/adlc.hpp ---- openjdk6/hotspot/src/share/vm/adlc/adlc.hpp 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/adlc.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)adlc.hpp 1.28 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlparse.cpp openjdk/hotspot/src/share/vm/adlc/adlparse.cpp ---- openjdk6/hotspot/src/share/vm/adlc/adlparse.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/adlparse.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)adlparse.cpp 1.205 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/adlparse.hpp openjdk/hotspot/src/share/vm/adlc/adlparse.hpp ---- openjdk6/hotspot/src/share/vm/adlc/adlparse.hpp 2008-07-10 22:04:28.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/adlparse.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)adlparse.hpp 1.79 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -273,5 +270,3 @@ - static bool is_int_token(const char* token, int& intval); - static void trim(char* &token); // trim leading & trailing spaces - }; -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/archDesc.cpp openjdk/hotspot/src/share/vm/adlc/archDesc.cpp ---- openjdk6/hotspot/src/share/vm/adlc/archDesc.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/archDesc.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -22,6 +22,7 @@ - // - // - -+ - // archDesc.cpp - Internal format for architecture definition - #include "adlc.hpp" - -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/arena.cpp openjdk/hotspot/src/share/vm/adlc/arena.cpp ---- openjdk6/hotspot/src/share/vm/adlc/arena.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/arena.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)arena.cpp 1.16 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -173,4 +170,3 @@ - void CHeapObj::operator delete(void* p){ - free(p); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/arena.hpp openjdk/hotspot/src/share/vm/adlc/arena.hpp ---- openjdk6/hotspot/src/share/vm/adlc/arena.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/arena.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)arena.hpp 1.17 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -158,4 +155,3 @@ - size_t size_in_bytes() const { return _size_in_bytes; } - void set_size_in_bytes(size_t size) { _size_in_bytes = size; } - }; -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dfa.cpp openjdk/hotspot/src/share/vm/adlc/dfa.cpp ---- openjdk6/hotspot/src/share/vm/adlc/dfa.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/dfa.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)dfa.cpp 1.83 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1997-2004 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -1022,4 +1019,3 @@ - void ProductionState::print() { - _production.print(print_key, print_production); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dict2.cpp openjdk/hotspot/src/share/vm/adlc/dict2.cpp ---- openjdk6/hotspot/src/share/vm/adlc/dict2.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/dict2.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)dict2.cpp 1.19 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1998-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -354,5 +351,3 @@ - } - _key = _value = NULL; - } -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/dict2.hpp openjdk/hotspot/src/share/vm/adlc/dict2.hpp ---- openjdk6/hotspot/src/share/vm/adlc/dict2.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/dict2.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)dict2.hpp 1.16 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1998-2000 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -121,5 +118,3 @@ - }; - - #endif // _DICT_ -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/filebuff.cpp openjdk/hotspot/src/share/vm/adlc/filebuff.cpp ---- openjdk6/hotspot/src/share/vm/adlc/filebuff.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/filebuff.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)filebuff.cpp 1.30 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1997-2002 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -297,4 +294,3 @@ - va_end(args); - _AD._no_output = 1; - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/filebuff.hpp openjdk/hotspot/src/share/vm/adlc/filebuff.hpp ---- openjdk6/hotspot/src/share/vm/adlc/filebuff.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/filebuff.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)filebuff.hpp 1.27 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1997-2004 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/forms.cpp openjdk/hotspot/src/share/vm/adlc/forms.cpp ---- openjdk6/hotspot/src/share/vm/adlc/forms.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/forms.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)forms.cpp 1.161 07/05/05 17:04:59 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -386,4 +383,3 @@ - void SourceForm::output(FILE *fp) { - fprintf(fp,"\n//%s\n%s\n",classname(),(_code?_code:"")); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/forms.hpp openjdk/hotspot/src/share/vm/adlc/forms.hpp ---- openjdk6/hotspot/src/share/vm/adlc/forms.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/forms.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)forms.hpp 1.150 07/05/05 17:05:00 JVM" --#endif - /* - * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -587,6 +584,3 @@ - void print_asserts(FILE *fp); - void dump(); - }; -- -- -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formsopt.cpp openjdk/hotspot/src/share/vm/adlc/formsopt.cpp ---- openjdk6/hotspot/src/share/vm/adlc/formsopt.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formsopt.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)formsopt.cpp 1.53 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -725,4 +722,3 @@ - void PeepReplace::output(FILE *fp) { // Write info to output files - fprintf(fp,"PeepReplace:\n"); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formsopt.hpp openjdk/hotspot/src/share/vm/adlc/formsopt.hpp ---- openjdk6/hotspot/src/share/vm/adlc/formsopt.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formsopt.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)formsopt.hpp 1.54 07/05/05 17:05:01 JVM" --#endif - /* - * Copyright 1998-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -549,4 +546,3 @@ - void dump(); - void output(FILE *fp); - }; -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formssel.cpp openjdk/hotspot/src/share/vm/adlc/formssel.cpp ---- openjdk6/hotspot/src/share/vm/adlc/formssel.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formssel.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)formssel.cpp 1.183 07/09/06 15:24:29 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -236,23 +233,58 @@ - return _matrule ? _matrule->is_ideal_copy() : 0; - } - --// Return 'true' if this instruction matches an ideal 'CosD' node -+// Return 'true' if this instruction is too complex to rematerialize. - int InstructForm::is_expensive() const { -- if (_matrule == NULL) return 0; - // We can prove it is cheap if it has an empty encoding. - // This helps with platform-specific nops like ThreadLocal and RoundFloat. -+ if (is_empty_encoding()) -+ return 0; -+ -+ if (is_tls_instruction()) -+ return 1; -+ -+ if (_matrule == NULL) return 0; -+ -+ return _matrule->is_expensive(); -+} -+ -+// Has an empty encoding if _size is a constant zero or there -+// are no ins_encode tokens. -+int InstructForm::is_empty_encoding() const { - if (_insencode != NULL) { - _insencode->reset(); - if (_insencode->encode_class_iter() == NULL) { -- return 0; -+ return 1; - } - } - if (_size != NULL && strcmp(_size, "0") == 0) { -+ return 1; -+ } - return 0; -+} -+ -+int InstructForm::is_tls_instruction() const { -+ if (_ident != NULL && -+ ( ! strcmp( _ident,"tlsLoadP") || -+ ! strncmp(_ident,"tlsLoadP_",9)) ) { -+ return 1; - } -- return _matrule->is_expensive(); -+ -+ if (_matrule != NULL && _insencode != NULL) { -+ const char* opType = _matrule->_opType; -+ if (strcmp(opType, "Set")==0) -+ opType = _matrule->_rChild->_opType; -+ if (strcmp(opType,"ThreadLocal")==0) { -+ fprintf(stderr, "Warning: ThreadLocal instruction %s should be named 'tlsLoadP_*'\n", -+ (_ident == NULL ? "NULL" : _ident)); -+ return 1; -+ } -+ } -+ -+ return 0; - } - -+ - // Return 'true' if this instruction matches an ideal 'Copy*' node - bool InstructForm::is_ideal_unlock() const { - return _matrule ? _matrule->is_ideal_unlock() : false; -@@ -492,6 +524,10 @@ - if( _components.count() == 1 && _components[0]->is(Component::USE_DEF) ) - rematerialize = true; - -+ // Pseudo-constants (values easily available to the runtime) -+ if (is_empty_encoding() && is_tls_instruction()) -+ rematerialize = true; -+ - // 1-input, 1-output, such as copies or increments. - if( _components.count() == 2 && - _components[0]->is(Component::DEF) && -@@ -1171,9 +1207,9 @@ - // Output the format call for this operand - fprintf(fp,"opnd_array(%d)->",idx); - if (idx == 0) -- fprintf(fp,"int_format(ra, this); // %s\n", rep_var); -+ fprintf(fp,"int_format(ra, this, st); // %s\n", rep_var); - else -- fprintf(fp,"ext_format(ra, this,idx%d); // %s\n", idx, rep_var ); -+ fprintf(fp,"ext_format(ra, this,idx%d, st); // %s\n", idx, rep_var ); - } - } - -@@ -2329,11 +2365,11 @@ - - void OperandForm::format_constant(FILE *fp, uint const_index, uint const_type) { - switch(const_type) { -- case Form::idealI: fprintf(fp,"tty->print(\"#%%d\", _c%d);\n", const_index); break; -- case Form::idealP: fprintf(fp,"_c%d->dump();\n", const_index); break; -- case Form::idealL: fprintf(fp,"tty->print(\"#%%lld\", _c%d);\n", const_index); break; -- case Form::idealF: fprintf(fp,"tty->print(\"#%%f\", _c%d);\n", const_index); break; -- case Form::idealD: fprintf(fp,"tty->print(\"#%%f\", _c%d);\n", const_index); break; -+ case Form::idealI: fprintf(fp,"st->print(\"#%%d\", _c%d);\n", const_index); break; -+ case Form::idealP: fprintf(fp,"_c%d->dump_on(st);\n", const_index); break; -+ case Form::idealL: fprintf(fp,"st->print(\"#%%lld\", _c%d);\n", const_index); break; -+ case Form::idealF: fprintf(fp,"st->print(\"#%%f\", _c%d);\n", const_index); break; -+ case Form::idealD: fprintf(fp,"st->print(\"#%%f\", _c%d);\n", const_index); break; - default: - assert( false, "ShouldNotReachHere()"); - } -@@ -3725,6 +3761,17 @@ - int MatchRule::is_ideal_copy() const { - if( _rChild ) { - const char *opType = _rChild->_opType; -+ if( strcmp(opType,"CastII")==0 ) -+ return 1; -+ // Do not treat *CastPP this way, because it -+ // may transfer a raw pointer to an oop. -+ // If the register allocator were to coalesce this -+ // into a single LRG, the GC maps would be incorrect. -+ //if( strcmp(opType,"CastPP")==0 ) -+ // return 1; -+ //if( strcmp(opType,"CheckCastPP")==0 ) -+ // return 1; -+ // - // Do not treat CastX2P or CastP2X this way, because - // raw pointers and int types are treated differently - // when saving local & stack info for safepoints in -@@ -3773,7 +3820,6 @@ - strcmp(opType,"ConvL2I")==0 || - strcmp(opType,"RoundDouble")==0 || - strcmp(opType,"RoundFloat")==0 || -- strcmp(opType,"ThreadLocal")==0 || - strcmp(opType,"ReverseBytesI")==0 || - strcmp(opType,"ReverseBytesL")==0 || - strcmp(opType,"Replicate16B")==0 || -@@ -3951,4 +3997,3 @@ - fprintf(fp,"\nFormat Rule: \n%s", (_temp?_temp:"")); - fprintf(fp,"\n"); - } -- -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/formssel.hpp openjdk/hotspot/src/share/vm/adlc/formssel.hpp ---- openjdk6/hotspot/src/share/vm/adlc/formssel.hpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/formssel.hpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_HDR --#pragma ident "@(#)formssel.hpp 1.76 07/05/17 15:49:19 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -139,6 +136,8 @@ - // ideal opcode enumeration - virtual const char *ideal_Opcode(FormDict &globals) const; - virtual int is_expensive() const; // node matches ideal 'CosD' -+ virtual int is_empty_encoding() const; // _size=0 and/or _insencode empty -+ virtual int is_tls_instruction() const; // tlsLoadP rule or ideal ThreadLocal - virtual int is_ideal_copy() const; // node matches ideal 'Copy*' - virtual bool is_ideal_unlock() const; // node matches ideal 'Unlock' - virtual bool is_ideal_call_leaf() const; // node matches ideal 'CallLeaf' -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/output_c.cpp openjdk/hotspot/src/share/vm/adlc/output_c.cpp ---- openjdk6/hotspot/src/share/vm/adlc/output_c.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/output_c.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)output_c.cpp 1.184 07/05/17 15:49:23 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -2199,7 +2196,7 @@ - const char* reg_conversion(const char* rep_var) { - if (strcmp(rep_var,"$Register") == 0) return "as_Register"; - if (strcmp(rep_var,"$FloatRegister") == 0) return "as_FloatRegister"; --#if defined(IA32) -+#if defined(IA32) || defined(AMD64) - if (strcmp(rep_var,"$XMMRegister") == 0) return "as_XMMRegister"; - #endif - return NULL; -diff -ruNb openjdk6/hotspot/src/share/vm/adlc/output_h.cpp openjdk/hotspot/src/share/vm/adlc/output_h.cpp ---- openjdk6/hotspot/src/share/vm/adlc/output_h.cpp 2008-07-10 22:04:29.000000000 +0200 -+++ openjdk/hotspot/src/share/vm/adlc/output_h.cpp 2007-12-14 08:57:02.000000000 +0100 -@@ -1,6 +1,3 @@ --#ifdef USE_PRAGMA_IDENT_SRC --#pragma ident "@(#)output_h.cpp 1.178 07/05/05 17:05:03 JVM" --#endif - /* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -@@ -345,34 +342,34 @@ - - // Generate the format rule for condition codes - static void defineCCodeDump(FILE *fp, int i) { -- fprintf(fp, " if( _c%d == BoolTest::eq ) tty->print(\"eq\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::ne ) tty->print(\"ne\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::le ) tty->print(\"le\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::ge ) tty->print(\"ge\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::lt ) tty->print(\"lt\");\n",i); -- fprintf(fp, " else if( _c%d == BoolTest::gt ) tty->print(\"gt\");\n",i); -+ fprintf(fp, " if( _c%d == BoolTest::eq ) st->print(\"eq\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::ne ) st->print(\"ne\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::le ) st->print(\"le\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::ge ) st->print(\"ge\");\n",i); -+ fprintf(fp, " else if( _c%d == BoolTest::lt ) st->print(\"lt\");\n",i); From doko at ubuntu.com Sat Oct 18 21:23:34 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:34 +0000 Subject: changeset in /hg/icedtea: 2008-10-15 Xerxes Rnby changeset 533fa4be0583 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=533fa4be0583 description: 2008-10-15 Xerxes Rnby * patches/icedtea-arch.patch: Update for m68k. diffstat: 2 files changed, 50 insertions(+), 30 deletions(-) ChangeLog | 4 ++ patches/icedtea-arch.patch | 76 ++++++++++++++++++++++++++------------------ diffs (181 lines): diff -r 698f8ee5fcae -r 533fa4be0583 ChangeLog --- a/ChangeLog Wed Oct 15 17:04:38 2008 +0200 +++ b/ChangeLog Wed Oct 15 17:18:35 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-15 Mark Wielaard * NEWS: Add hint about using different rhino versions. diff -r 698f8ee5fcae -r 533fa4be0583 patches/icedtea-arch.patch --- a/patches/icedtea-arch.patch Wed Oct 15 17:04:38 2008 +0200 +++ b/patches/icedtea-arch.patch Wed Oct 15 17:18:35 2008 +0200 @@ -1,6 +1,6 @@ ---- openjdk/jdk/make/javax/sound/SoundDefs.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2008-08-12 18:12:15.000000000 +0000 -@@ -58,10 +58,50 @@ +--- openjdk/jdk/make/javax/sound/SoundDefs.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2008-10-15 17:09:56.000000000 +0200 +@@ -58,10 +58,54 @@ ifdef ICEDTEA_ZERO_BUILD CPPFLAGS += -DX_ARCH=X_ZERO else @@ -24,6 +24,10 @@ + CPPFLAGS += -DX_ARCH=X_IA64 + endif # ARCH ia64 + ++ ifeq ($(ARCH), m68k) ++ CPPFLAGS += -DX_ARCH=X_M68K ++ endif # ARCH m68k ++ + ifeq ($(ARCH), mips) + CPPFLAGS += -DX_ARCH=X_MIPS + endif # ARCH mips @@ -51,7 +55,7 @@ ifeq ($(ARCH), sparc) CPPFLAGS += -DX_ARCH=X_SPARC endif # ARCH sparc -@@ -69,10 +109,6 @@ +@@ -69,10 +113,6 @@ ifeq ($(ARCH), sparcv9) CPPFLAGS += -DX_ARCH=X_SPARCV9 endif # ARCH sparcv9 @@ -62,8 +66,8 @@ endif ---- openjdk/jdk/make/common/Defs-linux.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/common/Defs-linux.gmk 2008-08-12 18:15:54.000000000 +0000 +--- openjdk/jdk/make/common/Defs-linux.gmk.orig 2008-10-15 17:04:21.000000000 +0200 ++++ openjdk/jdk/make/common/Defs-linux.gmk 2008-10-15 17:08:37.000000000 +0200 @@ -102,9 +102,19 @@ # We need this frame pointer to make it easy to walk the stacks. # This should be the default on X86, but ia64 and amd64 may not have this @@ -84,9 +88,9 @@ CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ---- openjdk/jdk/make/common/shared/Compiler-gcc.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2008-08-12 18:10:45.000000000 +0000 -@@ -75,28 +75,51 @@ +--- openjdk/jdk/make/common/shared/Compiler-gcc.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2008-10-15 17:11:28.000000000 +0200 +@@ -75,28 +75,56 @@ REQUIRED_CC_VER = 3.2 REQUIRED_GCC_VER = 3.2.* else @@ -126,6 +130,11 @@ REQUIRED_CC_VER = 3.2 REQUIRED_GCC_VER = 2.9[56789].* endif ++ ifneq ("$(findstring m68k,$(ARCH))", "") ++ # m68k ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* + endif + ifneq ("$(findstring mips,$(ARCH))", "") + # mips + REQUIRED_CC_VER = 3.2 @@ -140,7 +149,7 @@ + # s390 or s390x + REQUIRED_CC_VER = 3.2 + REQUIRED_GCC_VER = 3.2.* - endif ++ endif + ifneq ("$(findstring sparc,$(ARCH))", "") + # sparc or sparcv9 + REQUIRED_CC_VER = 4.0 @@ -148,9 +157,9 @@ endif endif # Option used to create a shared library ---- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/make/common/shared/Platform.gmk 2008-08-12 18:14:37.000000000 +0000 -@@ -237,9 +237,37 @@ +--- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/make/common/shared/Platform.gmk 2008-10-15 17:13:49.000000000 +0200 +@@ -237,9 +237,40 @@ else # i586 is 32-bit, amd64 is 64-bit ifndef ARCH_DATA_MODEL @@ -169,6 +178,9 @@ + endif + ifeq ($(ARCH), ia64) + ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), m68k) ++ ARCH_DATA_MODEL=32 + endif + ifeq ($(ARCH), mips) + ARCH_DATA_MODEL=32 @@ -189,9 +201,9 @@ ARCH_DATA_MODEL=64 endif endif ---- openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2008-08-12 18:13:17.000000000 +0000 -@@ -33,12 +33,20 @@ +--- openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2008-10-15 17:13:01.000000000 +0200 +@@ -33,12 +33,21 @@ #define X_LINUX 3 // types for X_ARCH @@ -206,20 +218,21 @@ +#define X_ARM 3 +#define X_I586 4 +#define X_IA64 5 -+#define X_MIPS 6 -+#define X_MIPSEL 7 -+#define X_PPC 8 -+#define X_PPC64 9 -+#define X_S390 10 -+#define X_S390X 11 -+#define X_SPARC 12 -+#define X_SPARCV9 13 -+#define X_ZERO 14 ++#define X_M68K 6 ++#define X_MIPS 7 ++#define X_MIPSEL 8 ++#define X_PPC 9 ++#define X_PPC64 10 ++#define X_S390 11 ++#define X_S390X 12 ++#define X_SPARC 13 ++#define X_SPARCV9 14 ++#define X_ZERO 15 // ********************************** // Make sure you set X_PLATFORM and X_ARCH defines correctly. ---- openjdk/corba/make/common/Defs-linux.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/corba/make/common/Defs-linux.gmk 2008-08-12 18:15:12.000000000 +0000 +--- openjdk/corba/make/common/Defs-linux.gmk.orig 2008-10-15 17:04:20.000000000 +0200 ++++ openjdk/corba/make/common/Defs-linux.gmk 2008-10-15 17:08:37.000000000 +0200 @@ -92,9 +92,19 @@ # We need this frame pointer to make it easy to walk the stacks. # This should be the default on X86, but ia64 and amd64 may not have this @@ -240,9 +253,9 @@ CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ---- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-08-12 18:09:03.000000000 +0000 -+++ openjdk/corba/make/common/shared/Platform.gmk 2008-08-12 18:14:03.000000000 +0000 -@@ -227,9 +227,37 @@ +--- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-10-15 17:04:19.000000000 +0200 ++++ openjdk/corba/make/common/shared/Platform.gmk 2008-10-15 17:12:19.000000000 +0200 +@@ -227,9 +227,40 @@ else # i586 is 32-bit, amd64 is 64-bit ifndef ARCH_DATA_MODEL @@ -261,6 +274,9 @@ + endif + ifeq ($(ARCH), ia64) + ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), m68k) ++ ARCH_DATA_MODEL=32 + endif + ifeq ($(ARCH), mips) + ARCH_DATA_MODEL=32 From iivan at redhat.com Sat Oct 18 21:23:33 2008 From: iivan at redhat.com (Ioana Ivan) Date: Sun, 19 Oct 2008 04:23:33 +0000 Subject: changeset in /hg/icedtea: 2008-10-14 Ioana Ivan Message-ID: changeset 654694c101ad in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=654694c101ad description: 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java (open): startedListener only sends a START event when playback first starts and after an underflow (start): sends a START event if there's data on the line diffstat: 2 files changed, 24 insertions(+), 9 deletions(-) ChangeLog | 9 +++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 24 ++++++---- diffs (80 lines): diff -r 17eedb3bbfbd -r 654694c101ad ChangeLog --- a/ChangeLog Tue Oct 14 17:08:32 2008 -0400 +++ b/ChangeLog Wed Oct 15 01:36:05 2008 -0400 @@ -1,3 +1,10 @@ 2008-10-14 Ioana Ivan +2008-10-14 Ioana Ivan + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): startedListener only sends a START event when playback first + starts and after an underflow + (start): sends a START event if there's data on the line + 2008-10-14 Ioana Ivan * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java @@ -6,7 +13,7 @@ 2008-10-14 Ioana Ivan 2008-10-14 Omair Majid - * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + * pulseaudio/src/java/org/classpat/icedtea/pulseaudio/PulseAudioDataLine.java (connect): Removed debug output. 2008-10-14 Omair Majid diff -r 17eedb3bbfbd -r 654694c101ad pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Tue Oct 14 17:08:32 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java Wed Oct 15 01:36:05 2008 -0400 @@ -84,9 +84,9 @@ public abstract class PulseAudioDataLine if (isOpen) { throw new IllegalStateException("Line is already open"); } - + PulseAudioMixer mixer = PulseAudioMixer.getInstance(); - if(!mixer.isOpen()) { + if (!mixer.isOpen()) { mixer.open(); } @@ -205,13 +205,14 @@ public abstract class PulseAudioDataLine Stream.PlaybackStartedListener startedListener = new Stream.PlaybackStartedListener() { @Override public void update() { - fireLineEvent(new LineEvent(PulseAudioDataLine.this, - LineEvent.Type.START, framesSinceOpen)); - + if (!dataWritten) { + fireLineEvent(new LineEvent(PulseAudioDataLine.this, + LineEvent.Type.START, framesSinceOpen)); + synchronized (this) { + this.notifyAll(); + } + } dataWritten = true; - synchronized (this) { - this.notifyAll(); - } } }; @@ -343,6 +344,10 @@ public abstract class PulseAudioDataLine return; } + if (dataWritten && (!isStarted)) { + fireLineEvent(new LineEvent(PulseAudioDataLine.this, + LineEvent.Type.START, framesSinceOpen)); + } Operation op; synchronized (eventLoop.threadLock) { @@ -351,6 +356,9 @@ public abstract class PulseAudioDataLine op.waitForCompletion(); op.releaseReference(); + synchronized (this) { + this.notifyAll(); + } isStarted = true; } From doko at ubuntu.com Sat Oct 18 21:23:34 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:34 +0000 Subject: changeset in /hg/icedtea: 2008-10-15 Matthias Klose changeset 5e9e266594bc in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=5e9e266594bc description: 2008-10-15 Matthias Klose * NEWS: Add support for more ports for Zero builds. diffstat: 2 files changed, 7 insertions(+) ChangeLog | 6 ++++++ NEWS | 1 + diffs (24 lines): diff -r 75e459eb91b1 -r 5e9e266594bc ChangeLog --- a/ChangeLog Wed Oct 15 16:26:20 2008 +0200 +++ b/ChangeLog Wed Oct 15 16:56:42 2008 +0200 @@ -1,3 +1,9 @@ 2008-10-15 Mark Wielaard + + * NEWS: Add support for more ports for Zero builds. + +2008-10-15 Lillian Angel + 2008-10-15 Mark Wielaard * NEWS: Add Rhino javascript and cleaned up crypto support. diff -r 75e459eb91b1 -r 5e9e266594bc NEWS --- a/NEWS Wed Oct 15 16:26:20 2008 +0200 +++ b/NEWS Wed Oct 15 16:56:42 2008 +0200 @@ -13,6 +13,7 @@ New in release 1.3 (2008-10-15) supported now without any (regional) restrictions. No more need for separate crypto policy jars. - Integration of Mozilla Rhino javascript support for javax.script. +- Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. - Various build fixes. - Several bug and security fixes. From mark at klomp.org Sat Oct 18 21:23:34 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:34 +0000 Subject: changeset in /hg/icedtea: * NEWS: Add hint about using different... Message-ID: changeset 698f8ee5fcae in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=698f8ee5fcae description: * NEWS: Add hint about using different rhino versions. diffstat: 2 files changed, 6 insertions(+), 2 deletions(-) ChangeLog | 6 ++++-- NEWS | 2 ++ diffs (28 lines): diff -r 5e9e266594bc -r 698f8ee5fcae ChangeLog --- a/ChangeLog Wed Oct 15 16:56:42 2008 +0200 +++ b/ChangeLog Wed Oct 15 17:04:38 2008 +0200 @@ -1,8 +1,10 @@ 2008-10-15 Matthias Klose + + * NEWS: Add hint about using different rhino versions. + 2008-10-15 Matthias Klose * NEWS: Add support for more ports for Zero builds. - -2008-10-15 Lillian Angel 2008-10-15 Mark Wielaard diff -r 5e9e266594bc -r 698f8ee5fcae NEWS --- a/NEWS Wed Oct 15 16:56:42 2008 +0200 +++ b/NEWS Wed Oct 15 17:04:38 2008 +0200 @@ -13,6 +13,8 @@ New in release 1.3 (2008-10-15) supported now without any (regional) restrictions. No more need for separate crypto policy jars. - Integration of Mozilla Rhino javascript support for javax.script. + (See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=179 when + you want to enable non-system-installed versions of Rhino). - Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. - Various build fixes. - Several bug and security fixes. From mark at klomp.org Sat Oct 18 21:23:34 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:34 +0000 Subject: changeset in /hg/icedtea: * NEWS: Add Rhino javascript and clean... Message-ID: changeset 75e459eb91b1 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=75e459eb91b1 description: * NEWS: Add Rhino javascript and cleaned up crypto support. diffstat: 2 files changed, 8 insertions(+) ChangeLog | 4 ++++ NEWS | 4 ++++ diffs (25 lines): diff -r e9e4bd53935d -r 75e459eb91b1 ChangeLog --- a/ChangeLog Wed Oct 15 10:04:57 2008 -0400 +++ b/ChangeLog Wed Oct 15 16:26:20 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-15 Lillian Angel + + * NEWS: Add Rhino javascript and cleaned up crypto support. + 2008-10-15 Lillian Angel * NEWS: Updated for 1.3 release. diff -r e9e4bd53935d -r 75e459eb91b1 NEWS --- a/NEWS Wed Oct 15 10:04:57 2008 -0400 +++ b/NEWS Wed Oct 15 16:26:20 2008 +0200 @@ -9,6 +9,10 @@ New in release 1.3 (2008-10-15) - VisualVM tool integrated (--enable-visualvm). - Added out-of-the-box CACAO support (--with-cacao). - Added the experimental Shark JIT for Zero. +- Cleaned up crypto support, all algorithms and key sizes are fully + supported now without any (regional) restrictions. No more need for + separate crypto policy jars. +- Integration of Mozilla Rhino javascript support for javax.script. - Various build fixes. - Several bug and security fixes. From langel at towel.yyz.redhat.com Sat Oct 18 21:23:34 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:34 +0000 Subject: changeset in /hg/icedtea: 2008-10-15 Lillian Angel changeset e9e4bd53935d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e9e4bd53935d description: 2008-10-15 Lillian Angel * NEWS: Updated for 1.3 release. diffstat: 2 files changed, 22 insertions(+), 8 deletions(-) ChangeLog | 18 +++++++++++------- NEWS | 12 +++++++++++- diffs (53 lines): diff -r 5b3897cb5d41 -r e9e4bd53935d ChangeLog --- a/ChangeLog Wed Oct 15 09:43:02 2008 -0400 +++ b/ChangeLog Wed Oct 15 10:04:57 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-15 Matthias Klose + + * NEWS: Updated for 1.3 release. + 2008-10-15 Matthias Klose * patches/icedtea-hotspot-6b11-7b24.patch: Remove. @@ -407,13 +411,13 @@ 2008-09-23 Deepak Bhole - DJ Lucas - - * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. - * acinclude.m4: Added check to determine whether jar supports - stdin file args. - * patches/icedtea-ecj.patch: Updated patch. - * AUTHORS: Added DJ Lucas. + DJ Lucas + + * Makefile.am: Added new env var JAR_ACCEPTS_STDIN_LIST. + * acinclude.m4: Added check to determine whether jar supports + stdin file args. + * patches/icedtea-ecj.patch: Updated patch. + * AUTHORS: Added DJ Lucas. 2008-09-18 Lillian Angel diff -r 5b3897cb5d41 -r e9e4bd53935d NEWS --- a/NEWS Wed Oct 15 09:43:02 2008 -0400 +++ b/NEWS Wed Oct 15 10:04:57 2008 -0400 @@ -1,6 +1,16 @@ New in release UNRELEASED (2008-xx-xx) -New in release UNRELEASED (2008-xx-xx) +New in release 1.3 (2008-10-15) - Updated to b12 build. +- Fixed to use new sound service, Gervill. +- Many Netx fixes and now built by default. +- LiveConnect support (--enable-liveconnect). +- Implemented JavaScript->Java security. +- PulseAudio integrated (--enable-pulse-java) +- VisualVM tool integrated (--enable-visualvm). +- Added out-of-the-box CACAO support (--with-cacao). +- Added the experimental Shark JIT for Zero. +- Various build fixes. +- Several bug and security fixes. New in release 1.2 (2008-05-28) From mark at klomp.org Sat Oct 18 21:23:35 2008 From: mark at klomp.org (Mark Wielaard) Date: Sun, 19 Oct 2008 04:23:35 +0000 Subject: changeset in /hg/icedtea: * Makefile.am (EXTRA_DIST): Always inc... Message-ID: changeset d3bdd63d63d1 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d3bdd63d63d1 description: * Makefile.am (EXTRA_DIST): Always include all patches, irrespective of any configure options. diffstat: 2 files changed, 13 insertions(+), 8 deletions(-) ChangeLog | 5 +++++ Makefile.am | 16 ++++++++-------- diffs (39 lines): diff -r d6d04e2f4333 -r d3bdd63d63d1 ChangeLog --- a/ChangeLog Wed Oct 15 13:11:21 2008 -0400 +++ b/ChangeLog Wed Oct 15 22:55:36 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-15 Lillian Angel + + * Makefile.am (EXTRA_DIST): Always include all patches, + irrespective of any configure options. + 2008-10-15 Lillian Angel * Makefile.am diff -r d6d04e2f4333 -r d3bdd63d63d1 Makefile.am --- a/Makefile.am Wed Oct 15 13:11:21 2008 -0400 +++ b/Makefile.am Wed Oct 15 22:55:36 2008 +0200 @@ -89,15 +89,15 @@ install: $(ICEDTEAPLUGIN_CLEAN) hotspot hotspot-helper clean-extra \ clean-jtreg clean-jtreg-reports clean-visualvm clean-nbplatform -EXTRA_DIST = rt generated $(ICEDTEA_PATCHES) $(ICEDTEA_FSG_PATCHES) \ - $(ICEDTEA_ECJ_PATCH) gcjwebplugin.cc tools-copy contrib ports \ - patches/icedtea-gcc-4.3.patch extra $(ZERO_PATCHES) \ - patches/icedtea-arch.patch patches/icedtea-cacao.patch \ +EXTRA_DIST = rt generated \ + patches/icedtea-*.patch \ + gcjwebplugin.cc tools-copy contrib ports \ + extra overlays \ javaws.png javaws.desktop visualvm.desktop \ - overlays extra jconsole.desktop policytool.desktop \ - test/jtreg patches/icedtea-plugin.patch \ - patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING patches/icedtea-visualvm.patch pulseaudio fsg.sh + jconsole.desktop policytool.desktop \ + test/jtreg \ + IcedTeaPlugin.cc \ + HACKING pulseaudio fsg.sh # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. From langel at towel.yyz.redhat.com Sat Oct 18 21:23:35 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:35 +0000 Subject: changeset in /hg/icedtea: Fixed Changelog Message-ID: changeset d6d04e2f4333 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d6d04e2f4333 description: Fixed Changelog diffstat: 1 file changed, 1 insertion(+), 1874 deletions(-) ChangeLog | 1875 ------------------------------------------------------------- diffs (truncated from 1885 to 500 lines): diff -r e999015e06e9 -r d6d04e2f4333 ChangeLog --- a/ChangeLog Wed Oct 15 12:53:28 2008 -0400 +++ b/ChangeLog Wed Oct 15 13:11:21 2008 -0400 @@ -3,1880 +3,7 @@ 2008-10-15 Lillian Angel - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - * Makefile.am - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. - (clean-distlocal): - Added jni-common.o. - * .hgtags: - Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am: - - (EXTRA_DIST): Added fsg.sh. - (clean-distlocal): Added - jni-common.o. - * .hgtags: Reverted.2008-10-15 - Lillian Angel - - - * Makefile.am - (EXTRA_DIST): Added - fsg.sh. From langel at towel.yyz.redhat.com Sat Oct 18 21:23:35 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:35 +0000 Subject: changeset in /hg/icedtea: Added tag icedtea6-1.3 for changeset 3... Message-ID: changeset e999015e06e9 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e999015e06e9 description: Added tag icedtea6-1.3 for changeset 3ef9c9c4e70b diffstat: 1 file changed, 1 insertion(+) .hgtags | 1 + diffs (8 lines): diff -r 3ef9c9c4e70b -r e999015e06e9 .hgtags --- a/.hgtags Wed Oct 15 12:53:13 2008 -0400 +++ b/.hgtags Wed Oct 15 12:53:28 2008 -0400 @@ -8,3 +8,4 @@ 38e6eb354632588f5ac8dbcd69229ebd031f57cb 38e6eb354632588f5ac8dbcd69229ebd031f57cb icedtea6-1.0 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 +3ef9c9c4e70b8204b73fa9b88243f49f59c2a23f icedtea6-1.3 From gnu_andrew at member.fsf.org Sat Oct 18 21:23:36 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:36 +0000 Subject: changeset in /hg/icedtea: Make it possible to use an external ba... Message-ID: changeset ce3ea0b5a8c9 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ce3ea0b5a8c9 description: Make it possible to use an external basic cluster src zip. 2008-10-16 Andrew John Hughes * Makefile.am: Make use of ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP. * acinclude.m4: Add --with-netbeans-basic-cluster-src-zip option. * configure.ac: Enable WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP macro. diffstat: 4 files changed, 36 insertions(+), 2 deletions(-) ChangeLog | 9 +++++++++ Makefile.am | 11 +++++++++-- acinclude.m4 | 17 +++++++++++++++++ configure.ac | 1 + diffs (89 lines): diff -r d6d04e2f4333 -r ce3ea0b5a8c9 ChangeLog --- a/ChangeLog Wed Oct 15 13:11:21 2008 -0400 +++ b/ChangeLog Thu Oct 16 01:28:18 2008 +0100 @@ -1,3 +1,12 @@ 2008-10-15 Lillian Angel + + * Makefile.am: + Make use of ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP. + * acinclude.m4: + Add --with-netbeans-basic-cluster-src-zip option. + * configure.ac: + Enable WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP macro. + 2008-10-15 Lillian Angel * Makefile.am diff -r d6d04e2f4333 -r ce3ea0b5a8c9 Makefile.am --- a/Makefile.am Wed Oct 15 13:11:21 2008 -0400 +++ b/Makefile.am Thu Oct 16 01:28:18 2008 +0100 @@ -295,7 +295,12 @@ endif endif NETBEANS_BASIC_CLUSTER_URL = http://nbi.netbeans.org/files/documents/210/2056/ -NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip + +if USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP + NETBEANS_BASIC_CLUSTER_SRC_ZIP = $(ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP) +else + NETBEANS_BASIC_CLUSTER_SRC_ZIP = netbeans-6.1-200805300101-basic_cluster-src.zip +endif NETBEANS_PROFILER_URL = http://icedtea.classpath.org/visualvm/ @@ -343,6 +348,8 @@ endif endif endif if WITH_VISUALVM +if USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP +else if ! echo "$(NETBEANS_BASIC_CLUSTER_MD5SUM) $(NETBEANS_BASIC_CLUSTER_SRC_ZIP)" \ | $(MD5SUM) --check ; \ then \ @@ -353,7 +360,7 @@ if WITH_VISUALVM $(WGET) $(NETBEANS_BASIC_CLUSTER_URL)$(NETBEANS_BASIC_CLUSTER_SRC_ZIP) \ -O $(NETBEANS_BASIC_CLUSTER_SRC_ZIP) ; \ fi - +endif if USE_ALT_NETBEANS_PROFILER_SRC_ZIP else if ! echo "$(NETBEANS_PROFILER_MD5SUM) $(NETBEANS_PROFILER_SRC_ZIP)" \ diff -r d6d04e2f4333 -r ce3ea0b5a8c9 acinclude.m4 --- a/acinclude.m4 Wed Oct 15 13:11:21 2008 -0400 +++ b/acinclude.m4 Thu Oct 16 01:28:18 2008 +0100 @@ -473,6 +473,23 @@ AC_DEFUN([WITH_NETBEANS_PROFILER_SRC_ZIP AC_SUBST(ALT_NETBEANS_PROFILER_SRC_ZIP) ]) +AC_DEFUN([WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP], +[ + AC_MSG_CHECKING(netbeans basic cluster zip) + AC_ARG_WITH([netbeans-basic-cluster-src-zip], + [AS_HELP_STRING(--with-netbeans-basic-cluster-src-zip, specify the location of the netbeans basic cluster source zip)], + [ + ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP=${withval} + AM_CONDITIONAL(USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP, test x = x) + ], + [ + ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP="not specified" + AM_CONDITIONAL(USE_ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP, test x != x) + ]) + AC_MSG_RESULT(${ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP}) + AC_SUBST(ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP) +]) + AC_DEFUN([WITH_ALT_JAR_BINARY], [ AC_MSG_CHECKING(alternate jar command) diff -r d6d04e2f4333 -r ce3ea0b5a8c9 configure.ac --- a/configure.ac Wed Oct 15 13:11:21 2008 -0400 +++ b/configure.ac Thu Oct 16 01:28:18 2008 +0100 @@ -247,6 +247,7 @@ WITH_OPENJDK_SRC_DIR WITH_OPENJDK_SRC_DIR WITH_VISUALVM_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP +WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP WITH_ALT_JAR_BINARY AC_CHECK_WITH_CACAO AC_CHECK_WITH_CACAO_HOME From gnu_andrew at member.fsf.org Sat Oct 18 21:23:36 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:36 +0000 Subject: changeset in /hg/icedtea: Fix naming of cacao option. Message-ID: changeset 839e9e0810ca in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=839e9e0810ca description: Fix naming of cacao option. 2008-10-16 Andrew John Hughes * acinclude.m4: Change --with-cacao to be --enable-cacao as it only accepts yes and no. * configure.ac: Rename cacao macro appropriately. diffstat: 3 files changed, 14 insertions(+), 6 deletions(-) ChangeLog | 8 ++++++++ acinclude.m4 | 10 +++++----- configure.ac | 2 +- diffs (49 lines): diff -r ce3ea0b5a8c9 -r 839e9e0810ca ChangeLog --- a/ChangeLog Thu Oct 16 01:28:18 2008 +0100 +++ b/ChangeLog Thu Oct 16 01:44:33 2008 +0100 @@ -1,3 +1,11 @@ 2008-10-16 Andrew John Hughes + + * acinclude.m4: + Change --with-cacao to be --enable-cacao + as it only accepts yes and no. + * configure.ac: + Rename cacao macro appropriately. + 2008-10-16 Andrew John Hughes * Makefile.am: diff -r ce3ea0b5a8c9 -r 839e9e0810ca acinclude.m4 --- a/acinclude.m4 Thu Oct 16 01:28:18 2008 +0100 +++ b/acinclude.m4 Thu Oct 16 01:44:33 2008 +0100 @@ -847,13 +847,13 @@ AC_DEFUN([SET_CORE_OR_SHARK_BUILD], AM_CONDITIONAL(SHARK_BUILD, test "x${use_shark}" = xyes) ]) -AC_DEFUN([AC_CHECK_WITH_CACAO], +AC_DEFUN([AC_CHECK_ENABLE_CACAO], [ AC_MSG_CHECKING(whether to use CACAO as VM) - AC_ARG_WITH([cacao], - [AS_HELP_STRING(--with-cacao,use CACAO as VM [[default=no]])], - [ - WITH_CACAO=yes + AC_ARG_ENABLE([cacao], + [AS_HELP_STRING(--enable-cacao,use CACAO as VM [[default=no]])], + [ + WITH_CACAO="${enableval}" ], [ WITH_CACAO=no diff -r ce3ea0b5a8c9 -r 839e9e0810ca configure.ac --- a/configure.ac Thu Oct 16 01:28:18 2008 +0100 +++ b/configure.ac Thu Oct 16 01:44:33 2008 +0100 @@ -249,7 +249,7 @@ WITH_NETBEANS_PROFILER_SRC_ZIP WITH_NETBEANS_PROFILER_SRC_ZIP WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP WITH_ALT_JAR_BINARY -AC_CHECK_WITH_CACAO +AC_CHECK_ENABLE_CACAO AC_CHECK_WITH_CACAO_HOME AC_CHECK_WITH_CACAO_SRC_ZIP ENABLE_OPTIMIZATIONS From langel at towel.yyz.redhat.com Sat Oct 18 21:23:35 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:35 +0000 Subject: changeset in /hg/icedtea: 2008-10-15 Lillian Angel changeset 3ef9c9c4e70b in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=3ef9c9c4e70b description: 2008-10-15 Lillian Angel * Makefile.am (EXTRA_DIST): Added fsg.sh. (clean-distlocal): Added jni-common.o. * .hgtags: Reverted. diffstat: 3 files changed, 1882 insertions(+), 2 deletions(-) .hgtags | 1 ChangeLog | 1880 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Makefile.am | 3 diffs (truncated from 1915 to 500 lines): diff -r e5163069475f -r 3ef9c9c4e70b .hgtags --- a/.hgtags Wed Oct 15 12:33:39 2008 -0400 +++ b/.hgtags Wed Oct 15 12:53:13 2008 -0400 @@ -8,4 +8,3 @@ 38e6eb354632588f5ac8dbcd69229ebd031f57cb 38e6eb354632588f5ac8dbcd69229ebd031f57cb icedtea6-1.0 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 -829a4250db6226990fe468c8dc3984e81d203806 icedtea6-1.3 diff -r e5163069475f -r 3ef9c9c4e70b ChangeLog --- a/ChangeLog Wed Oct 15 12:33:39 2008 -0400 +++ b/ChangeLog Wed Oct 15 12:53:13 2008 -0400 @@ -1,3 +1,1883 @@ 2008-10-15 Andrew John Hughes + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added + jni-common.o. + * .hgtags: Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am + (EXTRA_DIST): Added + fsg.sh. + (clean-distlocal): + Added jni-common.o. + * .hgtags: + Reverted.2008-10-15 + Lillian Angel + + + * Makefile.am: + From langel at towel.yyz.redhat.com Sat Oct 18 21:23:35 2008 From: langel at towel.yyz.redhat.com (langel at towel.yyz.redhat.com) Date: Sun, 19 Oct 2008 04:23:35 +0000 Subject: changeset in /hg/icedtea: Added tag icedtea6-1.3 for changeset 8... Message-ID: changeset e5163069475f in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=e5163069475f description: Added tag icedtea6-1.3 for changeset 829a4250db62 diffstat: 1 file changed, 1 insertion(+) .hgtags | 1 + diffs (8 lines): diff -r 829a4250db62 -r e5163069475f .hgtags --- a/.hgtags Wed Oct 15 17:31:55 2008 +0100 +++ b/.hgtags Wed Oct 15 12:33:39 2008 -0400 @@ -8,3 +8,4 @@ 38e6eb354632588f5ac8dbcd69229ebd031f57cb 38e6eb354632588f5ac8dbcd69229ebd031f57cb icedtea6-1.0 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 +829a4250db6226990fe468c8dc3984e81d203806 icedtea6-1.3 From gnu_andrew at member.fsf.org Sat Oct 18 21:23:35 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:35 +0000 Subject: changeset in /hg/icedtea: Add IcedTea version to java -version. Message-ID: changeset 829a4250db62 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=829a4250db62 description: Add IcedTea version to java -version. 2008-10-15 Andrew John Hughes * ChangeLog: Fix typo. * INSTALL: Fix typos and make installation requirements clearer. * Makefile.am: Patch the OpenJDK build with the version of IcedTea being used. Use $(HG) instead of 'hg'. * configure.ac: Check for Mercurial. * patches/icedtea-version.patch: Fix to use IcedTea6. diffstat: 5 files changed, 50 insertions(+), 24 deletions(-) ChangeLog | 15 ++++++++++++++- INSTALL | 16 +++++++++------- Makefile.am | 30 ++++++++++++++++++------------ configure.ac | 2 ++ patches/icedtea-version.patch | 11 +++++++---- diffs (168 lines): diff -r 533fa4be0583 -r 829a4250db62 ChangeLog --- a/ChangeLog Wed Oct 15 17:18:35 2008 +0200 +++ b/ChangeLog Wed Oct 15 17:31:55 2008 +0100 @@ -1,4 +1,17 @@ 2008-10-15 Xerxes R??nby + + * ChangeLog: Fix typo. + * INSTALL: Fix typos and make installation + requirements clearer. + * Makefile.am: + Patch the OpenJDK build with the version + of IcedTea being used. Use $(HG) instead of 'hg'. + * configure.ac: + Check for Mercurial. + * patches/icedtea-version.patch: + Fix to use IcedTea6. + +2008-10-15 Xerxes R??nby * patches/icedtea-arch.patch: Update for m68k. diff -r 533fa4be0583 -r 829a4250db62 INSTALL --- a/INSTALL Wed Oct 15 17:18:35 2008 +0200 +++ b/INSTALL Wed Oct 15 17:31:55 2008 +0100 @@ -1,5 +1,5 @@ Building IcedTea 1.6.0 -Building IcedTea 1.6.0 -====================== +Building IcedTea6 +================= For convenience we've provided make targets that automatically download, extract and patch the source code from openjdk.java.net, in @@ -29,11 +29,13 @@ libpng-devel libpng-devel libjpeg-devel = 6b zlib-devel -rhino -netbeans (harness, platform8, apisupport1, java2, ide9) - for visualvm -jakarta-commons-logging - for visualvm +rhino (can be disabled using --without-rhino) -For builing the PulseAudio based mixer, you will need +For building VisualVM, you will need: +netbeans (harness, platform8, apisupport1, java2, ide9) +jakarta-commons-logging + +For building the PulseAudio based mixer, you will need pulseaudio-libs-devel >= 0.9.11 pulseaudio >= 0.9.11 @@ -97,7 +99,7 @@ that it already provides a JIT for many that it already provides a JIT for many platforms to which HotSpot has not yet been ported, including ppc, ppc64, arm and mips. To use CACAO as the VM, use the --with-cacao option. This will download CACAO -0.99.2 during the build. To use a different version, use +0.99.3 during the build. To use a different version, use --with-cacao-home=

to point to an existing installation which use the Sun VM interface. diff -r 533fa4be0583 -r 829a4250db62 Makefile.am --- a/Makefile.am Wed Oct 15 17:18:35 2008 +0200 +++ b/Makefile.am Wed Oct 15 17:31:55 2008 +0100 @@ -270,7 +270,7 @@ env-ecj: # Mercurial snapshot. snapshot: dist - mv $(DIST_ARCHIVES) $(distdir)-`hg tip --template '{node}'`.tar.gz + mv $(DIST_ARCHIVES) $(distdir)-`$(HG) tip --template '{node}'`.tar.gz # OpenJDK Source Preparation Targets # ================================== @@ -621,7 +621,13 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ false; \ - fi + fi ; \ + if [ -e $(abs_top_srcdir)/.hg ]; then \ + revision="-r`(cd $(srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + icedtea_version="$(PACKAGE_VERSION)$${revision}" ; \ + sed -i "s#IcedTea6#IcedTea6 $${icedtea_version}#" openjdk/jdk/make/common/shared/Defs.gmk + if ENABLE_LIVECONNECT cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ cp -a plugin/icedtea/netscape rt/ @@ -679,7 +685,7 @@ stamps/patch-fsg.stamp: stamps/extract.s echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ false; \ - fi + fi ; clean-patch-fsg: rm -f stamps/patch-fsg.stamp @@ -1446,7 +1452,7 @@ endif endif mkdir -p stamps touch stamps/pulse-java-jar.stamp - + stamps/pulse-java-class.stamp: if ENABLE_PULSE_JAVA mkdir -p $(PULSE_JAVA_CLASS_DIR) @@ -1454,17 +1460,17 @@ if ENABLE_PULSE_JAVA then \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ $(JAVAC) -d ../../../$(PULSE_JAVA_CLASS_DIR) \ - -bootclasspath \ + -bootclasspath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ - org/classpath/icedtea/pulseaudio/*.java\ - ) \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ else \ - (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ - -bootclasspath \ + (cd $(PULSE_JAVA_JAVA_SRCDIR); \ + $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ + -bootclasspath \ '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ - org/classpath/icedtea/pulseaudio/*.java\ - ) \ + org/classpath/icedtea/pulseaudio/*.java\ + ) \ fi cp -r $(PULSE_JAVA_JAVA_SRCDIR)/META-INF $(PULSE_JAVA_CLASS_DIR) endif diff -r 533fa4be0583 -r 829a4250db62 configure.ac --- a/configure.ac Wed Oct 15 17:18:35 2008 +0200 +++ b/configure.ac Wed Oct 15 17:31:55 2008 +0100 @@ -30,6 +30,8 @@ dnl OpenJDK's README-builds.html lists g dnl OpenJDK's README-builds.html lists gawk as a build dependency so we dnl check for it explicitly rather than using AC_PROG_AWK. FIND_TOOL([GAWK], [gawk]) +AC_PATH_TOOL([HG],[hg]) +AC_SUBST([HG]) AC_ARG_WITH([gcj-home], [AS_HELP_STRING([--with-gcj-home], diff -r 533fa4be0583 -r 829a4250db62 patches/icedtea-version.patch --- a/patches/icedtea-version.patch Wed Oct 15 17:18:35 2008 +0200 +++ b/patches/icedtea-version.patch Wed Oct 15 17:31:55 2008 +0100 @@ -1,14 +1,17 @@ ---- openjdk/jdk/make/common/shared/Defs.gmk.orig 2008-09-12 21:05:40.000000000 +0200 -+++ openjdk/jdk/make/common/shared/Defs.gmk 2008-09-12 21:07:14.000000000 +0200 -@@ -194,7 +194,7 @@ +diff -Nru openjdk.orig/jdk/make/common/shared/Defs.gmk openjdk/jdk/make/common/shared/Defs.gmk +--- openjdk.orig/jdk/make/common/shared/Defs.gmk 2008-10-15 15:36:07.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Defs.gmk 2008-10-15 15:36:53.000000000 +0100 +@@ -194,8 +194,8 @@ # Default names ifdef OPENJDK - LAUNCHER_NAME = openjdk +- PRODUCT_NAME = OpenJDK + LAUNCHER_NAME = java - PRODUCT_NAME = OpenJDK ++ PRODUCT_NAME = IcedTea6 PRODUCT_SUFFIX = Runtime Environment JDK_RC_PLATFORM_NAME = Platform + COMPANY_NAME = N/A @@ -260,12 +260,7 @@ JDK_UNDERSCORE_VERSION = $(subst .,_,$(JDK_VERSION)) JDK_MKTG_UNDERSCORE_VERSION = $(subst .,_,$(JDK_MKTG_VERSION)) From gnu_andrew at member.fsf.org Sat Oct 18 21:23:36 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:36 +0000 Subject: changeset in /hg/icedtea: Merge. Message-ID: changeset 173e3d40d94b in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=173e3d40d94b description: Merge. diffstat: 2 files changed, 13 insertions(+), 8 deletions(-) ChangeLog | 5 +++++ Makefile.am | 16 ++++++++-------- diffs (42 lines): diff -r 839e9e0810ca -r 173e3d40d94b ChangeLog --- a/ChangeLog Thu Oct 16 01:44:33 2008 +0100 +++ b/ChangeLog Thu Oct 16 01:46:18 2008 +0100 @@ -14,6 +14,11 @@ 2008-10-16 Andrew John Hughes + + * Makefile.am (EXTRA_DIST): Always include all patches, + irrespective of any configure options. 2008-10-15 Lillian Angel diff -r 839e9e0810ca -r 173e3d40d94b Makefile.am --- a/Makefile.am Thu Oct 16 01:44:33 2008 +0100 +++ b/Makefile.am Thu Oct 16 01:46:18 2008 +0100 @@ -89,15 +89,15 @@ install: $(ICEDTEAPLUGIN_CLEAN) hotspot hotspot-helper clean-extra \ clean-jtreg clean-jtreg-reports clean-visualvm clean-nbplatform -EXTRA_DIST = rt generated $(ICEDTEA_PATCHES) $(ICEDTEA_FSG_PATCHES) \ - $(ICEDTEA_ECJ_PATCH) gcjwebplugin.cc tools-copy contrib ports \ - patches/icedtea-gcc-4.3.patch extra $(ZERO_PATCHES) \ - patches/icedtea-arch.patch patches/icedtea-cacao.patch \ +EXTRA_DIST = rt generated \ + patches/icedtea-*.patch \ + gcjwebplugin.cc tools-copy contrib ports \ + extra overlays \ javaws.png javaws.desktop visualvm.desktop \ - overlays extra jconsole.desktop policytool.desktop \ - test/jtreg patches/icedtea-plugin.patch \ - patches/icedtea-liveconnect.patch IcedTeaPlugin.cc \ - HACKING patches/icedtea-visualvm.patch pulseaudio fsg.sh + jconsole.desktop policytool.desktop \ + test/jtreg \ + IcedTeaPlugin.cc \ + HACKING pulseaudio fsg.sh # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. From gnu_andrew at member.fsf.org Sat Oct 18 21:23:37 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:37 +0000 Subject: changeset in /hg/icedtea: Allow a CACAO IcedTea to build normal ... Message-ID: changeset c926c9674b4c in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=c926c9674b4c description: Allow a CACAO IcedTea to build normal IcedTea and OpenJDK to build IcedTea. 2008-10-16 Andrew John Hughes * Makefile.am: Apply MEMORY_LIMIT setting to OpenJDK builds too and make sure limit is high enough on normal IcedTea builds to build with a CACAO IcedTea. diffstat: 2 files changed, 9 insertions(+), 2 deletions(-) ChangeLog | 7 +++++++ Makefile.am | 4 ++-- diffs (33 lines): diff -r 173e3d40d94b -r c926c9674b4c ChangeLog --- a/ChangeLog Thu Oct 16 01:46:18 2008 +0100 +++ b/ChangeLog Thu Oct 16 02:38:41 2008 +0100 @@ -1,3 +1,10 @@ 2008-10-16 Andrew John Hughes + + * Makefile.am: + Apply MEMORY_LIMIT setting to OpenJDK + builds too and make sure limit is high enough + on normal IcedTea builds to build with a CACAO IcedTea. + 2008-10-16 Andrew John Hughes * acinclude.m4: diff -r 173e3d40d94b -r c926c9674b4c Makefile.am --- a/Makefile.am Thu Oct 16 01:46:18 2008 +0100 +++ b/Makefile.am Thu Oct 16 02:38:41 2008 +0100 @@ -932,13 +932,13 @@ clean-bootstrap-directory-symlink-ecj: # =============== if WITH_ICEDTEA -if WITH_CACAO MEMORY_LIMIT = -J-Xmx1024m else +if WITH_OPENJDK MEMORY_LIMIT = -J-Xmx512m -endif else MEMORY_LIMIT = +endif endif if WITH_CACAO From langel at redhat.com Sat Oct 18 21:23:37 2008 From: langel at redhat.com (Lillian Angel) Date: Sun, 19 Oct 2008 04:23:37 +0000 Subject: changeset in /hg/icedtea: 2008-10-16 Lillian Angel changeset 2a478f4ccb83 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=2a478f4ccb83 description: 2008-10-16 Lillian Angel * configure.ac: Updated version from 1.3 to 1.3.1. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ configure.ac | 2 +- diffs (21 lines): diff -r ae8c53f37fb0 -r 2a478f4ccb83 ChangeLog --- a/ChangeLog Thu Oct 16 13:06:48 2008 +0200 +++ b/ChangeLog Thu Oct 16 11:37:44 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-16 Matthias Klose + + * configure.ac: Updated version from 1.3 to 1.3.1. + 2008-10-16 Matthias Klose * acinclude.m4 (FIND_LIBGCJ_JAR): Fix check, when configuring diff -r ae8c53f37fb0 -r 2a478f4ccb83 configure.ac --- a/configure.ac Thu Oct 16 13:06:48 2008 +0200 +++ b/configure.ac Thu Oct 16 11:37:44 2008 -0400 @@ -1,5 +1,5 @@ AC_PREREQ([2.61]) AC_PREREQ([2.61]) -AC_INIT([icedtea6], [1.3], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6], [1.3.1], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.10 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) AC_CANONICAL_HOST From gnu_andrew at member.fsf.org Sat Oct 18 21:23:38 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:38 +0000 Subject: changeset in /hg/icedtea: Merge IcedTea6. Message-ID: changeset c3ce7b102fa2 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=c3ce7b102fa2 description: Merge IcedTea6. diffstat: 182 files changed, 81771 insertions(+), 5809 deletions(-) .hgignore | 11 .hgtags | 1 AUTHORS | 2 ChangeLog | 766 HACKING | 14 INSTALL | 16 IcedTeaPlugin.cc | 1079 Makefile.am | 372 NEWS | 23 README | 19 acinclude.m4 | 110 configure.ac | 59 fsg.sh | 4 generated/com/sun/corba/se/impl/logging/ActivationSystemException.java | 2 generated/com/sun/corba/se/impl/logging/IORSystemException.java | 2 generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java | 2 generated/com/sun/corba/se/impl/logging/LogStrings.properties | 1 generated/com/sun/corba/se/impl/logging/NamingSystemException.java | 2 generated/com/sun/corba/se/impl/logging/OMGSystemException.java | 2 generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java | 30 generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource | 1 generated/com/sun/corba/se/impl/logging/POASystemException.java | 2 generated/com/sun/corba/se/impl/logging/UtilSystemException.java | 2 generated/sun/misc/Version.java | 4 generated/sun/tools/jconsole/Version.java | 2 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/CHANGES.txt | 44 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelByteBuffer.java | 26 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelInstrument.java | 4 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftChannel.java | 52 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftCubicResampler.java | 2 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMainMixer.java | 51 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMixingMixer.java | 56 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftReverb.java | 341 overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftSynthesizer.java | 220 overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/Launcher.java | 1 overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/NetxPanel.java | 16 overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/runtime/JNLPRuntime.java | 9 overlays/openjdk/jdk/src/share/classes/net/sourceforge/nanoxml/XMLElement.java | 4 overlays/openjdk/jdk/test/com/sun/media/sound/AudioFloatConverter/ToFloatArray.java | 29 overlays/openjdk/jdk/test/com/sun/media/sound/SoftAudioSynthesizer/Open.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetLatency.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceiver.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceiver2.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceivers.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetTransmitter.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetTransmitters.java | 2 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/ImplicitOpenClose.java | 6 overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/Open.java | 6 patches/icedtea-6700047-loopopts.patch | 34 patches/icedtea-6712835-ifnode.patch | 25 patches/icedtea-6open-6616825.patch | 294 patches/icedtea-6open-6651382.patch | 116 patches/icedtea-6open-6756202.patch | 20 patches/icedtea-arch.patch | 389 patches/icedtea-clean-crypto.patch | 606 patches/icedtea-ecj-spp.patch | 65 patches/icedtea-ecj.patch | 263 patches/icedtea-hotspot-6b12-7b24.patch |56979 ++++++++++ patches/icedtea-lc_ctype.patch | 23 patches/icedtea-liveconnect.patch | 3361 patches/icedtea-lucene-crash.patch | 64 patches/icedtea-messageutils.patch | 12 patches/icedtea-pulse-soundproperties.patch | 16 patches/icedtea-shark.patch | 115 patches/icedtea-visualvm.patch | 26 patches/icedtea-webstart.patch | 275 plugin/icedtea/netscape/javascript/JSException.java | 140 plugin/icedtea/netscape/javascript/JSObject.java | 258 plugin/icedtea/netscape/javascript/JSProxy.java | 58 plugin/icedtea/netscape/javascript/JSRunnable.java | 70 plugin/icedtea/netscape/javascript/JSUtil.java | 59 plugin/icedtea/sun/applet/AppletSecurityContextManager.java | 33 plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java | 76 plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java | 75 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 1171 plugin/icedtea/sun/applet/PluginAppletViewer.java | 1496 plugin/icedtea/sun/applet/PluginCallRequest.java | 85 plugin/icedtea/sun/applet/PluginCallRequestFactory.java | 20 plugin/icedtea/sun/applet/PluginClassLoader.java | 13 plugin/icedtea/sun/applet/PluginDebug.java | 13 plugin/icedtea/sun/applet/PluginException.java | 15 plugin/icedtea/sun/applet/PluginMain.java | 188 plugin/icedtea/sun/applet/PluginMessageConsumer.java | 67 plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java | 78 plugin/icedtea/sun/applet/PluginObjectStore.java | 132 plugin/icedtea/sun/applet/PluginStreamHandler.java | 367 plugin/icedtea/sun/applet/RequestQueue.java | 39 plugin/icedtea/sun/applet/TestEnv.java | 172 plugin/icedtea/sun/applet/VoidPluginCallRequest.java | 68 ports/hotspot/make/linux/makefiles/shark.make | 1 ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp | 4 ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp | 184 ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp | 6 ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp | 49 ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp | 7 ports/hotspot/src/cpu/zero/vm/frame_zero.cpp | 26 ports/hotspot/src/cpu/zero/vm/frame_zero.hpp | 21 ports/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp | 11 ports/hotspot/src/cpu/zero/vm/interpreterFrame_zero.hpp | 9 ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp | 12 ports/hotspot/src/cpu/zero/vm/nativeInst_zero.cpp | 54 ports/hotspot/src/cpu/zero/vm/nativeInst_zero.hpp | 4 ports/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp | 4 ports/hotspot/src/cpu/zero/vm/sharkFrame_zero.hpp | 2 ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp | 126 ports/hotspot/src/cpu/zero/vm/stack_zero.hpp | 43 ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp | 99 ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp | 9 ports/hotspot/src/share/vm/includeDB_shark | 57 ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 1438 ports/hotspot/src/share/vm/shark/sharkBlock.hpp | 319 ports/hotspot/src/share/vm/shark/sharkBuilder.cpp | 2 ports/hotspot/src/share/vm/shark/sharkBuilder.hpp | 2 ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.cpp | 114 ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.hpp | 49 ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 225 ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 353 ports/hotspot/src/share/vm/shark/sharkCompiler.cpp | 51 ports/hotspot/src/share/vm/shark/sharkCompiler.hpp | 8 ports/hotspot/src/share/vm/shark/sharkConstantPool.cpp | 23 ports/hotspot/src/share/vm/shark/sharkConstantPool.hpp | 1 ports/hotspot/src/share/vm/shark/sharkEntry.cpp | 15 ports/hotspot/src/share/vm/shark/sharkFunction.cpp | 138 ports/hotspot/src/share/vm/shark/sharkFunction.hpp | 122 ports/hotspot/src/share/vm/shark/sharkMonitor.cpp | 40 ports/hotspot/src/share/vm/shark/sharkMonitor.hpp | 10 ports/hotspot/src/share/vm/shark/sharkRuntime.cpp | 437 ports/hotspot/src/share/vm/shark/sharkRuntime.hpp | 89 ports/hotspot/src/share/vm/shark/sharkState.cpp | 414 ports/hotspot/src/share/vm/shark/sharkState.hpp | 127 ports/hotspot/src/share/vm/shark/sharkState.inline.hpp | 49 ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 101 ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 76 ports/hotspot/src/share/vm/shark/sharkType.cpp | 4 ports/hotspot/src/share/vm/shark/sharkValue.hpp | 395 ports/hotspot/src/share/vm/shark/sharkValue.inline.hpp | 34 pulseaudio/AUTHORS | 5 pulseaudio/COPYING | 340 pulseaudio/README | 28 pulseaudio/src/java/META-INF/services/javax.sound.sampled.spi.MixerProvider | 3 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextEvent.java | 56 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextListener.java | 44 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 280 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java | 147 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java | 581 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java | 484 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java | 118 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java | 892 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerInfo.java | 62 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerProvider.java | 63 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMuteControl.java | 78 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPlaybackLine.java | 54 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 157 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 339 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 92 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java | 373 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 93 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java | 90 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java | 777 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamBufferAttributes.java | 84 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamSampleSpecification.java | 70 pulseaudio/src/native/jni-common.c | 236 pulseaudio/src/native/jni-common.h | 90 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_EventLoop.c | 362 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Operation.c | 83 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c | 102 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c | 67 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c | 107 pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Stream.c | 1010 pulseaudio/testsounds/README | 4 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/OtherSoundProvidersAvailableTest.java | 114 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java | 623 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioEventLoopOverhead.java | 100 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerProviderTest.java | 118 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerRawTest.java | 120 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java | 434 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineRawTest.java | 305 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java | 1345 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java | 122 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java | 648 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java | 122 visualvm.desktop | 9 diffs (truncated from 92449 to 500 lines): diff -r 7fad5dbdf081 -r c3ce7b102fa2 .hgignore --- a/.hgignore Sat Sep 27 03:24:44 2008 +0100 +++ b/.hgignore Fri Oct 17 02:23:55 2008 +0100 @@ -22,6 +22,7 @@ javac javac javap gcjwebplugin.so +jni-common.o IcedTeaPlugin.o IcedTeaPlugin.so extra-source-files.txt @@ -440,4 +441,14 @@ rt/javax/net/ssl/X509TrustManager.java rt/javax/net/ssl/X509TrustManager.java rt/java/io/ rt/sun/awt +rt/netscape/javascript/JSException.java +rt/netscape/javascript/JSObject.java +rt/netscape/javascript/JSProxy.java +rt/netscape/javascript/JSRunnable.java +rt/netscape/javascript/JSUtil.java generated/sun/awt/X11/generator/sizer.32.orig +pulseaudio/bin +pulseaudio/.*\.o +pulseaudio/src/native/org_.*.h +pulseaudio/.*jar +pulse-java.jar diff -r 7fad5dbdf081 -r c3ce7b102fa2 .hgtags --- a/.hgtags Sat Sep 27 03:24:44 2008 +0100 +++ b/.hgtags Fri Oct 17 02:23:55 2008 +0100 @@ -9,3 +9,4 @@ a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 8bbc4ffe2c7c542f9aa7d26f823e50f0dd036ce9 icedtea-1.7 +3ef9c9c4e70b8204b73fa9b88243f49f59c2a23f icedtea6-1.3 diff -r 7fad5dbdf081 -r c3ce7b102fa2 AUTHORS --- a/AUTHORS Sat Sep 27 03:24:44 2008 +0100 +++ b/AUTHORS Fri Oct 17 02:23:55 2008 +0100 @@ -11,10 +11,12 @@ Andrew John Hughes Matthias Klose Francis Kung +DJ Lucas Casey Marshall Dan Munckton Raif Naffah Bernhard Rosenkr??nzer +Marc Schoenefeld Keith Seitz Joshua Sumali Christian Thalinger diff -r 7fad5dbdf081 -r c3ce7b102fa2 ChangeLog --- a/ChangeLog Sat Sep 27 03:24:44 2008 +0100 +++ b/ChangeLog Fri Oct 17 02:23:55 2008 +0100 @@ -1,3 +1,583 @@ 2008-09-27 Andrew John Hughes + + * patches/icedtea-hotspot7-tests.patch: Removed. + * acinclude.m4: Fix naming of netbeans profiler zip option. + +2008-10-16 Andrew John Hughes + + Merge from IcedTea6. + * .hgignore, + * .hgtags, + * AUTHORS, + * ChangeLog, + * HACKING, + * INSTALL, + * IcedTeaPlugin.cc, + * Makefile.am, + * NEWS, + * README, + * acinclude.m4, + * configure.ac, + * fsg.sh, + * generated/com/sun/corba/se/impl/logging/ActivationSystemException.java, + * generated/com/sun/corba/se/impl/logging/IORSystemException.java, + * generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java, + * generated/com/sun/corba/se/impl/logging/LogStrings.properties, + * generated/com/sun/corba/se/impl/logging/NamingSystemException.java, + * generated/com/sun/corba/se/impl/logging/OMGSystemException.java, + * generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java, + * generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource, + * generated/com/sun/corba/se/impl/logging/POASystemException.java, + * generated/com/sun/corba/se/impl/logging/UtilSystemException.java, + * generated/sun/misc/Version.java, + * generated/sun/tools/jconsole/Version.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/CHANGES.txt, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelByteBuffer.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/ModelInstrument.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftChannel.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftCubicResampler.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMainMixer.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftMixingMixer.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftReverb.java, + * overlays/openjdk/jdk/src/share/classes/com/sun/media/sound/SoftSynthesizer.java, + * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/Launcher.java, + * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/NetxPanel.java, + * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/runtime/JNLPRuntime.java, + * overlays/openjdk/jdk/src/share/classes/net/sourceforge/nanoxml/XMLElement.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/AudioFloatConverter/ToFloatArray.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftAudioSynthesizer/Open.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetLatency.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceiver.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceiver2.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetReceivers.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetTransmitter.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/GetTransmitters.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/ImplicitOpenClose.java, + * overlays/openjdk/jdk/test/com/sun/media/sound/SoftSynthesizer/Open.java, + * patches/icedtea-6700047-loopopts.patch, + * patches/icedtea-6712835-ifnode.patch, + * patches/icedtea-6open-6616825.patch, + * patches/icedtea-6open-6651382.patch, + * patches/icedtea-6open-6756202.patch, + * patches/icedtea-arch.patch, + * patches/icedtea-clean-crypto.patch, + * patches/icedtea-ecj-spp.patch, + * patches/icedtea-ecj.patch, + * patches/icedtea-hotspot-6b12-7b24.patch, + * patches/icedtea-lc_ctype.patch, + * patches/icedtea-liveconnect.patch, + * patches/icedtea-lucene-crash.patch, + * patches/icedtea-messageutils.patch, + * patches/icedtea-pulse-soundproperties.patch, + * patches/icedtea-shark.patch, + * patches/icedtea-visualvm.patch, + * patches/icedtea-webstart.patch, + * plugin/icedtea/netscape/javascript/JSException.java, + * plugin/icedtea/netscape/javascript/JSObject.java, + * plugin/icedtea/netscape/javascript/JSProxy.java, + * plugin/icedtea/netscape/javascript/JSRunnable.java, + * plugin/icedtea/netscape/javascript/JSUtil.java, + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java, + * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java, + * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java, + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java, + * plugin/icedtea/sun/applet/PluginAppletViewer.java, + * plugin/icedtea/sun/applet/PluginCallRequest.java, + * plugin/icedtea/sun/applet/PluginCallRequestFactory.java, + * plugin/icedtea/sun/applet/PluginClassLoader.java, + * plugin/icedtea/sun/applet/PluginDebug.java, + * plugin/icedtea/sun/applet/PluginException.java, + * plugin/icedtea/sun/applet/PluginMain.java, + * plugin/icedtea/sun/applet/PluginMessageConsumer.java, + * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java, + * plugin/icedtea/sun/applet/PluginObjectStore.java, + * plugin/icedtea/sun/applet/PluginStreamHandler.java, + * plugin/icedtea/sun/applet/RequestQueue.java, + * plugin/icedtea/sun/applet/TestEnv.java, + * plugin/icedtea/sun/applet/VoidPluginCallRequest.java, + * ports/hotspot/make/linux/makefiles/shark.make, + * ports/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp, + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/deoptimizerFrame_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/disassembler_zero.cpp, + * ports/hotspot/src/cpu/zero/vm/frame_zero.cpp, + * ports/hotspot/src/cpu/zero/vm/frame_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp, + * ports/hotspot/src/cpu/zero/vm/interpreterFrame_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/interpreter_zero.cpp, + * ports/hotspot/src/cpu/zero/vm/nativeInst_zero.cpp, + * ports/hotspot/src/cpu/zero/vm/nativeInst_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp, + * ports/hotspot/src/cpu/zero/vm/sharkFrame_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/stackPrinter_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/stack_zero.hpp, + * ports/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp, + * ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp, + * ports/hotspot/src/share/vm/includeDB_shark, + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, + * ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.cpp, + * ports/hotspot/src/share/vm/shark/sharkBytecodeTracer.hpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, + * ports/hotspot/src/share/vm/shark/sharkConstantPool.cpp, + * ports/hotspot/src/share/vm/shark/sharkConstantPool.hpp, + * ports/hotspot/src/share/vm/shark/sharkEntry.cpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, + * ports/hotspot/src/share/vm/shark/sharkMonitor.cpp, + * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, + * ports/hotspot/src/share/vm/shark/sharkState.cpp, + * ports/hotspot/src/share/vm/shark/sharkState.hpp, + * ports/hotspot/src/share/vm/shark/sharkState.inline.hpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, + * ports/hotspot/src/share/vm/shark/sharkType.cpp, + * ports/hotspot/src/share/vm/shark/sharkValue.hpp, + * ports/hotspot/src/share/vm/shark/sharkValue.inline.hpp, + * pulseaudio/AUTHORS, + * pulseaudio/COPYING, + * pulseaudio/README, + * pulseaudio/src/java/META-INF/services/javax.sound.sampled.spi.MixerProvider, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextEvent.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/ContextListener.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioLine.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerInfo.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixerProvider.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMuteControl.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPlaybackLine.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioVolumeControl.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamBufferAttributes.java, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/StreamSampleSpecification.java, + * pulseaudio/src/native/jni-common.c, + * pulseaudio/src/native/jni-common.h, + * pulseaudio/src/native/org_classpath_icedtea_pulseaudio_EventLoop.c, + * pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Operation.c, + * pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioSourcePort.c, + * pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c, + * pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c, + * pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Stream.c, + * pulseaudio/testsounds/README, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/OtherSoundProvidersAvailableTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioEventLoopOverhead.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerProviderTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerRawTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineRawTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLineTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioSourcePortTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetPortTest.java, + * visualvm.desktop: Updated. + +2008-10-16 Andrew John Hughes + + * Makefile.am: + Apply MEMORY_LIMIT setting to OpenJDK + builds too and make sure limit is high enough + on normal IcedTea builds to build with a CACAO IcedTea. + +2008-10-16 Andrew John Hughes + + * acinclude.m4: + Change --with-cacao to be --enable-cacao + as it only accepts yes and no. + * configure.ac: + Rename cacao macro appropriately. + +2008-10-16 Andrew John Hughes + + * Makefile.am: + Make use of ALT_NETBEANS_BASIC_CLUSTER_SRC_ZIP. + * acinclude.m4: + Add --with-netbeans-basic-cluster-src-zip option. + * configure.ac: + Enable WITH_NETBEANS_BASIC_CLUSTER_SRC_ZIP macro. + +2008-10-15 Mark Wielaard + + * Makefile.am (EXTRA_DIST): Always include all patches, + irrespective of any configure options. + +2008-10-15 Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added fsg.sh. + (clean-distlocal): Added jni-common.o. + * .hgtags: Reverted. + +2008-10-15 Andrew John Hughes + + * ChangeLog: Fix typo. + * INSTALL: Fix typos and make installation + requirements clearer. + * Makefile.am: + Patch the OpenJDK build with the version + of IcedTea being used. Use $(HG) instead of 'hg'. + * configure.ac: + Check for Mercurial. + * patches/icedtea-version.patch: + Fix to use IcedTea6. + +2008-10-15 Xerxes R??nby + + * patches/icedtea-arch.patch: Update for m68k. + +2008-10-15 Mark Wielaard + + * NEWS: Add hint about using different rhino versions. + +2008-10-15 Matthias Klose + + * NEWS: Add support for more ports for Zero builds. + +2008-10-15 Mark Wielaard + + * NEWS: Add Rhino javascript and cleaned up crypto support. + +2008-10-15 Lillian Angel + + * NEWS: Updated for 1.3 release. + +2008-10-15 Matthias Klose + + * patches/icedtea-hotspot-6b11-7b24.patch: Remove. + +2008-10-14 Ioana Ivan + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): startedListener only sends a START event when playback first + starts and after an underflow + (start): sends a START event if there's data on the line + +2008-10-14 Ioana Ivan + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (connectLine): changed bufferAttributes to fix crackling in the clip tests + + +2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpat/icedtea/pulseaudio/PulseAudioDataLine.java + (connect): Removed debug output. + +2008-10-14 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (read): Commented out debug output. + +2008-10-14 Omair Majid + + * Makefile.am (clean-pulse-java): Dont attempt to remove jni-common.o from + current directory. + +2008-10-14 Omair Majid + + * .hgignore: Added pulse-java.jar to ignore list. + * Makefile.am: Move jni-common.o out of the way when done. + +2008-10-14 Lillian Angel + + * INSTALL: Updated requirements. + +2008-10-14 Omair Majid + + * Makefile.am (stamps/pulse-java.stamp): Added + -I$(ICEDTEA_BOOT_DIR)/include/linux. + + +2008-10-14 Omair Majid + + * .hgignore: Added generated files to ignore list. + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java + (EventLoop): Initialize eventLoop object on construction. + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip.java + (PulseAudioClip): Removed the parameter eventLoop. + (getMicrosecondLength): Return time in microseconds. + (getMicrosecondPosition): Likewise. + (open): Dont throw an exception if Mixer is not open. Let super handle it. + (setFramePosition): Check frame position for being positive. + (setLoopPoints): Check that the starting frame is valid. + (setMicrosecondPosition): Deal with negative value and values over the + maximum. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine.java + (open): Open the mixer if it isnt open. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java + (getLine): Dont pass eventLoop as a paramter. + (close): Close all open lines on exit. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java + (PulseAudioPort): Modified to not take an EventLoop paramter. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (PulseAudioSourceDataLine): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java + (PulseAudioSourcePort): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLine.java + (PulseAudioTargetDataLine): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java + (PulseAudioTargetPort): Likewise. + + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioTargetDataLineTest.java + (testMixerKnowsAboutOpenLines): Work even if mixer has some lines + initially open. + +2008-10-12 Matthias Klose + + * Makefile.am (stamps/pulse-java.stamp): Add -I$(ICEDTEA_BOOT_DIR)/include + to build the source files. + +2008-10-11 Matthias Klose + + * Makefile.am (clean-pulse-java): Don't rm -rf / if configuring + without pulseaudio, remove jni-common.o. + + * Makefile.am (stamps/pulse-java.stamp): Remove -fpic flag, add + -fPIC to build jni-common.c. (gcjwebplugin.so): Use -fPIC. + +2008-10-10 Ioana Ivan + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioMixer.java + (getLine): LineUnavailablException is no longer thrown if the mixer is + not open + (getTargetLines) : returns a Line[] array instead of a + TargetDataLine[] array + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioDataLine + (open(AudioFormat format, int bufferSize)): throws + LineUnavailableException if the mixer is not open + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioClip + (open()): throws LineUnavailableException if the mixer is not open + + * src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort + (PulseAudioPort): calls open() + +2008-10-10 Ioana Ivan + Omair Majid + + * INSTALL: Updated to reflect requirements for pulse-java. + * Makefile.am + (distclean-local): Clean up pulse-java. + (EXTRA_DIST): Add pulseaudio folder. + (stamps/icedtea.stamp): Added dependency on stamps/pulse-java.stamp. Also + copy generated .jar and .so files to the jre images. + (stamps/icedtea-debug.stamp): Likewise. + (stamps/pulse-java.stamp): New target. + (stamps/pulse-java-jar.stamp): Likewise. + (stamps/pulse-java-class.stamp): Likewise. + (stamps/pulse-java-headers.stamp): Likewise. + (clean-pulse-java): Likewise. + * README: Added note for PulseAudio based mixer. + * acinclude.m4 + (FIND_PULSEAUDIO): Find the pulseaudio binary. + * configure.ac: Check for pulseaudio server and header files being + installed. + * patches/icedtea-pulse-soundproperties.patch: Dont use pulse-java as the + default Mixer. + * pulseaudio/: Copied over sources from pulseaudio repository. + +2008-10-09 Gary Benson + Andrew Haley + + * patches/icedtea-hotspot-citypeflow.patch: Reinstated. + * Makefile.am (ZERO_PATCHES): Apply the above for HotSpot 7 builds. + + * ports/hotspot/build/linux/makefiles/shark.make: + Remove workaround for the above. + +2008-10-09 Matthias Klose + + * patches/icedtea-6open-6616825.patch: New. + * patches/icedtea-6open-6651382.patch: New. + * patches/icedtea-6open-6756202.patch: New. + * Makefile.am: Apply patches. + +2008-10-08 Deepak Bhole + * IcedTeaPlugin.cc: Implemented JS->Java security. + * plugin/icedtea/sun/applet/AppletSecurityContextManager.java: Same. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Same. Also, + remove ambiguity from class finding mechanism for cases where JS needs a + signature involving an applet specific class. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Implemented JS->Java + security. + * plugin/icedtea/sun/applet/PluginObjectStore.java: Same. + * plugin/icedtea/sun/applet/PluginStreamHandler.java: Rewrote code that + parsed messages from C++ side -- now it can handle any number of optional + components. + +2008-10-07 Gary Benson + Andrew Haley + + * ports/hotspot/src/share/vm/shark/sharkMonitor.hpp + (object): Add missing return statement. + (displaced_header): Likewise. + + * ports/hotspot/build/linux/makefiles/shark.make: + Remove workaround for the above. + +2008-10-07 Matthias Klose + + * Makefile.am: Don't rely on versioned cacao source directory. + +2008-10-06 Matthias Klose + + * generated/sun/misc/Version.java: Regenerate for 6b12. + * generated/sun/tools/jconsole/Version.java: Likewise. + +2008-10-06 Matthias Klose From doko at ubuntu.com Sat Oct 18 21:23:37 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 04:23:37 +0000 Subject: changeset in /hg/icedtea: 2008-10-16 Matthias Klose changeset ae8c53f37fb0 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ae8c53f37fb0 description: 2008-10-16 Matthias Klose * acinclude.m4 (FIND_LIBGCJ_JAR): Fix check, when configuring without --with-libgcj-jar. diffstat: 2 files changed, 17 insertions(+), 11 deletions(-) ChangeLog | 5 +++++ acinclude.m4 | 23 ++++++++++++----------- diffs (48 lines): diff -r c926c9674b4c -r ae8c53f37fb0 ChangeLog --- a/ChangeLog Thu Oct 16 02:38:41 2008 +0100 +++ b/ChangeLog Thu Oct 16 13:06:48 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-16 Andrew John Hughes + + * acinclude.m4 (FIND_LIBGCJ_JAR): Fix check, when configuring + without --with-libgcj-jar. + 2008-10-16 Andrew John Hughes * Makefile.am: diff -r c926c9674b4c -r ae8c53f37fb0 acinclude.m4 --- a/acinclude.m4 Thu Oct 16 02:38:41 2008 +0100 +++ b/acinclude.m4 Thu Oct 16 13:06:48 2008 +0200 @@ -255,20 +255,21 @@ AC_DEFUN([FIND_LIBGCJ_JAR], ]) if test -z "${LIBGCJ_JAR}"; then AC_MSG_CHECKING(for libgcj-4.3.*.jar, libgcj-4.2.*.jar or libgcj-4.1.*.jar) - if test -e /usr/share/java/libgcj-4.3.*.jar; then - LIBGCJ_JAR=/usr/share/java/libgcj-4.3.*.jar + for jar in /usr/share/java/libgcj-4.3*.jar; do + test -e $jar && LIBGCJ_JAR=$jar + done + if test -n ${LIBGCJ_JAR}; then AC_MSG_RESULT(${LIBGCJ_JAR}) else - AM_CONDITIONAL(GCC_OLD, test x = x) - if test -e /usr/share/java/libgcj-4.2.*.jar; then - LIBGCJ_JAR=/usr/share/java/libgcj-4.2.*.jar - AC_MSG_RESULT(${LIBGCJ_JAR}) - elif test -e /usr/share/java/libgcj-4.1.*.jar; then - LIBGCJ_JAR=/usr/share/java/libgcj-4.1.*.jar - AC_MSG_RESULT(${LIBGCJ_JAR}) - else + AM_CONDITIONAL(GCC_OLD, test x = x) + for jar in /usr/share/java/libgcj-4.1*.jar /usr/share/java/libgcj-4.2*.jar; do + test -e $jar && LIBGCJ_JAR=$jar + done + if test -n ${LIBGCJ_JAR}; then + AC_MSG_RESULT(${LIBGCJ_JAR}) + else AC_MSG_RESULT(no) - fi + fi fi fi if test -z "${LIBGCJ_JAR}"; then From gnu_andrew at member.fsf.org Sat Oct 18 21:23:39 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:39 +0000 Subject: changeset in /hg/icedtea: Remove OpenJDK6 backports and reroll a... Message-ID: changeset d7d27a7f9673 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d7d27a7f9673 description: Remove OpenJDK6 backports and reroll arch patch. diffstat: 6 files changed, 48 insertions(+), 795 deletions(-) ChangeLog | 10 Makefile.am | 3 patches/icedtea-6open-6616825.patch | 294 ------------------------- patches/icedtea-6open-6651382.patch | 116 ---------- patches/icedtea-6open-6756202.patch | 20 - patches/icedtea-arch.patch | 400 +++-------------------------------- diffs (truncated from 933 to 500 lines): diff -r c3ce7b102fa2 -r d7d27a7f9673 ChangeLog --- a/ChangeLog Fri Oct 17 02:23:55 2008 +0100 +++ b/ChangeLog Fri Oct 17 02:52:46 2008 +0100 @@ -1,3 +1,13 @@ 2008-10-16 Andrew John Hughes + + * patches/icedtea-6open-6616825.patch, + * patches/icedtea-6open-6651382.patch, + * patches/icedtea-6open-6756202.patch: + Removed. + * Makefile.am: Remove unneeded backported + OpenJDK6 patches. + * patches/icedtea-arch.patch: Rerolled. + 2008-10-16 Andrew John Hughes * patches/icedtea-hotspot7-tests.patch: Removed. diff -r c3ce7b102fa2 -r d7d27a7f9673 Makefile.am --- a/Makefile.am Fri Oct 17 02:23:55 2008 +0100 +++ b/Makefile.am Fri Oct 17 02:52:46 2008 +0100 @@ -586,9 +586,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-signed-types.patch \ patches/icedtea-lc_ctype.patch \ patches/icedtea-messageutils.patch \ - patches/icedtea-6open-6616825.patch \ - patches/icedtea-6open-6651382.patch \ - patches/icedtea-6open-6756202.patch \ $(VISUALVM_PATCH) if WITH_RHINO diff -r c3ce7b102fa2 -r d7d27a7f9673 patches/icedtea-6open-6616825.patch --- a/patches/icedtea-6open-6616825.patch Fri Oct 17 02:23:55 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,294 +0,0 @@ ---- openjdk/jdk/src/share/classes/javax/management/ObjectName.java Wed Oct 8 06:07:09 2008 -+++ openjdk/jdk/src/share/classes/javax/management/ObjectName.java Wed Oct 8 06:07:09 2008 -@@ -37,9 +37,6 @@ - import java.util.HashMap; - import java.util.Hashtable; - import java.util.Map; --import javax.management.MBeanServer; --import javax.management.MalformedObjectNameException; --import javax.management.QueryExp; - - /** - *

Represents the object name of an MBean, or a pattern that can -@@ -1159,9 +1156,19 @@ - // - //in.defaultReadObject(); - final ObjectInputStream.GetField fields = in.readFields(); -+ String propListString = -+ (String)fields.get("propertyListString", ""); -+ -+ // 6616825: take care of property patterns -+ final boolean propPattern = -+ fields.get("propertyPattern" , false); -+ if (propPattern) { -+ propListString = -+ (propListString.length()==0?"*":(propListString+",*")); -+ } -+ - cn = (String)fields.get("domain", "default")+ -- ":"+ -- (String)fields.get("propertyListString", ""); -+ ":"+ propListString; - } else { - // Read an object serialized in the new serial form - // -@@ -1795,6 +1802,7 @@ - * @return True if object is an ObjectName whose - * canonical form is equal to that of this ObjectName. - */ -+ @Override - public boolean equals(Object object) { - - // same object case -@@ -1818,6 +1826,7 @@ - * Returns a hash code for this object name. - * - */ -+ @Override - public int hashCode() { - return _canonicalName.hashCode(); - } ---- openjdk/jdk/test/javax/management/ObjectName/SerialCompatTest.java Wed Oct 8 06:07:12 2008 -+++ openjdk/jdk/test/javax/management/ObjectName/SerialCompatTest.java Wed Oct 8 06:07:12 2008 -@@ -23,9 +23,9 @@ - - /* - * @test -- * @bug 6211220 -+ * @bug 6211220 6616825 - * @summary Test that jmx.serial.form=1.0 works for ObjectName -- * @author Eamonn McManus -+ * @author Eamonn McManus, Daniel Fuchs - * @run clean SerialCompatTest - * @run build SerialCompatTest - * @run main/othervm SerialCompatTest -@@ -36,20 +36,8 @@ - import javax.management.ObjectName; - - public class SerialCompatTest { -- public static void main(String[] args) throws Exception { -- System.setProperty("jmx.serial.form", "1.0"); -+ public static void check6211220() throws Exception { - -- /* Check that we really are in jmx.serial.form=1.0 mode. -- The property is frozen the first time the ObjectName class -- is referenced so checking that it is set to the correct -- value now is not enough. */ -- ObjectStreamClass osc = ObjectStreamClass.lookup(ObjectName.class); -- if (osc.getFields().length != 6) { -- throw new Exception("Not using old serial form: fields: " + -- Arrays.asList(osc.getFields())); -- // new serial form has no fields, uses writeObject -- } -- - ObjectName on = new ObjectName("a:b=c"); - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - ObjectOutputStream oos = new ObjectOutputStream(bos); -@@ -62,53 +50,192 @@ - - // if the bug is present, these will get NullPointerException - for (int i = 0; i <= 11; i++) { -+ String msg = "6211220 case("+i+")"; - try { - switch (i) { - case 0: -- check(on1.getDomain().equals("a")); break; -+ check(msg, on1.getDomain().equals("a")); break; - case 1: -- check(on1.getCanonicalName().equals("a:b=c")); break; -+ check(msg, on1.getCanonicalName().equals("a:b=c")); break; - case 2: -- check(on1.getKeyPropertyListString().equals("b=c")); break; -+ check(msg, on1.getKeyPropertyListString().equals("b=c")); -+ break; - case 3: -- check(on1.getCanonicalKeyPropertyListString().equals("b=c")); -+ check(msg, on1.getCanonicalKeyPropertyListString() -+ .equals("b=c")); - break; - case 4: -- check(on1.getKeyProperty("b").equals("c")); break; -+ check(msg, on1.getKeyProperty("b").equals("c")); break; - case 5: -- check(on1.getKeyPropertyList() -+ check(msg, on1.getKeyPropertyList() - .equals(Collections.singletonMap("b", "c"))); break; - case 6: -- check(!on1.isDomainPattern()); break; -+ check(msg, !on1.isDomainPattern()); break; - case 7: -- check(!on1.isPattern()); break; -+ check(msg, !on1.isPattern()); break; - case 8: -- check(!on1.isPropertyPattern()); break; -+ check(msg, !on1.isPropertyPattern()); break; - case 9: -- check(on1.equals(on)); break; -+ check(msg, on1.equals(on)); break; - case 10: -- check(on.equals(on1)); break; -+ check(msg, on.equals(on1)); break; - case 11: -- check(on1.apply(on)); break; -+ check(msg, on1.apply(on)); break; - default: -+ throw new Exception(msg+": Test incorrect"); -+ } -+ } catch (Exception e) { -+ System.out.println(msg+": Test failed with exception:"); -+ e.printStackTrace(System.out); -+ failed = true; -+ } -+ } -+ -+ if (failed) -+ throw new Exception("Some tests for 6211220 failed"); -+ else -+ System.out.println("All tests for 6211220 passed"); -+ } -+ -+ static void checkName(String testname, ObjectName on) -+ throws Exception { -+ ByteArrayOutputStream bos = new ByteArrayOutputStream(); -+ ObjectOutputStream oos = new ObjectOutputStream(bos); -+ oos.writeObject(on); -+ oos.close(); -+ byte[] bytes = bos.toByteArray(); -+ ByteArrayInputStream bis = new ByteArrayInputStream(bytes); -+ ObjectInputStream ois = new ObjectInputStream(bis); -+ ObjectName on1 = (ObjectName) ois.readObject(); -+ // if the bug is present, these will get NullPointerException -+ for (int i = 0; i <= 11; i++) { -+ String msg = testname + " case("+i+")"; -+ try { -+ switch (i) { -+ case 0: -+ check(msg,on1.getDomain().equals(on.getDomain())); -+ break; -+ case 1: -+ check(msg,on1.getCanonicalName(). -+ equals(on.getCanonicalName())); -+ break; -+ case 2: -+ check(msg,on1.getKeyPropertyListString(). -+ equals(on.getKeyPropertyListString())); break; -+ case 3: -+ check(msg,on1.getCanonicalKeyPropertyListString(). -+ equals(on.getCanonicalKeyPropertyListString())); -+ break; -+ case 4: -+ for (Object ko : on1.getKeyPropertyList().keySet()) { -+ final String key = (String) ko; -+ check(msg,on1.getKeyProperty(key). -+ equals(on.getKeyProperty(key))); -+ } -+ for (Object ko : on.getKeyPropertyList().keySet()) { -+ final String key = (String) ko; -+ check(msg,on1.getKeyProperty(key). -+ equals(on.getKeyProperty(key))); -+ } -+ case 5: -+ check(msg,on1.getKeyPropertyList() -+ .equals(on.getKeyPropertyList())); break; -+ case 6: -+ check(msg,on1.isDomainPattern()==on.isDomainPattern()); -+ break; -+ case 7: -+ check(msg,on1.isPattern()==on.isPattern()); break; -+ case 8: -+ check(msg, -+ on1.isPropertyPattern()==on.isPropertyPattern()); break; -+ case 9: -+ check(msg,on1.equals(on)); break; -+ case 10: -+ check(msg,on.equals(on1)); break; -+ case 11: -+ if (!on.isPattern()) -+ check(msg,on1.apply(on)); break; -+ default: - throw new Exception("Test incorrect: case: " + i); - } - } catch (Exception e) { -- System.out.println("Test failed with exception:"); -+ System.out.println("Test ("+i+") failed with exception:"); - e.printStackTrace(System.out); - failed = true; - } - } - -+ } -+ -+ private static String[] names6616825 = { -+ "a:b=c","a:b=c,*","*:*",":*",":b=c",":b=c,*", -+ "a:*,b=c",":*",":*,b=c","*x?:k=\"x\\*z\"","*x?:k=\"x\\*z\",*", -+ "*x?:*,k=\"x\\*z\"","*x?:k=\"x\\*z\",*,b=c" -+ }; -+ -+ static void check6616825() throws Exception { -+ System.out.println("Testing 616825"); -+ for (String n : names6616825) { -+ final ObjectName on; -+ try { -+ on = new ObjectName(n); -+ } catch (Exception x) { -+ failed = true; -+ System.out.println("Unexpected failure for 6616825 ["+n -+ +"]: "+x); -+ x.printStackTrace(System.out); -+ continue; -+ } -+ try { -+ checkName("616825 "+n,on); -+ } catch (Exception x) { -+ failed = true; -+ System.out.println("6616825 failed for ["+n+"]: "+x); -+ x.printStackTrace(System.out); -+ } -+ } -+ - if (failed) -+ throw new Exception("Some tests for 6616825 failed"); -+ else -+ System.out.println("All tests for 6616825 passed"); -+ } -+ -+ public static void main(String[] args) throws Exception { -+ System.setProperty("jmx.serial.form", "1.0"); -+ -+ /* Check that we really are in jmx.serial.form=1.0 mode. -+ The property is frozen the first time the ObjectName class -+ is referenced so checking that it is set to the correct -+ value now is not enough. */ -+ ObjectStreamClass osc = ObjectStreamClass.lookup(ObjectName.class); -+ if (osc.getFields().length != 6) { -+ throw new Exception("Not using old serial form: fields: " + -+ Arrays.asList(osc.getFields())); -+ // new serial form has no fields, uses writeObject -+ } -+ -+ try { -+ check6211220(); -+ } catch (Exception x) { -+ System.err.println(x.getMessage()); -+ } -+ try { -+ check6616825(); -+ } catch (Exception x) { -+ System.err.println(x.getMessage()); -+ } -+ -+ if (failed) - throw new Exception("Some tests failed"); - else - System.out.println("All tests passed"); -+ - } - -- private static void check(boolean condition) { -+ private static void check(String msg, boolean condition) { - if (!condition) { -- new Throwable("Test failed").printStackTrace(System.out); -+ new Throwable("Test failed "+msg).printStackTrace(System.out); - failed = true; - } - } diff -r c3ce7b102fa2 -r d7d27a7f9673 patches/icedtea-6open-6651382.patch --- a/patches/icedtea-6open-6651382.patch Fri Oct 17 02:23:55 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,116 +0,0 @@ ---- openjdk/jdk/src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java Tue Oct 7 08:43:32 2008 -+++ openjdk/jdk/src/share/classes/sun/management/snmp/jvminstr/JvmMemPoolEntryImpl.java Tue Oct 7 08:43:32 2008 -@@ -26,7 +26,6 @@ - - // java imports - // --import java.io.Serializable; - import java.util.Map; - - // jmx imports -@@ -36,9 +35,7 @@ - - // jdmk imports - // --import com.sun.jmx.snmp.agent.SnmpMib; - --import java.lang.management.ManagementFactory; - import java.lang.management.MemoryUsage; - import java.lang.management.MemoryType; - import java.lang.management.MemoryPoolMXBean; -@@ -73,8 +70,10 @@ - "jvmMemPoolEntry.getCollectionUsage"; - final static MemoryUsage ZEROS = new MemoryUsage(0,0,0,0); - -- -- -+ final String entryMemoryTag; -+ final String entryPeakMemoryTag; -+ final String entryCollectMemoryTag; -+ - MemoryUsage getMemoryUsage() { - try { - final Map m = JvmContextFactory.getUserData(); -@@ -81,10 +80,10 @@ - - if (m != null) { - final MemoryUsage cached = (MemoryUsage) -- m.get(memoryTag); -+ m.get(entryMemoryTag); - if (cached != null) { -- log.debug("getMemoryUsage", -- "jvmMemPoolEntry.getUsage found in cache."); -+ log.debug("getMemoryUsage",entryMemoryTag+ -+ " found in cache."); - return cached; - } - -@@ -91,7 +90,7 @@ - MemoryUsage u = pool.getUsage(); - if (u == null) u = ZEROS; - -- m.put(memoryTag,u); -+ m.put(entryMemoryTag,u); - return u; - } - // Should never come here. -@@ -113,11 +112,11 @@ - - if (m != null) { - final MemoryUsage cached = (MemoryUsage) -- m.get(peakMemoryTag); -+ m.get(entryPeakMemoryTag); - if (cached != null) { - if (log.isDebugOn()) - log.debug("getPeakMemoryUsage", -- peakMemoryTag + " found in cache."); -+ entryPeakMemoryTag + " found in cache."); - return cached; - } - -@@ -124,7 +123,7 @@ - MemoryUsage u = pool.getPeakUsage(); - if (u == null) u = ZEROS; - -- m.put(peakMemoryTag,u); -+ m.put(entryPeakMemoryTag,u); - return u; - } - // Should never come here. -@@ -146,11 +145,11 @@ - - if (m != null) { - final MemoryUsage cached = (MemoryUsage) -- m.get(collectMemoryTag); -+ m.get(entryCollectMemoryTag); - if (cached != null) { - if (log.isDebugOn()) - log.debug("getCollectMemoryUsage", -- collectMemoryTag + " found in cache."); -+ entryCollectMemoryTag + " found in cache."); - return cached; - } - -@@ -157,7 +156,7 @@ - MemoryUsage u = pool.getCollectionUsage(); - if (u == null) u = ZEROS; - -- m.put(collectMemoryTag,u); -+ m.put(entryCollectMemoryTag,u); - return u; - } - // Should never come here. -@@ -179,9 +178,12 @@ - /** - * Constructor for the "JvmMemPoolEntry" group. - */ -- public JvmMemPoolEntryImpl(MemoryPoolMXBean mp, int index) { -+ public JvmMemPoolEntryImpl(MemoryPoolMXBean mp, final int index) { - this.pool=mp; - this.jvmMemPoolIndex = index; -+ this.entryMemoryTag = memoryTag + "." + index; -+ this.entryPeakMemoryTag = peakMemoryTag + "." + index; -+ this.entryCollectMemoryTag = collectMemoryTag + "." + index; - } - - /** diff -r c3ce7b102fa2 -r d7d27a7f9673 patches/icedtea-6open-6756202.patch --- a/patches/icedtea-6open-6756202.patch Fri Oct 17 02:23:55 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ ---- openjdk/jdk/make/netbeans/jmx/build.properties Wed Oct 8 09:13:27 2008 -+++ openjdk/jdk/make/netbeans/jmx/build.properties Wed Oct 8 09:13:27 2008 -@@ -42,14 +42,14 @@ - java/lang/management/ \ - javax/management/ - --project.spec.version = JMX API 2.0 -+project.spec.version = JMX API 1.4 - - jar.jmx.name = jmx.jar - jar.jmx.sealed = true --jar.jmx.spec.title = JSR 003, 160, 255 - JMX API -+jar.jmx.spec.title = JSR 003, 160 - JMX API - jar.jmx.spec.version = ${project.spec.version} - jar.jmx.spec.vendor = Sun Microsystems, Inc. --jar.jmx.impl.title = JSR 003, 160, 255 - OpenJDK 7 JMX API -+jar.jmx.impl.title = JSR 003, 160 - OpenJDK 6 JMX API - jar.jmx.impl.vendor = Project OpenJDK - - javadoc.options=-J-Xmx256m diff -r c3ce7b102fa2 -r d7d27a7f9673 patches/icedtea-arch.patch --- a/patches/icedtea-arch.patch Fri Oct 17 02:23:55 2008 +0100 +++ b/patches/icedtea-arch.patch Fri Oct 17 02:52:46 2008 +0100 @@ -1,7 +1,7 @@ diff -Nru openjdk/corba/make/common/Defs -diff -Nru openjdk/corba/make/common/Defs-linux.gmk openjdk.new/corba/make/common/Defs-linux.gmk ---- openjdk/corba/make/common/Defs-linux.gmk 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk.new/corba/make/common/Defs-linux.gmk 2008-09-27 03:38:46.000000000 +0100 -@@ -92,15 +92,33 @@ +diff -Nru openjdk.orig/corba/make/common/Defs-linux.gmk openjdk/corba/make/common/Defs-linux.gmk +--- openjdk.orig/corba/make/common/Defs-linux.gmk 2008-10-17 02:24:36.000000000 +0100 ++++ openjdk/corba/make/common/Defs-linux.gmk 2008-10-17 02:38:35.000000000 +0100 +@@ -92,9 +92,19 @@ # We need this frame pointer to make it easy to walk the stacks. # This should be the default on X86, but ia64 and amd64 may not have this # as the default. @@ -21,136 +21,10 @@ diff -Nru openjdk/corba/make/common/Defs CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 - LDFLAGS_COMMON_sparc += -m32 -mcpu=v9 --CFLAGS_REQUIRED = $(CFLAGS_REQUIRED_$(ARCH)) --LDFLAGS_COMMON += $(LDFLAGS_COMMON_$(ARCH)) -+ifdef ICEDTEA_ZERO_BUILD -+ CFLAGS_REQUIRED = $(ZERO_ARCHFLAG) -+ ifeq ($(ZERO_ENDIANNESS), little) -+ CFLAGS_REQUIRED += -D_LITTLE_ENDIAN -+ endif -+ LDFLAGS_COMMON += $(ZERO_ARCHFLAG) From gnu_andrew at member.fsf.org Sat Oct 18 21:23:39 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:39 +0000 Subject: changeset in /hg/icedtea: Fix post-merge issues #02. Message-ID: changeset d07cdbac2dc6 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=d07cdbac2dc6 description: Fix post-merge issues #02. 2008-10-17 Andrew John Hughes * rt/netscape/javascript/JSException.java, * rt/netscape/javascript/JSObject.java, * rt/netscape/javascript/JSProxy.java, * rt/netscape/javascript/JSRunnable.java, * rt/netscape/javascript/JSUtil.java: Removed as moved to plugin. * Makefile.am: Fix errors introduced by merge. * patches/icedtea-arch.patch, * patches/icedtea-ecj.patch: Regenerated. diffstat: 9 files changed, 81 insertions(+), 662 deletions(-) ChangeLog | 14 + Makefile.am | 7 patches/icedtea-arch.patch | 8 patches/icedtea-ecj.patch | 129 +++++++-------- rt/netscape/javascript/JSException.java | 140 ---------------- rt/netscape/javascript/JSObject.java | 258 ------------------------------- rt/netscape/javascript/JSProxy.java | 58 ------ rt/netscape/javascript/JSRunnable.java | 70 -------- rt/netscape/javascript/JSUtil.java | 59 ------- diffs (truncated from 1073 to 500 lines): diff -r d7d27a7f9673 -r d07cdbac2dc6 ChangeLog --- a/ChangeLog Fri Oct 17 02:52:46 2008 +0100 +++ b/ChangeLog Fri Oct 17 04:03:27 2008 +0100 @@ -1,4 +1,16 @@ 2008-10-16 Andrew John Hughes +2008-10-17 Andrew John Hughes + + * rt/netscape/javascript/JSException.java, + * rt/netscape/javascript/JSObject.java, + * rt/netscape/javascript/JSProxy.java, + * rt/netscape/javascript/JSRunnable.java, + * rt/netscape/javascript/JSUtil.java: + Removed as moved to plugin. + * Makefile.am: Fix errors introduced by merge. + * patches/icedtea-arch.patch, + * patches/icedtea-ecj.patch: Regenerated. + +2008-10-17 Andrew John Hughes * patches/icedtea-6open-6616825.patch, * patches/icedtea-6open-6651382.patch, diff -r d7d27a7f9673 -r d07cdbac2dc6 Makefile.am --- a/Makefile.am Fri Oct 17 02:52:46 2008 +0100 +++ b/Makefile.am Fri Oct 17 04:03:27 2008 +0100 @@ -545,7 +545,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-memory-limits.patch \ patches/icedtea-sunsrc.patch \ patches/icedtea-libraries.patch \ - patches/icedtea-javafiles.patch \ patches/icedtea-core-build.patch \ patches/icedtea-linker-options.patch \ patches/icedtea-static-libstdc++.patch \ @@ -874,7 +873,7 @@ ICEDTEA_ECJ_PATCHES = patches/icedtea-ec ICEDTEA_ECJ_PATCHES = patches/icedtea-ecj.patch \ patches/icedtea-ecj-spp.patch -stamps/patch-ecj.stamp: stamps/extract-ecj.stamp +stamps/patch-ecj.stamp: stamps/clone-ecj.stamp mkdir -p stamps; \ rm -f stamps/patch-ecj.stamp.tmp ; \ touch stamps/patch-ecj.stamp.tmp ; \ @@ -1436,10 +1435,10 @@ bootstrap/jdk1.7.0/jre/lib/rt-closed.jar if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ $(JAR) cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt sun ; \ else \ $(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/rt com -C lib/rt java \ - -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \ + -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt sun ; \ fi if test -d bootstrap/ecj/jre/lib ; \ then \ diff -r d7d27a7f9673 -r d07cdbac2dc6 patches/icedtea-arch.patch --- a/patches/icedtea-arch.patch Fri Oct 17 02:52:46 2008 +0100 +++ b/patches/icedtea-arch.patch Fri Oct 17 04:03:27 2008 +0100 @@ -100,14 +100,6 @@ diff -Nru openjdk.orig/jdk/make/common/s ifneq ("$(findstring sparc,$(ARCH))", "") # sparc or sparcv9 REQUIRED_CC_VER = 4.0 -@@ -92,6 +138,7 @@ - endif - endif - endif -+ endif - # Option used to create a shared library - SHARED_LIBRARY_FLAG = -shared -mimpure-text - SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 ) diff -Nru openjdk.orig/jdk/make/javax/sound/SoundDefs.gmk openjdk/jdk/make/javax/sound/SoundDefs.gmk --- openjdk.orig/jdk/make/javax/sound/SoundDefs.gmk 2008-10-17 02:24:36.000000000 +0100 +++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2008-10-17 02:45:02.000000000 +0100 diff -r d7d27a7f9673 -r d07cdbac2dc6 patches/icedtea-ecj.patch --- a/patches/icedtea-ecj.patch Fri Oct 17 02:52:46 2008 +0100 +++ b/patches/icedtea-ecj.patch Fri Oct 17 04:03:27 2008 +0100 @@ -1,6 +1,6 @@ diff -Nru openjdk-ecj.orig/corba/make/co diff -Nru openjdk-ecj.orig/corba/make/com/sun/corba/se/Makefile openjdk-ecj/corba/make/com/sun/corba/se/Makefile --- openjdk-ecj.orig/corba/make/com/sun/corba/se/Makefile 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/com/sun/corba/se/Makefile 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/corba/make/com/sun/corba/se/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -42,7 +42,7 @@ # the rmic iiop backend needs some classes that are part of the impl/util # package. These classes use log wrappers, so they must be built after @@ -12,7 +12,7 @@ diff -Nru openjdk-ecj.orig/corba/make/co diff -Nru openjdk-ecj.orig/corba/make/com/sun/corba/se/org/Makefile openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile --- openjdk-ecj.orig/corba/make/com/sun/corba/se/org/Makefile 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -0,0 +1,38 @@ +# +# Copyright 2001-2005 Sun Microsystems, Inc. All Rights Reserved. @@ -54,7 +54,7 @@ diff -Nru openjdk-ecj.orig/corba/make/co +include $(BUILDDIR)/common/Classes.gmk diff -Nru openjdk-ecj.orig/corba/make/common/Defs.gmk openjdk-ecj/corba/make/common/Defs.gmk --- openjdk-ecj.orig/corba/make/common/Defs.gmk 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/common/Defs.gmk 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/corba/make/common/Defs.gmk 2008-10-17 03:21:22.000000000 +0100 @@ -53,6 +53,13 @@ _OUTPUTDIR=$(TOPDIR)/build/$(PLATFORM)-$(ARCH) @@ -88,11 +88,11 @@ diff -Nru openjdk-ecj.orig/corba/make/co vpath %.java $(VPATH.java) vpath %.class $(CLASSBINDIR) diff -Nru openjdk-ecj.orig/corba/make/common/Defs-linux.gmk openjdk-ecj/corba/make/common/Defs-linux.gmk ---- openjdk-ecj.orig/corba/make/common/Defs-linux.gmk 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/common/Defs-linux.gmk 2008-10-17 01:35:53.000000000 +0100 -@@ -252,7 +252,7 @@ - # - VM_NAME = server +--- openjdk-ecj.orig/corba/make/common/Defs-linux.gmk 2008-10-17 03:12:25.000000000 +0100 ++++ openjdk-ecj/corba/make/common/Defs-linux.gmk 2008-10-17 03:21:22.000000000 +0100 +@@ -276,7 +276,7 @@ + fi; \ + done) JVMLIB = -L$(BOOTDIR)/jre/lib/$(LIBARCH)/$(VM_NAME) -ljvm -JAVALIB = -L$(BOOTDIR)/jre/lib/$(LIBARCH) -ljava $(JVMLIB) +JAVALIB = -L$(BOOTDIR)/jre/lib/$(LIBARCH) -L$(dir $(shell $(if $(GCJ),$(GCJ),$(subst gcc,gcj,$(CC))) --print-file-name=libgcj.so)) -lgcj $(JVMLIB) @@ -101,7 +101,7 @@ diff -Nru openjdk-ecj.orig/corba/make/co # We want to privatize JVM symbols on Solaris. This is so the user can diff -Nru openjdk-ecj.orig/corba/make/common/Rules.gmk openjdk-ecj/corba/make/common/Rules.gmk --- openjdk-ecj.orig/corba/make/common/Rules.gmk 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/common/Rules.gmk 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/corba/make/common/Rules.gmk 2008-10-17 03:21:22.000000000 +0100 @@ -197,8 +197,10 @@ $(ECHO) "# Java sources to be compiled: (listed in file $(JAVA_SOURCE_LIST))"; \ $(CAT) $(JAVA_SOURCE_LIST); \ @@ -117,7 +117,7 @@ diff -Nru openjdk-ecj.orig/corba/make/co diff -Nru openjdk-ecj.orig/corba/make/common/shared/Defs-java.gmk openjdk-ecj/corba/make/common/shared/Defs-java.gmk --- openjdk-ecj.orig/corba/make/common/shared/Defs-java.gmk 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/common/shared/Defs-java.gmk 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/corba/make/common/shared/Defs-java.gmk 2008-10-17 03:21:22.000000000 +0100 @@ -117,31 +117,13 @@ JAVACFLAGS += $(OTHER_JAVACFLAGS) @@ -156,7 +156,7 @@ diff -Nru openjdk-ecj.orig/corba/make/co ifdef JAVAC diff -Nru openjdk-ecj.orig/corba/make/org/omg/sources/Makefile openjdk-ecj/corba/make/org/omg/sources/Makefile --- openjdk-ecj.orig/corba/make/org/omg/sources/Makefile 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/org/omg/sources/Makefile 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/corba/make/org/omg/sources/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -93,8 +93,6 @@ POAHELHOLFILES = $(POA_GENERATED_HELP_HOL_java:%=$(GENSRCDIR)/%) @@ -234,9 +234,9 @@ diff -Nru openjdk-ecj.orig/corba/make/or pi.compile: $(PIGENERATEDFILES) diff -Nru openjdk-ecj.orig/corba/make/sun/rmi/corbalogsources/Makefile openjdk-ecj/corba/make/sun/rmi/corbalogsources/Makefile ---- openjdk-ecj.orig/corba/make/sun/rmi/corbalogsources/Makefile 2008-09-25 08:39:53.000000000 +0100 -+++ openjdk-ecj/corba/make/sun/rmi/corbalogsources/Makefile 2008-10-17 01:35:53.000000000 +0100 -@@ -173,7 +173,6 @@ +--- openjdk-ecj.orig/corba/make/sun/rmi/corbalogsources/Makefile 2008-10-17 03:12:24.000000000 +0100 ++++ openjdk-ecj/corba/make/sun/rmi/corbalogsources/Makefile 2008-10-17 03:21:22.000000000 +0100 +@@ -172,7 +172,6 @@ ACTIVATIONFILES = $(com_sun_corba_se_spi_activation_java:%=$(GENSRCDIR)/%) $(ACTIVATIONFILES): $(ACTIVATION.IDL) @@ -244,7 +244,7 @@ diff -Nru openjdk-ecj.orig/corba/make/su activation.idl.compile: $(ACTIVATIONFILES) -@@ -196,7 +195,6 @@ +@@ -195,7 +194,6 @@ # REVISIT: remove -oldImplBase $(PORTABLEACTIVATIONFILES): $(PORTABLEACTIVATION.IDL) @@ -253,9 +253,9 @@ diff -Nru openjdk-ecj.orig/corba/make/su portableactivation.idl.compile: $(PORTABLEACTIVATIONFILES) diff -Nru openjdk-ecj.orig/hotspot/make/linux/Makefile openjdk-ecj/hotspot/make/linux/Makefile ---- openjdk-ecj.orig/hotspot/make/linux/Makefile 2008-09-25 08:40:31.000000000 +0100 -+++ openjdk-ecj/hotspot/make/linux/Makefile 2008-10-17 01:35:53.000000000 +0100 -@@ -249,28 +249,24 @@ +--- openjdk-ecj.orig/hotspot/make/linux/Makefile 2008-10-17 03:12:25.000000000 +0100 ++++ openjdk-ecj/hotspot/make/linux/Makefile 2008-10-17 03:21:22.000000000 +0100 +@@ -263,28 +263,24 @@ $(TARGETS_C2): $(SUBDIRS_C2) cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) @@ -285,8 +285,8 @@ diff -Nru openjdk-ecj.orig/hotspot/make/ cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install endif diff -Nru openjdk-ecj.orig/hotspot/make/linux/makefiles/sa.make openjdk-ecj/hotspot/make/linux/makefiles/sa.make ---- openjdk-ecj.orig/hotspot/make/linux/makefiles/sa.make 2008-09-25 08:40:31.000000000 +0100 -+++ openjdk-ecj/hotspot/make/linux/makefiles/sa.make 2008-10-17 01:35:53.000000000 +0100 +--- openjdk-ecj.orig/hotspot/make/linux/makefiles/sa.make 2008-10-17 03:12:25.000000000 +0100 ++++ openjdk-ecj/hotspot/make/linux/makefiles/sa.make 2008-10-17 03:21:22.000000000 +0100 @@ -74,8 +74,8 @@ mkdir -p $(SA_CLASSDIR); \ fi @@ -300,7 +300,7 @@ diff -Nru openjdk-ecj.orig/hotspot/make/ $(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES) diff -Nru openjdk-ecj.orig/jaxp/make/build.xml openjdk-ecj/jaxp/make/build.xml --- openjdk-ecj.orig/jaxp/make/build.xml 2008-09-25 08:40:52.000000000 +0100 -+++ openjdk-ecj/jaxp/make/build.xml 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jaxp/make/build.xml 2008-10-17 03:21:22.000000000 +0100 @@ -71,7 +71,10 @@ diff -Nru openjdk-ecj.orig/jaxp/make/Makefile openjdk-ecj/jaxp/make/Makefile ---- openjdk-ecj.orig/jaxp/make/Makefile 2008-09-25 08:40:52.000000000 +0100 -+++ openjdk-ecj/jaxp/make/Makefile 2008-10-17 01:35:53.000000000 +0100 +--- openjdk-ecj.orig/jaxp/make/Makefile 2008-10-17 03:12:24.000000000 +0100 ++++ openjdk-ecj/jaxp/make/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -80,7 +80,7 @@ endif @@ -337,8 +337,8 @@ diff -Nru openjdk-ecj.orig/jaxp/make/Mak ifdef ALT_OUTPUTDIR diff -Nru openjdk-ecj.orig/jaxws/make/build.properties openjdk-ecj/jaxws/make/build.properties ---- openjdk-ecj.orig/jaxws/make/build.properties 2008-09-25 08:41:11.000000000 +0100 -+++ openjdk-ecj/jaxws/make/build.properties 2008-10-17 01:35:53.000000000 +0100 +--- openjdk-ecj.orig/jaxws/make/build.properties 2008-10-17 03:12:25.000000000 +0100 ++++ openjdk-ecj/jaxws/make/build.properties 2008-10-17 03:21:22.000000000 +0100 @@ -37,7 +37,7 @@ # set the following to -version to verify the versions of javac being used javac.version.opt = @@ -349,8 +349,8 @@ diff -Nru openjdk-ecj.orig/jaxws/make/bu # JVM memory size javac.memoryInitialSize = 128m diff -Nru openjdk-ecj.orig/jaxws/make/build.xml openjdk-ecj/jaxws/make/build.xml ---- openjdk-ecj.orig/jaxws/make/build.xml 2008-09-25 08:41:11.000000000 +0100 -+++ openjdk-ecj/jaxws/make/build.xml 2008-10-17 01:40:43.000000000 +0100 +--- openjdk-ecj.orig/jaxws/make/build.xml 2008-10-17 03:12:24.000000000 +0100 ++++ openjdk-ecj/jaxws/make/build.xml 2008-10-17 03:28:27.000000000 +0100 @@ -84,7 +84,10 @@ + excludes="com/sun/tools/internal/txw2/**" -+ source="1.5"> ++ source="1.5"> + - diff -Nru openjdk-ecj.orig/jaxws/make/Makefile openjdk-ecj/jaxws/make/Makefile ---- openjdk-ecj.orig/jaxws/make/Makefile 2008-09-25 08:41:11.000000000 +0100 -+++ openjdk-ecj/jaxws/make/Makefile 2008-10-17 01:41:40.000000000 +0100 -@@ -80,7 +80,8 @@ +--- openjdk-ecj.orig/jaxws/make/Makefile 2008-10-17 03:12:24.000000000 +0100 ++++ openjdk-ecj/jaxws/make/Makefile 2008-10-17 03:29:11.000000000 +0100 +@@ -80,8 +80,8 @@ endif ifdef ALT_BOOTDIR +- ANT_OPTIONS += -Dplugs=$(ALT_BINARY_PLUGS_PATH) - ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR) + ANT_OPTIONS += -Dboot.java.home=$(ALT_BOOTDIR) + ANT_OPTIONS += -Djavac.executable=$(ALT_BOOTDIR)/bin/javac @@ -392,7 +393,7 @@ diff -Nru openjdk-ecj.orig/jaxws/make/Ma ifdef ALT_OUTPUTDIR diff -Nru openjdk-ecj.orig/jdk/make/common/BuildToolJar.gmk openjdk-ecj/jdk/make/common/BuildToolJar.gmk --- openjdk-ecj.orig/jdk/make/common/BuildToolJar.gmk 2008-09-25 08:43:35.000000000 +0100 -+++ openjdk-ecj/jdk/make/common/BuildToolJar.gmk 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jdk/make/common/BuildToolJar.gmk 2008-10-17 03:21:22.000000000 +0100 @@ -43,7 +43,8 @@ @$(prep-target) @$(MKDIR) -p $(BUILDTOOLCLASSDIR) @@ -404,9 +405,9 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm -C $(BUILDTOOLCLASSDIR) $(PKGDIR) \ $(BOOT_JAR_JFLAGS) || $(RM) $@ diff -Nru openjdk-ecj.orig/jdk/make/common/Release.gmk openjdk-ecj/jdk/make/common/Release.gmk ---- openjdk-ecj.orig/jdk/make/common/Release.gmk 2008-09-25 08:43:35.000000000 +0100 -+++ openjdk-ecj/jdk/make/common/Release.gmk 2008-10-17 01:38:13.000000000 +0100 -@@ -657,10 +657,23 @@ +--- openjdk-ecj.orig/jdk/make/common/Release.gmk 2008-10-17 03:12:24.000000000 +0100 ++++ openjdk-ecj/jdk/make/common/Release.gmk 2008-10-17 03:21:22.000000000 +0100 +@@ -651,10 +651,23 @@ $(RES_JAR_ARGLIST): $(RES_JAR_FILELIST) $(prep-target) $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@ @@ -432,7 +433,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm @$(java-vm-cleanup) # Create jsse.jar containing SunJSSE implementation classes -@@ -716,10 +729,18 @@ +@@ -710,10 +723,18 @@ $(RT_JAR_ARGLIST): $(RT_JAR_FILELIST) $(prep-target) $(SED) -e "s@^@-C $(CLASSBINDIR) @" $< > $@ @@ -453,7 +454,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm @$(java-vm-cleanup) # Meta-index construction to make core class loaders lazier -@@ -957,19 +978,6 @@ +@@ -951,19 +972,6 @@ @$(java-vm-cleanup) $(CP) $(LIBDIR)/tools.jar $(JDK_IMAGE_DIR)/lib/tools.jar @# @@ -473,7 +474,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm @# CORBA supported orb.idl and ir.idl should be copied to lib @# $(CP) $(LIBDIR)/orb.idl $(JDK_IMAGE_DIR)/lib/orb.idl -@@ -1046,16 +1054,6 @@ +@@ -1040,16 +1048,6 @@ $(CP) $(PLATFORM_SRC)/bin/java_md.h $(JDK_IMAGE_DIR)/src/launcher $(CD) $(JDK_IMAGE_DIR)/src && $(ZIPEXE) -qr ../src.zip * $(RM) -r $(JDK_IMAGE_DIR)/src @@ -492,7 +493,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm endif # !windows diff -Nru openjdk-ecj.orig/jdk/make/common/Rules.gmk openjdk-ecj/jdk/make/common/Rules.gmk --- openjdk-ecj.orig/jdk/make/common/Rules.gmk 2008-09-25 08:43:35.000000000 +0100 -+++ openjdk-ecj/jdk/make/common/Rules.gmk 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jdk/make/common/Rules.gmk 2008-10-17 03:21:22.000000000 +0100 @@ -237,8 +237,9 @@ $(ECHO) "# Java sources to be compiled: (listed in file $<)"; \ $(CAT) $<.filtered; \ @@ -519,9 +520,9 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm @$(TOUCH) $@ diff -Nru openjdk-ecj.orig/jdk/make/common/shared/Defs-java.gmk openjdk-ecj/jdk/make/common/shared/Defs-java.gmk ---- openjdk-ecj.orig/jdk/make/common/shared/Defs-java.gmk 2008-09-25 08:43:35.000000000 +0100 -+++ openjdk-ecj/jdk/make/common/shared/Defs-java.gmk 2008-10-17 01:35:53.000000000 +0100 -@@ -127,30 +127,19 @@ +--- openjdk-ecj.orig/jdk/make/common/shared/Defs-java.gmk 2008-10-17 03:12:25.000000000 +0100 ++++ openjdk-ecj/jdk/make/common/shared/Defs-java.gmk 2008-10-17 03:21:22.000000000 +0100 +@@ -121,30 +121,19 @@ JAVACFLAGS += $(OTHER_JAVACFLAGS) # Needed for javah @@ -555,7 +556,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/comm # Override of what javac to use (see deploy workspace) diff -Nru openjdk-ecj.orig/jdk/make/java/nio/Makefile openjdk-ecj/jdk/make/java/nio/Makefile --- openjdk-ecj.orig/jdk/make/java/nio/Makefile 2008-09-25 08:43:36.000000000 +0100 -+++ openjdk-ecj/jdk/make/java/nio/Makefile 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jdk/make/java/nio/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -31,7 +31,7 @@ PACKAGE = java.nio LIBRARY = nio @@ -567,7 +568,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/java NIO_SRC = $(SHARE_SRC)/classes/java/nio diff -Nru openjdk-ecj.orig/jdk/make/java/text/Makefile openjdk-ecj/jdk/make/java/text/Makefile --- openjdk-ecj.orig/jdk/make/java/text/Makefile 2008-09-25 08:43:36.000000000 +0100 -+++ openjdk-ecj/jdk/make/java/text/Makefile 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jdk/make/java/text/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -80,8 +80,8 @@ -sourcepath $(TEXT_SRCDIR) \ $(TEXT_SOURCES) @@ -581,7 +582,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/java @$(java-vm-cleanup) diff -Nru openjdk-ecj.orig/jdk/make/Makefile openjdk-ecj/jdk/make/Makefile --- openjdk-ecj.orig/jdk/make/Makefile 2008-09-25 08:43:35.000000000 +0100 -+++ openjdk-ecj/jdk/make/Makefile 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jdk/make/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -239,7 +239,7 @@ all build:: sanity-all post-sanity-all @@ -593,7 +594,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/Make diff -Nru openjdk-ecj.orig/jdk/make/sun/awt/FILES_export_unix.gmk openjdk-ecj/jdk/make/sun/awt/FILES_export_unix.gmk --- openjdk-ecj.orig/jdk/make/sun/awt/FILES_export_unix.gmk 2008-09-25 08:43:37.000000000 +0100 -+++ openjdk-ecj/jdk/make/sun/awt/FILES_export_unix.gmk 2008-10-17 01:35:53.000000000 +0100 ++++ openjdk-ecj/jdk/make/sun/awt/FILES_export_unix.gmk 2008-10-17 03:21:22.000000000 +0100 @@ -188,3 +188,5 @@ java/awt/dnd/DnDConstants.java \ sun/awt/CausedFocusEvent.java @@ -601,8 +602,8 @@ diff -Nru openjdk-ecj.orig/jdk/make/sun/ +EXPORTED_inner = \ + sun.java2d.opengl.OGLContext$$OGLContextCaps diff -Nru openjdk-ecj.orig/jdk/make/sun/awt/Makefile openjdk-ecj/jdk/make/sun/awt/Makefile ---- openjdk-ecj.orig/jdk/make/sun/awt/Makefile 2008-10-17 01:42:51.000000000 +0100 -+++ openjdk-ecj/jdk/make/sun/awt/Makefile 2008-10-17 01:44:19.000000000 +0100 +--- openjdk-ecj.orig/jdk/make/sun/awt/Makefile 2008-09-25 08:43:37.000000000 +0100 ++++ openjdk-ecj/jdk/make/sun/awt/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -395,10 +395,9 @@ COMPILEFONTCONFIG_JARFILE = $(BUILDTOOLJARDIR)/compilefontconfig.jar @@ -619,7 +620,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/sun/ fontconfigs.clean : diff -Nru openjdk-ecj.orig/jdk/make/sun/text/Makefile openjdk-ecj/jdk/make/sun/text/Makefile --- openjdk-ecj.orig/jdk/make/sun/text/Makefile 2008-09-25 08:43:37.000000000 +0100 -+++ openjdk-ecj/jdk/make/sun/text/Makefile 2008-10-17 01:48:02.000000000 +0100 ++++ openjdk-ecj/jdk/make/sun/text/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -85,8 +85,9 @@ $(BOOT_JAVAC_CMD) -d $(TEXT_CLASSES) \ -sourcepath $(TEXT_SRCDIR) \ @@ -634,7 +635,7 @@ diff -Nru openjdk-ecj.orig/jdk/make/sun/ -language th diff -Nru openjdk-ecj.orig/jdk/make/sun/xawt/Makefile openjdk-ecj/jdk/make/sun/xawt/Makefile --- openjdk-ecj.orig/jdk/make/sun/xawt/Makefile 2008-09-25 08:43:37.000000000 +0100 -+++ openjdk-ecj/jdk/make/sun/xawt/Makefile 2008-10-17 01:48:02.000000000 +0100 ++++ openjdk-ecj/jdk/make/sun/xawt/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -276,11 +276,7 @@ TEMPDIR_CLASSES = $(TEMPDIR)/classes @@ -672,8 +673,8 @@ diff -Nru openjdk-ecj.orig/jdk/make/sun/ done $(TOUCH) $@ diff -Nru openjdk-ecj.orig/jdk/make/tools/src/build/tools/generatecharacter/GenerateCharacter.java openjdk-ecj/jdk/make/tools/src/build/tools/generatecharacter/GenerateCharacter.java ---- openjdk-ecj.orig/jdk/make/tools/src/build/tools/generatecharacter/GenerateCharacter.java 2008-09-25 08:43:38.000000000 +0100 -+++ openjdk-ecj/jdk/make/tools/src/build/tools/generatecharacter/GenerateCharacter.java 2008-10-17 01:48:02.000000000 +0100 +--- openjdk-ecj.orig/jdk/make/tools/src/build/tools/generatecharacter/GenerateCharacter.java 2008-10-17 03:13:56.000000000 +0100 ++++ openjdk-ecj/jdk/make/tools/src/build/tools/generatecharacter/GenerateCharacter.java 2008-10-17 03:21:22.000000000 +0100 @@ -647,9 +647,6 @@ throws FileNotFoundException, IOException { BufferedReader in = new BufferedReader(new FileReader(theTemplateFileName)); @@ -693,8 +694,8 @@ diff -Nru openjdk-ecj.orig/jdk/make/tool if (plane == 0 && bLatin1 == false) { genCaseMapTableDeclaration(result); diff -Nru openjdk-ecj.orig/jdk/src/share/classes/java/lang/Double.java openjdk-ecj/jdk/src/share/classes/java/lang/Double.java ---- openjdk-ecj.orig/jdk/src/share/classes/java/lang/Double.java 2008-09-25 08:43:48.000000000 +0100 -+++ openjdk-ecj/jdk/src/share/classes/java/lang/Double.java 2008-10-17 01:48:02.000000000 +0100 +--- openjdk-ecj.orig/jdk/src/share/classes/java/lang/Double.java 2008-10-17 03:13:50.000000000 +0100 ++++ openjdk-ecj/jdk/src/share/classes/java/lang/Double.java 2008-10-17 03:21:22.000000000 +0100 @@ -76,7 +76,7 @@ * {@code 0x1.fffffffffffffP+1023} and also equal to * {@code Double.longBitsToDouble(0x7fefffffffffffffL)}. @@ -723,8 +724,8 @@ diff -Nru openjdk-ecj.orig/jdk/src/share /** * Maximum exponent a finite {@code double} variable may have. diff -Nru openjdk-ecj.orig/jdk/src/share/classes/java/lang/Float.java openjdk-ecj/jdk/src/share/classes/java/lang/Float.java ---- openjdk-ecj.orig/jdk/src/share/classes/java/lang/Float.java 2008-09-25 08:43:48.000000000 +0100 -+++ openjdk-ecj/jdk/src/share/classes/java/lang/Float.java 2008-10-17 01:48:02.000000000 +0100 +--- openjdk-ecj.orig/jdk/src/share/classes/java/lang/Float.java 2008-10-17 03:13:51.000000000 +0100 ++++ openjdk-ecj/jdk/src/share/classes/java/lang/Float.java 2008-10-17 03:21:22.000000000 +0100 @@ -76,7 +76,7 @@ * {@code 0x1.fffffeP+127f} and also equal to * {@code Float.intBitsToFloat(0x7f7fffff)}. @@ -754,7 +755,7 @@ diff -Nru openjdk-ecj.orig/jdk/src/share * Maximum exponent a finite {@code float} variable may have. It diff -Nru openjdk-ecj.orig/jdk/src/share/native/sun/java2d/opengl/OGLContext.h openjdk-ecj/jdk/src/share/native/sun/java2d/opengl/OGLContext.h --- openjdk-ecj.orig/jdk/src/share/native/sun/java2d/opengl/OGLContext.h 2008-09-25 08:44:18.000000000 +0100 -+++ openjdk-ecj/jdk/src/share/native/sun/java2d/opengl/OGLContext.h 2008-10-17 01:48:02.000000000 +0100 ++++ openjdk-ecj/jdk/src/share/native/sun/java2d/opengl/OGLContext.h 2008-10-17 03:21:22.000000000 +0100 @@ -27,6 +27,7 @@ #define OGLContext_h_Included @@ -821,7 +822,7 @@ diff -Nru openjdk-ecj.orig/jdk/src/share * Evaluates to true if the given capability bitmask is present for the diff -Nru openjdk-ecj.orig/langtools/make/build.xml openjdk-ecj/langtools/make/build.xml --- openjdk-ecj.orig/langtools/make/build.xml 2008-09-25 08:45:02.000000000 +0100 -+++ openjdk-ecj/langtools/make/build.xml 2008-10-17 01:48:02.000000000 +0100 ++++ openjdk-ecj/langtools/make/build.xml 2008-10-17 03:21:22.000000000 +0100 @@ -498,7 +498,10 @@ includes="@{includes}" sourcepath="" @@ -860,8 +861,8 @@ diff -Nru openjdk-ecj.orig/langtools/mak classname="CompilePropertiesTask" classpath="${build.toolclasses.dir}/"/> diff -Nru openjdk-ecj.orig/langtools/make/Makefile openjdk-ecj/langtools/make/Makefile ---- openjdk-ecj.orig/langtools/make/Makefile 2008-09-25 08:45:02.000000000 +0100 -+++ openjdk-ecj/langtools/make/Makefile 2008-10-17 01:48:02.000000000 +0100 +--- openjdk-ecj.orig/langtools/make/Makefile 2008-10-17 03:12:24.000000000 +0100 ++++ openjdk-ecj/langtools/make/Makefile 2008-10-17 03:21:22.000000000 +0100 @@ -113,7 +113,7 @@ ifdef ALT_BOOTDIR @@ -872,9 +873,9 @@ diff -Nru openjdk-ecj.orig/langtools/mak ifdef ALT_OUTPUTDIR diff -Nru openjdk-ecj.orig/make/jdk-rules.gmk openjdk-ecj/make/jdk-rules.gmk ---- openjdk-ecj.orig/make/jdk-rules.gmk 2008-09-25 08:39:45.000000000 +0100 -+++ openjdk-ecj/make/jdk-rules.gmk 2008-10-17 01:48:02.000000000 +0100 -@@ -63,7 +63,7 @@ +--- openjdk-ecj.orig/make/jdk-rules.gmk 2008-10-17 03:12:25.000000000 +0100 ++++ openjdk-ecj/make/jdk-rules.gmk 2008-10-17 03:21:22.000000000 +0100 +@@ -58,7 +58,7 @@ endif ifndef DEV_ONLY diff -r d7d27a7f9673 -r d07cdbac2dc6 rt/netscape/javascript/JSException.java --- a/rt/netscape/javascript/JSException.java Fri Oct 17 02:52:46 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,140 +0,0 @@ -/* -*- Mode: Java; tab-width: 8; c-basic-offset: 4 -*- - * - * ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Mozilla Communicator client code, released - * March 31, 1998. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 1998 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Alternatively, the contents of this file may be used under the terms of - * either of the GNU General Public License Version 2 or later (the "GPL"), - * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), From gnu_andrew at member.fsf.org Sat Oct 18 21:23:39 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:39 +0000 Subject: changeset in /hg/icedtea: Fix ecj build and use of PulseAudio. Message-ID: changeset 6c315f0c65a5 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=6c315f0c65a5 description: Fix ecj build and use of PulseAudio. 2008-10-19 Andrew John Hughes * Makefile.am: Make PULSE_JAVA_DIR use srcdir, link rt-system.jar to the system rt.jar and include com.sun.net.httpserver in rt.jar for jaxws. * patches/icedtea-ecj.patch: Include rt-system.jar in jaxws compilation bootclasspath so java.net and java.util.concurrent classes can be found. Add back missing javazic patch. diffstat: 3 files changed, 33 insertions(+), 4 deletions(-) ChangeLog | 11 +++++++++++ Makefile.am | 5 ++++- patches/icedtea-ecj.patch | 21 ++++++++++++++++++--- diffs (103 lines): diff -r d07cdbac2dc6 -r 6c315f0c65a5 ChangeLog --- a/ChangeLog Fri Oct 17 04:03:27 2008 +0100 +++ b/ChangeLog Sun Oct 19 04:45:28 2008 +0100 @@ -1,3 +1,14 @@ 2008-10-17 Andrew John Hughes + + * Makefile.am: + Make PULSE_JAVA_DIR use srcdir, link + rt-system.jar to the system rt.jar and include + com.sun.net.httpserver in rt.jar for jaxws. + * patches/icedtea-ecj.patch: + Include rt-system.jar in jaxws compilation bootclasspath + so java.net and java.util.concurrent classes can be found. + Add back missing javazic patch. + 2008-10-17 Andrew John Hughes * rt/netscape/javascript/JSException.java, diff -r d07cdbac2dc6 -r 6c315f0c65a5 Makefile.am --- a/Makefile.am Fri Oct 17 04:03:27 2008 +0100 +++ b/Makefile.am Sun Oct 19 04:45:28 2008 +0100 @@ -30,7 +30,7 @@ endif if ENABLE_PULSE_JAVA # include the makefile in pulseaudio subdir -PULSE_JAVA_DIR = pulseaudio +PULSE_JAVA_DIR = $(srcdir)/pulseaudio PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_DIR)/bin @@ -992,6 +992,8 @@ stamps/bootstrap-directory-ecj.stamp: if test -d $(SYSTEM_GCJ_DIR); \ then \ mkdir -p bootstrap/ecj/jre/lib; \ + ln -sf $(SYSTEM_GCJ_DIR)/jre/lib/rt.jar \ + bootstrap/ecj/jre/lib/rt-system.jar; \ ln -sf $(SYSTEM_GCJ_DIR)/jre/lib/$(JRE_ARCH_DIR) \ bootstrap/ecj/jre/lib/; \ if ! test -d bootstrap/ecj/jre/lib/$(INSTALL_ARCH_DIR); \ @@ -1281,6 +1283,7 @@ ICEDTEA_COPY_DIRS = \ com/sun/jdi/request \ com/sun/jmx/snmp/agent \ com/sun/tools/jdi \ + com/sun/net/httpserver \ java/io \ java/util \ java/rmi \ diff -r d07cdbac2dc6 -r 6c315f0c65a5 patches/icedtea-ecj.patch --- a/patches/icedtea-ecj.patch Fri Oct 17 04:03:27 2008 +0100 +++ b/patches/icedtea-ecj.patch Sun Oct 19 04:45:28 2008 +0100 @@ -350,7 +350,7 @@ diff -Nru openjdk-ecj.orig/jaxws/make/bu javac.memoryInitialSize = 128m diff -Nru openjdk-ecj.orig/jaxws/make/build.xml openjdk-ecj/jaxws/make/build.xml --- openjdk-ecj.orig/jaxws/make/build.xml 2008-10-17 03:12:24.000000000 +0100 -+++ openjdk-ecj/jaxws/make/build.xml 2008-10-17 03:28:27.000000000 +0100 ++++ openjdk-ecj/jaxws/make/build.xml 2008-10-19 03:42:43.000000000 +0100 @@ -84,7 +84,10 @@ -@@ -96,10 +99,12 @@ +@@ -96,11 +99,13 @@ +- + excludes="com/sun/tools/internal/txw2/**" + source="1.5"> - ++ + diff -Nru openjdk-ecj.orig/jaxws/make/Makefile openjdk-ecj/jaxws/make/Makefile --- openjdk-ecj.orig/jaxws/make/Makefile 2008-10-17 03:12:24.000000000 +0100 +++ openjdk-ecj/jaxws/make/Makefile 2008-10-17 03:29:11.000000000 +0100 @@ -618,6 +620,19 @@ diff -Nru openjdk-ecj.orig/jdk/make/sun/ @$(java-vm-cleanup) fontconfigs.clean : +diff -Nru openjdk-ecj.orig/jdk/make/sun/javazic/Makefile openjdk-ecj/jdk/make/sun/javazic/Makefile +--- openjdk-ecj.orig/jdk/make/sun/javazic/Makefile 2008-10-19 04:36:26.000000000 +0100 ++++ openjdk-ecj/jdk/make/sun/javazic/Makefile 2008-10-19 04:37:33.000000000 +0100 +@@ -62,7 +62,8 @@ + $(WORKDIR)/$(MAPFILE): $(BUILDTOOLJARDIR)/javazic.jar $(TZFILES) + $(RM) -r $(@D) + $(prep-target) +- $(BOOT_JAVA_CMD) -jar $(BUILDTOOLJARDIR)/javazic.jar -V "$(TZDATA_VER)" -d $(WORKDIR) $(TZFILES) ++ $(BOOT_JAVA_CMD) -cp $(ICEDTEA_CLS_DIR):$(BUILDTOOLJARDIR)/javazic.jar \ ++ build.tools.javazic.Main -V "$(TZDATA_VER)" -d $(WORKDIR) $(TZFILES) + @$(java-vm-cleanup) + + $(INSTALLDIR)/$(MAPFILE): $(WORKDIR)/$(MAPFILE) diff -Nru openjdk-ecj.orig/jdk/make/sun/text/Makefile openjdk-ecj/jdk/make/sun/text/Makefile --- openjdk-ecj.orig/jdk/make/sun/text/Makefile 2008-09-25 08:43:37.000000000 +0100 +++ openjdk-ecj/jdk/make/sun/text/Makefile 2008-10-17 03:21:22.000000000 +0100 From gnu_andrew at member.fsf.org Sat Oct 18 21:23:39 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 19 Oct 2008 04:23:39 +0000 Subject: changeset in /hg/icedtea: Fix PulseAudio build. Message-ID: changeset 2c18c20ea81c in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=2c18c20ea81c description: Fix PulseAudio build. ChangeLog: 2008-10-19 Andrew John Hughes * Makefile.am: Fix location of PulseAudio build output. diffstat: 2 files changed, 8 insertions(+), 3 deletions(-) ChangeLog | 5 +++++ Makefile.am | 6 +++--- diffs (41 lines): diff -r 6c315f0c65a5 -r 2c18c20ea81c ChangeLog --- a/ChangeLog Sun Oct 19 04:45:28 2008 +0100 +++ b/ChangeLog Sun Oct 19 05:20:39 2008 +0100 @@ -1,3 +1,8 @@ 2008-10-19 Andrew John Hughes + + * Makefile.am: + Fix location of PulseAudio build output. + 2008-10-19 Andrew John Hughes * Makefile.am: diff -r 6c315f0c65a5 -r 2c18c20ea81c Makefile.am --- a/Makefile.am Sun Oct 19 04:45:28 2008 +0100 +++ b/Makefile.am Sun Oct 19 05:20:39 2008 +0100 @@ -33,7 +33,7 @@ PULSE_JAVA_DIR = $(srcdir)/pulseaudio PULSE_JAVA_DIR = $(srcdir)/pulseaudio PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java -PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_DIR)/bin +PULSE_JAVA_CLASS_DIR = $(abs_top_builddir)/pulseaudio else PULSE_JAVA_DIR = PULSE_JAVA_NATIVE_SRCDIR = @@ -1580,14 +1580,14 @@ if ENABLE_PULSE_JAVA if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(JAVAC) -d ../../../$(PULSE_JAVA_CLASS_DIR) \ + $(JAVAC) -d $(PULSE_JAVA_CLASS_DIR) \ -bootclasspath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ org/classpath/icedtea/pulseaudio/*.java\ ) \ else \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ + $(ICEDTEA_BOOT_DIR)/bin/javac -d $(PULSE_JAVA_CLASS_DIR)\ -bootclasspath \ '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ org/classpath/icedtea/pulseaudio/*.java\ From bugzilla-daemon at icedtea.classpath.org Sun Oct 19 02:12:56 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sun, 19 Oct 2008 09:12:56 +0000 Subject: [Bug 223] New: first applet load asks for temp dir (cancel freezes firefox) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=223 Summary: first applet load asks for temp dir (cancel freezes firefox) Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/285729 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com "the first time (after installing it) I load an applet, it asks for the temp directory (default is /tmp), with 2 buttons : OK and cancel. This question should be removed : - 99% people don't care about what is the temp directory - 99% of those who care will choose /tmp Moreover, there is a problem if you click on cancel : no temp dir is selected. Firefox takes 100%cpu and no applet can be executed until a kill -9 / restart of firefox, then choosing a temp dir and click on OK." -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sun Oct 19 05:54:37 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sun, 19 Oct 2008 12:54:37 +0000 Subject: [Bug 224] New: autoconf AC_ENABLE_ARG misuse Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=224 Summary: autoconf AC_ENABLE_ARG misuse Product: IcedTea Version: unspecified Platform: Other OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: alon.barlev at gmail.com Hello, There are some AC_ENABLE_ARG macros that are used incorrectly triggered enable with --disable-X is requested. Attached a patch for this against icedtea6 head. Thanks. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sun Oct 19 05:54:59 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sun, 19 Oct 2008 12:54:59 +0000 Subject: [Bug 224] autoconf AC_ENABLE_ARG misuse Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=224 ------- Comment #1 from alon.barlev at gmail.com 2008-10-19 12:54 ------- Created an attachment (id=118) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=118&action=view) icedtea6-head-autoconf.patch -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Sun Oct 19 08:45:04 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 15:45:04 +0000 Subject: changeset in /hg/icedtea6: 2008-10-19 Matthias Klose changeset eb9d7dcd692c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=eb9d7dcd692c description: 2008-10-19 Matthias Klose * patches/icedtea-cacao-ignore-jdi-tests.patch: Ignore jdi tests, not yet implemented in cacao. * patches/icedtea-cacao-ignore-tests.patch: Ignore long running failing tests, be nice with build daemoms: ProducerConsumerLoops. * Makefile.am: Apply patches when configured with --enable-cacao. diffstat: 4 files changed, 1380 insertions(+), 1 deletion(-) ChangeLog | 8 Makefile.am | 4 patches/icedtea-cacao-ignore-jdi-tests.patch | 1359 ++++++++++++++++++++++++++ patches/icedtea-cacao-ignore-tests.patch | 10 diffs (truncated from 1406 to 500 lines): diff -r dafd805c02be -r eb9d7dcd692c ChangeLog --- a/ChangeLog Sat Oct 18 16:08:37 2008 -0400 +++ b/ChangeLog Sun Oct 19 17:44:39 2008 +0200 @@ -1,3 +1,11 @@ 2008-10-17 Deepak Bhole + + * patches/icedtea-cacao-ignore-jdi-tests.patch: Ignore jdi tests, + not yet implemented in cacao. + * patches/icedtea-cacao-ignore-tests.patch: Ignore long running failing + tests, be nice with build daemoms: ProducerConsumerLoops. + * Makefile.am: Apply patches when configured with --enable-cacao. + 2008-10-17 Deepak Bhole * plugin/icedtea/sun/applet/PluginAppletViewer.java: Make applet size diff -r dafd805c02be -r eb9d7dcd692c Makefile.am --- a/Makefile.am Sat Oct 18 16:08:37 2008 -0400 +++ b/Makefile.am Sun Oct 19 17:44:39 2008 +0200 @@ -538,7 +538,9 @@ endif if WITH_CACAO ICEDTEA_PATCHES += \ - patches/icedtea-cacao.patch + patches/icedtea-cacao.patch \ + patches/icedtea-cacao-ignore-jdi-tests.patch \ + patches/icedtea-cacao-ignore-tests.patch endif if ENABLE_PULSE_JAVA diff -r dafd805c02be -r eb9d7dcd692c patches/icedtea-cacao-ignore-jdi-tests.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-cacao-ignore-jdi-tests.patch Sun Oct 19 17:44:39 2008 +0200 @@ -0,0 +1,1359 @@ +--- openjdk/jdk/test/com/sun/jdi/TemplateTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/TemplateTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -26,6 +26,7 @@ + // TEMPLATE: delete TEMPLATE lines + /** + * @test ++ * @ignore cacao nyi + * @bug 0000000 + * @summary

+ * +--- openjdk/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 6394084 + # @summary Redefine class can't handle addition of 64 bit constants in JDK1.5.0_05 + # +--- openjdk/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -1,5 +1,6 @@ + /** + * @test/nodynamiccopyright/ ++ * @ignore cacao nyi + * @bug 4952629 4870514 + * @summary REGRESSION: javac generates a spurious line number entry on } else { + * +--- openjdk/jdk/test/com/sun/jdi/Redefine-g.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/Redefine-g.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4777868 + # @summary Compile with java -g, do a RedefineClasses, and you don't get local vars + # @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/RedefineClasses.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineClasses.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4628760 + # @summary RedefineClasses gets assertion: "Should be a method entry in cpcache!" + # @author jjh +--- openjdk/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 6431735 + * @summary Unexpected ClassCastException in ThreadReference.forceEarlyReturn + * @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/DebuggerThreadTest.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/DebuggerThreadTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4513488 + * @summary Test for JDI: Internal JDI helper threads should setDaemon(true) + * +--- openjdk/jdk/test/com/sun/jdi/RedefineException.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineException.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4559100 + # @summary The VM crashes when a method in a redefined class throws an exception. + # @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/LocationTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/LocationTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4419453 + * @summary Test that Method.location() returns the right values + * +--- openjdk/jdk/test/com/sun/jdi/LineNumberInfo.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/LineNumberInfo.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4238644 4238643 4238641 4944198 + * @summary Test javac regressions in the generation of line number info + * @author Gordon Hirsch +--- openjdk/jdk/test/com/sun/jdi/GetSetLocalTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/GetSetLocalTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -1,5 +1,6 @@ + /** hard coded linenumbers in other tests - DO NOT CHANGE + * @test/nodynamiccopyright/ ++ * @ignore cacao nyi + * @bug 4300412 + * @summary Test GetLocal* and SetLocal* functions + * +--- openjdk/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -25,6 +25,7 @@ + + # + # @test ++# @ignore cacao nyi + # @bug 4507088 + # @summary TTY: Add a comment delimiter to the jdb command set + # @author Tim Bell +--- openjdk/jdk/test/com/sun/jdi/WatchFramePop.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/WatchFramePop.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4546478 + # @summary Enabling a watchpoint can kill following NotifyFramePops + # @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/FinalLocalsTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/FinalLocalsTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4326648 4768329 + * @summary Test to verify that table entries are generated for all final + * locals when a class is built for debug, even if they could be +--- openjdk/jdk/test/com/sun/jdi/ClassesByName.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ClassesByName.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4287992 + * @author Robert Field + * +--- openjdk/jdk/test/com/sun/jdi/DeoptimizeWalk.sh.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/DeoptimizeWalk.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4525714 + # @summary jtreg test PopAsynchronousTest fails in build 85 with -Xcomp + # @author Jim Holmlund/Swamy Venkataramanappa +--- openjdk/jdk/test/com/sun/jdi/OptionTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/OptionTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /* + * @test OptionTest ++ * @ignore cacao nyi + * @bug 5095072 + * @summary Test for misc jdwp options, just that the option is parsed + * @author Kelly O'Hair (copied from Tim Bell's NoLaunchOptionTest) +--- openjdk/jdk/test/com/sun/jdi/VMDeathLastTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/VMDeathLastTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4420844 4449394 + * @summary Checks that no events are sent after VMDeath, and test vm.canBeModified + * +--- openjdk/jdk/test/com/sun/jdi/InstanceFilter.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/InstanceFilter.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4312961 + * @summary Verify that an instance filter on a MethodEntryRequest works + * properly. +--- openjdk/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -25,6 +25,7 @@ + + # + # @test ++# @ignore cacao nyi + # @bug 4448658 + # @summary javac produces the inconsistent variable debug in while loops. + # @author Tim Bell +--- openjdk/jdk/test/com/sun/jdi/SuspendThreadTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/SuspendThreadTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 6485605 + * @summary com.sun.jdi.InternalException: Inconsistent suspend policy in internal event handler + * +--- openjdk/jdk/test/com/sun/jdi/UTF8Test.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/UTF8Test.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 5033550 + * @summary JDWP back end uses modified UTF-8 + * +--- openjdk/jdk/test/com/sun/jdi/RedefineStep.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineStep.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4689395 + # @summary "step over" after a class is redefined acts like "step out" + # @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4660756 + # @summary TTY: Need to clear source cache after doing a redefine class + # @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/JdbMethodExitTest.sh.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/JdbMethodExitTest.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 6202891 + # @summary TTY: Add support for method exit event return values to jdb + # @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 6270982 + # @summary Redefine a class so that the order of external classes in + # the constant pool are changed. +--- openjdk/jdk/test/com/sun/jdi/ListenAddress.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ListenAddress.java 2008-10-19 15:21:54.000000000 +0000 +@@ -22,6 +22,7 @@ + */ + + /* @test ++ * @ignore cacao nyi + * @bug 4932074 + * @summary Test that startListening(Map) method of the com.sun.jdi.SocketListen + * Connector returns an address that is usable for the address option on +--- openjdk/jdk/test/com/sun/jdi/ClassesByName2Test.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ClassesByName2Test.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4406439 4925740 + * @summary ClassesByName2 verifies that all the classes in the loaded class list can be found with classesByName.. + * +--- openjdk/jdk/test/com/sun/jdi/UnpreparedByName.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/UnpreparedByName.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4368402 + * @summary UnpreparedByName verifies that unprepared classes + * won't be returned by classesByName. +--- openjdk/jdk/test/com/sun/jdi/RedefineFinal.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineFinal.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 4788344 + # @summary RedefineClasses is an apparent no-op if instance method is final + # +--- openjdk/jdk/test/com/sun/jdi/FramesTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/FramesTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4434232 + * @summary Test ThreadReference.frames(int,int) + * +--- openjdk/jdk/test/com/sun/jdi/ArrayRangeTest.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ArrayRangeTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4439631 + * @bug 4448721 + * @bug 4448603 +--- openjdk/jdk/test/com/sun/jdi/AfterThreadDeathTest.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/AfterThreadDeathTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4364671 + * @summary Creating a StepRequest on a nonexistant thread fails + * +--- openjdk/jdk/test/com/sun/jdi/LaunchCommandLine.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/LaunchCommandLine.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4245011 + * @summary Test launcher command line construction + * @author Gordon Hirsch +--- openjdk/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4453310 + * @summary Test the deletion of event requests that are expired + * by virtue of addCountFilter. +--- openjdk/jdk/test/com/sun/jdi/SDENullTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/SDENullTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4621289 + * @summary vm.setDefaultStratum(null) causes a Null Ptr exception + * +--- openjdk/jdk/test/com/sun/jdi/RedefineAnnotation.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/RedefineAnnotation.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -24,6 +24,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 5002251 6407335 6412391 + # @summary Redefine a class that has an annotation and verify that the + # new annotation is returned. +--- openjdk/jdk/test/com/sun/jdi/VMDeathRequestTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/VMDeathRequestTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4419314 + * @author Robert Field + * +--- openjdk/jdk/test/com/sun/jdi/PopAsynchronousTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/PopAsynchronousTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4467564 + * @summary Test the popping of frames in an asynchronous context + * (that is, when suspended by the debugger at random points) +--- openjdk/jdk/test/com/sun/jdi/InvokeHangTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/InvokeHangTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 6293795 + * @summary Backend hangs when invokeMethod is called from a JDI eventHandler + * +--- openjdk/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4425852 + * @author Robert Field + * +--- openjdk/jdk/test/com/sun/jdi/EarlyReturnTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/EarlyReturnTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /* + * @test ++ * @ignore cacao nyi + * @bug 6175634 + * @summary Allow early return from methods + * +--- openjdk/jdk/test/com/sun/jdi/ArgumentValuesTest.java.orig 2008-08-28 08:19:45.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ArgumentValuesTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -1,5 +1,6 @@ + /** hard coded linenumbers in other tests - DO NOT CHANGE + * @test/nodynamiccopyright/ ++ * @ignore cacao nyi + * @bug 4490824 + * @summary JDI: provide arguments when no debug attributes present + * +--- openjdk/jdk/test/com/sun/jdi/ImmutableResourceTest.sh.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ImmutableResourceTest.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -22,6 +22,7 @@ + # + + # @test ++# @ignore cacao nyi + # @bug 6287579 + # @summary SubClasses of ListResourceBundle should fix getContents() + # @author Tim Bell +--- openjdk/jdk/test/com/sun/jdi/ProcessAttachTest.sh.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/ProcessAttachTest.sh 2008-10-19 15:21:54.000000000 +0000 +@@ -25,6 +25,7 @@ + + + # @test ++# @ignore cacao nyi + # @bug 4527279 + # @summary Unit test for ProcessAttachingConnector + # +--- openjdk/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java.orig 2008-08-28 08:19:46.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -23,6 +23,7 @@ + + /** + * @test ++ * @ignore cacao nyi + * @bug 4195445 6204179 + * @summary JDWP, JDI: Add return value to Method Exit Event + * @author Jim Holmlund +--- openjdk/jdk/test/com/sun/jdi/PopAndStepTest.java.orig 2008-08-28 08:19:47.000000000 +0000 ++++ openjdk/jdk/test/com/sun/jdi/PopAndStepTest.java 2008-10-19 15:21:54.000000000 +0000 +@@ -2,6 +2,7 @@ + // THIS TEST IS LINE NUMBER SENSITIVE + /** + * @test ++ * @ignore cacao nyi + * @bug 4530424 + * @summary Hin says that doing a step over after a popframe acts like a resume. + * From doko at ubuntu.com Sun Oct 19 09:07:16 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sun, 19 Oct 2008 16:07:16 +0000 Subject: changeset in /hg/icedtea6: 2008-10-19 Matthias Klose changeset 6cc69d786ebb in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=6cc69d786ebb description: 2008-10-19 Matthias Klose * Makefile.am (jtregcheck): Cleanup processes. diffstat: 2 files changed, 34 insertions(+) ChangeLog | 4 ++++ Makefile.am | 30 ++++++++++++++++++++++++++++++ diffs (56 lines): diff -r eb9d7dcd692c -r 6cc69d786ebb ChangeLog --- a/ChangeLog Sun Oct 19 17:44:39 2008 +0200 +++ b/ChangeLog Sun Oct 19 18:06:54 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-19 Matthias Klose + + * Makefile.am (jtregcheck): Cleanup processes. + 2008-10-19 Matthias Klose * patches/icedtea-cacao-ignore-jdi-tests.patch: Ignore jdi tests, diff -r eb9d7dcd692c -r 6cc69d786ebb Makefile.am --- a/Makefile.am Sun Oct 19 17:44:39 2008 +0200 +++ b/Makefile.am Sun Oct 19 18:06:54 2008 +0200 @@ -1569,11 +1569,41 @@ clean-jtreg-reports: rm -rf test/hotspot test/langtools test/jdk rm -f test/check-*.log test/jtreg-summary.log +# FIXME: this might need some adjustment for other OS than Linux +jtreg_processes = ps x -ww -o pid,ppid,args \ + | awk '$$2 == 1 && $$3 ~ /^$(subst /,\/,/scratch)/' \ + | sed 's,$(CURDIR)/$(sdkimg),,g;s,$(CURDIR),,g' +jtreg_pids = ps x --no-headers -ww -o pid,ppid,args \ + | awk '$$2 == 1 && $$3 ~ /^$(subst /,\/,$(CURDIR)/$(sdkimg))/ {print $$1}' + jtregcheck: jtreg check-hotspot check-langtools check-jdk for i in hotspot langtools jdk; do \ echo "--------------- jtreg console summary for $$i ---------------"; \ egrep -v '^(Passed:|Directory)' test/check-$$i.log; \ done | tee test/jtreg-summary.log + + : # kill testsuite processes still hanging + @pids=$$($(jtreg_pids)); \ + if [ -n "$$pids" ]; then \ + echo "killing processes..."; \ + $(jtreg_processes); \ + kill -1 $$pids; \ + sleep 2; \ + pids=$$($(jtreg_pids)); \ + if [ -n "$$pids" ]; then \ + echo "try harder..."; \ + $(jtreg_processes); \ + kill -9 $$pids; \ + sleep 2; \ + fi; \ + else \ + echo "nothing to cleanup"; \ + fi; \ + pids=$$($(jtreg_pids)); \ + if [ -n "$$pids" ]; then \ + echo "leftover processes..."; \ + $(jtreg_processes); \ + fi check-local: jtregcheck From gnu_andrew at member.fsf.org Mon Oct 20 02:00:39 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 10:00:39 +0100 Subject: IcedTea->IcedTea6 merge: Sorry for the flood Message-ID: <17c6771e0810200200p68cda5c7y51c117ac7f12160@mail.gmail.com> Dear all, Apologies for the flood of commit emails. I merged changes from IcedTea6 across to the IcedTea tree at the weekend, and forgot we still had this craziness :( The good news is that PulseAudio can now be built with IcedTea. I still need to check some of the other new features. Cheers, -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From gnu_andrew at member.fsf.org Mon Oct 20 02:47:29 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 10:47:29 +0100 Subject: changeset in /hg/icedtea6: * Makefile.am (EXTRA_DIST): Always in... In-Reply-To: <1224258836.4461.12.camel@hermans.wildebeest.org> References: <17c6771e0810160123s7f8afa2dwddb97c17e7cd44f@mail.gmail.com> <1224258836.4461.12.camel@hermans.wildebeest.org> Message-ID: <17c6771e0810200247v669d8b77w30895db7b038eff5@mail.gmail.com> 2008/10/17 Mark Wielaard : > Hi Andrew, > > On Thu, 2008-10-16 at 09:23 +0100, Andrew John Hughes wrote: >> 2008/10/15 Mark Wielaard : >> > changeset d3bdd63d63d1 in /hg/icedtea6 >> > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d3bdd63d63d1 >> > description: >> > * Makefile.am (EXTRA_DIST): Always include all patches, >> > irrespective of any configure options. >> >> Is there going to be another release? The current tarball is unbuildable for >> an ecj build: >> >> Checking patches/icedtea-ecj.patch >> /bin/sh: line 8: >> /var/tmp/portage/dev-java/icedtea6-1.3-r1/work/icedtea6-1.3/patches/icedtea-ecj.patch: >> No such file or directory >> ERROR patch patches/icedtea-ecj.patch FAILED! > > O, that is bad. This wasn't exactly what the patch was for. It was to > make sure the shark specific patches (and any conditionally patch lists) > would all be included. I see why this happened. ICEDTEA_ECJ_PATCH was > renamed to ICEDTEA_ECJ_PATCHES except in EXTRA_DIST. My patch would also > help with that. > Ok, the name change is my fault, I thought I'd changed it there. Anyway, the more general fix you've applied is the correct one, otherwise the contents of the release tarball depend on how things are configured when make dist is run. So Shark is presumably missing from the current one too. I count 77 patches in the tarball and 87 in hg. > Creating a new release seems like a good idea, to make sure all files > are included. > I hope this is what Lillian had planned when she changed the tree to 1.3.1. > I haven't tried if make distcheck works. That is always a good thing to > be sure the dist tar ball is complete. But sometimes hard to get working > for the first time. > I've had make distcheck run to the point of doing the tests before, so this wouldn't be the first run. Currently it stumbles over the -bootclasspath issue, at least for me. I know there are bugs in the pulseaudio config (fixed in icedtea, I'll backport) that prevent out-of-dir builds. Ideally make distcheck should be run with most things enabled, but I don't have NetBeans to check VisualVM (and I still wonder why that is in this tree at all). > Cheers, > > Mark > > Cheers, -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From gnu_andrew at member.fsf.org Mon Oct 20 04:25:41 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 11:25:41 +0000 Subject: changeset in /hg/icedtea6: Fix use of --enable options. Message-ID: changeset a4df7fa32706 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a4df7fa32706 description: Fix use of --enable options. 2008-10-20 Alon Bar-Lev PR icedtea/224: * configure.ac: Correct use of --enable options. diffstat: 3 files changed, 16 insertions(+), 3 deletions(-) ChangeLog | 6 ++++++ THANKYOU | 7 +++++++ configure.ac | 6 +++--- diffs (52 lines): diff -r 6cc69d786ebb -r a4df7fa32706 ChangeLog --- a/ChangeLog Sun Oct 19 18:06:54 2008 +0200 +++ b/ChangeLog Mon Oct 20 11:05:12 2008 +0100 @@ -1,3 +1,9 @@ 2008-10-19 Matthias Klose + + PR icedtea/224: + * configure.ac: + Correct use of --enable options. + 2008-10-19 Matthias Klose * Makefile.am (jtregcheck): Cleanup processes. diff -r 6cc69d786ebb -r a4df7fa32706 THANKYOU --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/THANKYOU Mon Oct 20 11:05:12 2008 +0100 @@ -0,0 +1,7 @@ +The following have made minor contributions to the IcedTea +project, such as testing, bug submission, or minor patches. See also +the AUTHORS file, which lists people who have submitted major +patches. If your name does not appear on either list, but should, let +us know. Please keep this list in alphabetic order. + +Alon Bar-Lev (alon.barlev at gmail.com) diff -r 6cc69d786ebb -r a4df7fa32706 configure.ac --- a/configure.ac Sun Oct 19 18:06:54 2008 +0200 +++ b/configure.ac Mon Oct 20 11:05:12 2008 +0100 @@ -125,13 +125,13 @@ AC_ARG_ENABLE([gcjwebplugin], AC_ARG_ENABLE([gcjwebplugin], [AS_HELP_STRING([--enable-gcjwebplugin], [Build the GCJ Web Plugin plugin (deprecated)])], - [enable_gcjwebplugin="yes"], [enable_gcjwebplugin="no"]) + [enable_gcjwebplugin="${enableval}"], [enable_gcjwebplugin="no"]) AM_CONDITIONAL(ENABLE_GCJWEBPLUGIN, test "x${enable_gcjwebplugin}" = "xyes") AC_ARG_ENABLE([pulse-java], [AS_HELP_STRING([--enable-pulse-java], [Enable pulse-java - an audio mixer spi that uses PulseAudio])], - [enable_pulse_java="yes"], [enable_pulse_java="no"]) + [enable_pulse_java="${enableval}"], [enable_pulse_java="no"]) AM_CONDITIONAL(ENABLE_PULSE_JAVA, test "x${enable_pulse_java}" = "xyes") AC_ARG_ENABLE([docs], @@ -143,7 +143,7 @@ AC_ARG_ENABLE([visualvm], AC_ARG_ENABLE([visualvm], [AS_HELP_STRING([--enable-visualvm], [Enable compilation of visualvm.])], - [enable_visualvm="yes"], [enable_visualvm="no"]) + [enable_visualvm="${enableval}"], [enable_visualvm="no"]) AM_CONDITIONAL(WITH_VISUALVM, test "x${enable_visualvm}" = "xyes") if test "x${enable_visualvm}" = "xyes" From gnu_andrew at member.fsf.org Mon Oct 20 04:25:42 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 11:25:42 +0000 Subject: changeset in /hg/icedtea6: Fix paths. Message-ID: changeset 1fddd063617e in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1fddd063617e description: Fix paths. 2008-10-20 Andrew John Hughes * Makefile.am: Fix LiveConnect and PulseAudio paths to work when srcdir != builddir. diffstat: 2 files changed, 12 insertions(+), 6 deletions(-) ChangeLog | 6 ++++++ Makefile.am | 12 ++++++------ diffs (57 lines): diff -r a4df7fa32706 -r 1fddd063617e ChangeLog --- a/ChangeLog Mon Oct 20 11:05:12 2008 +0100 +++ b/ChangeLog Mon Oct 20 12:25:28 2008 +0100 @@ -1,3 +1,9 @@ 2008-10-20 Alon Bar-Lev + + * Makefile.am: + Fix LiveConnect and PulseAudio paths to work + when srcdir != builddir. + 2008-10-20 Alon Bar-Lev PR icedtea/224: diff -r a4df7fa32706 -r 1fddd063617e Makefile.am --- a/Makefile.am Mon Oct 20 11:05:12 2008 +0100 +++ b/Makefile.am Mon Oct 20 12:25:28 2008 +0100 @@ -30,10 +30,10 @@ endif if ENABLE_PULSE_JAVA # include the makefile in pulseaudio subdir -PULSE_JAVA_DIR = pulseaudio +PULSE_JAVA_DIR = $(srcdir)/pulseaudio PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java -PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_DIR)/bin +PULSE_JAVA_CLASS_DIR = $(abs_top_builddir)/pulseaudio else PULSE_JAVA_DIR = PULSE_JAVA_NATIVE_SRCDIR = @@ -639,8 +639,8 @@ stamps/patch.stamp: stamps/patch-fsg.sta sed -i "s#IcedTea6#IcedTea6 $${icedtea_version}#" openjdk/jdk/make/common/shared/Defs.gmk if ENABLE_PLUGIN - cp -a plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ - cp -a plugin/icedtea/netscape rt/ + cp -a $(srcdir)/plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + cp -a $(srcdir)/plugin/icedtea/netscape rt/ endif clean-patch: @@ -1469,14 +1469,14 @@ if ENABLE_PULSE_JAVA if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(JAVAC) -d ../../../$(PULSE_JAVA_CLASS_DIR) \ + $(JAVAC) -d $(PULSE_JAVA_CLASS_DIR) \ -bootclasspath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ org/classpath/icedtea/pulseaudio/*.java\ ) \ else \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(ICEDTEA_BOOT_DIR)/bin/javac -d ../../../$(PULSE_JAVA_CLASS_DIR)\ + $(ICEDTEA_BOOT_DIR)/bin/javac -d $(PULSE_JAVA_CLASS_DIR)\ -bootclasspath \ '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ org/classpath/icedtea/pulseaudio/*.java\ From bugzilla-daemon at icedtea.classpath.org Mon Oct 20 04:29:18 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 20 Oct 2008 11:29:18 +0000 Subject: [Bug 224] autoconf AC_ENABLE_ARG misuse Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=224 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #2 from gnu_andrew at member.fsf.org 2008-10-20 11:29 ------- changeset a4df7fa32706 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a4df7fa32706 description: Fix use of --enable options. 2008-10-20 Alon Bar-Lev PR icedtea/224: * configure.ac: Correct use of --enable options. diffstat: 3 files changed, 16 insertions(+), 3 deletions(-) ChangeLog | 6 ++++++ THANKYOU | 7 +++++++ configure.ac | 6 +++--- -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gnu_andrew at member.fsf.org Mon Oct 20 05:48:59 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 12:48:59 +0000 Subject: changeset in /hg/icedtea6: Add support for native ecj. Message-ID: changeset 7f335937eca4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=7f335937eca4 description: Add support for native ecj. 2008-10-20 Andrew John Hughes * Makefile.am: Build native ecj for ecj builds when gcj is available. * acinclude.m4: Make configure output more explicit and readable. * configure.ac: Check for gcj, and make output more explicit and readable. * javac.in: Use native ecj when available. diffstat: 5 files changed, 93 insertions(+), 51 deletions(-) ChangeLog | 12 ++++++++++ Makefile.am | 12 +++++++++- acinclude.m4 | 69 ++++++++++++++++++++++++---------------------------------- configure.ac | 42 ++++++++++++++++++++++++++++------- javac.in | 9 +++++-- diffs (485 lines): diff -r 1fddd063617e -r 7f335937eca4 ChangeLog --- a/ChangeLog Mon Oct 20 12:25:28 2008 +0100 +++ b/ChangeLog Mon Oct 20 13:48:45 2008 +0100 @@ -1,3 +1,15 @@ 2008-10-20 Andrew John Hughes + + * Makefile.am: + Build native ecj for ecj builds when + gcj is available. + * acinclude.m4: + Make configure output more explicit and readable. + * configure.ac: + Check for gcj, and make output more explicit + and readable. + * javac.in: Use native ecj when available. + 2008-10-20 Andrew John Hughes * Makefile.am: diff -r 1fddd063617e -r 7f335937eca4 Makefile.am --- a/Makefile.am Mon Oct 20 12:25:28 2008 +0100 +++ b/Makefile.am Mon Oct 20 13:48:45 2008 +0100 @@ -863,7 +863,7 @@ clean-bootstrap-directory-symlink: # =============================== # bootstrap/ecj. -stamps/bootstrap-directory-ecj.stamp: +stamps/bootstrap-directory-ecj.stamp: stamps/native-ecj.stamp mkdir -p bootstrap/ecj/bin stamps/ ln -sf $(JAVA) bootstrap/ecj/bin/java ln -sf $(JAVAH) bootstrap/ecj/bin/javah @@ -1096,6 +1096,14 @@ icedtea-debug-against-icedtea: \ # OpenJDK ecj Targets # =================== + +stamps/native-ecj.stamp: + mkdir -p stamps ; \ + if test "x${GCJ}" != x; then \ + ${GCJ} ${CFLAGS} -Wl,-Bsymbolic -o native-ecj \ + --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} ; \ + fi ; \ + touch stamps/native-ecj.stamp stamps/icedtea-ecj.stamp: stamps/hotspot-tools.stamp stamps/plugs.stamp \ stamps/ports-ecj.stamp stamps/patch-ecj.stamp stamps/cacao.stamp @@ -1704,6 +1712,8 @@ icedtea-debug: stamps/icedtea-debug.stam icedtea-ecj: stamps/icedtea-ecj.stamp +native-ecj: stamps/native-ecj.stamp + patch-ecj: stamps/patch-ecj.stamp patch: stamps/patch.stamp diff -r 1fddd063617e -r 7f335937eca4 acinclude.m4 --- a/acinclude.m4 Mon Oct 20 12:25:28 2008 +0100 +++ b/acinclude.m4 Mon Oct 20 13:48:45 2008 +0100 @@ -180,7 +180,7 @@ AC_DEFUN([FIND_JAVA], AC_DEFUN([WITH_OPENJDK_SRC_DIR], [ - AC_MSG_CHECKING(openjdk sources) + AC_MSG_CHECKING(for an OpenJDK source directory) AC_ARG_WITH([openjdk-src-dir], [AS_HELP_STRING(--with-openjdk-src-dir,specify the location of the openjdk sources)], [ @@ -203,7 +203,7 @@ AC_DEFUN([FIND_ECJ_JAR], [AS_HELP_STRING(--with-ecj-jar,specify location of the ECJ jar)], [ if test -f "${withval}"; then - AC_MSG_CHECKING(ecj jar) + AC_MSG_CHECKING(for an ecj jar) ECJ_JAR="${withval}" AC_MSG_RESULT(${withval}) fi @@ -245,7 +245,7 @@ AC_DEFUN([FIND_LIBGCJ_JAR], [AS_HELP_STRING(--with-libgcj-jar,specify location of the libgcj 4.3.x jar)], [ if test -f "${withval}"; then - AC_MSG_CHECKING(libgcj jar) + AC_MSG_CHECKING(for libgcj jar) LIBGCJ_JAR="${withval}" AC_MSG_RESULT(${withval}) fi @@ -284,7 +284,7 @@ AC_DEFUN([FIND_JAVAH], [AS_HELP_STRING(--with-javah,specify location of the javah)], [ if test -f "${withval}"; then - AC_MSG_CHECKING(javah) + AC_MSG_CHECKING(for javah) JAVAH="${withval}" AC_MSG_RESULT(${withval}) else @@ -312,7 +312,7 @@ AC_DEFUN([FIND_JAR], [AS_HELP_STRING(--with-jar,specify location of the jar)], [ if test -f "${withval}"; then - AC_MSG_CHECKING(jar) + AC_MSG_CHECKING(for jar) JAR="${withval}" AC_MSG_RESULT(${withval}) else @@ -331,7 +331,7 @@ AC_DEFUN([FIND_JAR], if test -z "${JAR}"; then AC_MSG_ERROR("jar was not found.") fi - AC_MSG_CHECKING([wether jar supports @ argument]) + AC_MSG_CHECKING([whether jar supports @ argument]) touch _config.txt cat >_config.list < References: Message-ID: <48FC892F.1060403@ubuntu.com> Andrew John Hughes schrieb: > * Makefile.am: > Build native ecj for ecj builds when > gcj is available. could you enable this by an option only? every distribution at least comes with a bc compiled ecj or eclipse-ecj.jar, so it is a penalty to rebuild it in icedtea. Matthias PS: let's see when we add an --with-gcj option and build that one as well if it's not found ;p From gnu_andrew at member.fsf.org Mon Oct 20 06:46:47 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 14:46:47 +0100 Subject: changeset in /hg/icedtea6: Add support for native ecj. In-Reply-To: <48FC892F.1060403@ubuntu.com> References: <48FC892F.1060403@ubuntu.com> Message-ID: <17c6771e0810200646gc4f3fdfgae47950eb0686adb@mail.gmail.com> 2008/10/20 Matthias Klose : > Andrew John Hughes schrieb: >> * Makefile.am: >> Build native ecj for ecj builds when >> gcj is available. > > could you enable this by an option only? every distribution at least comes with a bc compiled ecj or > eclipse-ecj.jar, so it is a penalty to rebuild it in icedtea. > I can, but the reason I added support to begin with is that we don't use the system's bc-compiled ecj: ln -sf ../../../javac bootstrap/ecj/bin/javac Instead, javac.in is used. The overhead of rebuilding a ecj is not ideal, agreed, but it's noticeably faster once built than running the entire bootstrap stage with gij. > Matthias > > PS: let's see when we add an --with-gcj option and build that one as well if it's not found ;p > -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From gnu_andrew at member.fsf.org Mon Oct 20 08:06:01 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 15:06:01 +0000 Subject: changeset in /hg/icedtea6: Make native ecj optional. Message-ID: changeset 0a1e75999e5a in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=0a1e75999e5a description: Make native ecj optional. 2008-10-20 Andrew John Hughes * Makefile.am: Use GCJ if not equal to no instead of being empty. * acinclude.m4: (AC_CHECK_WITH_GCJ): New macro. * configure.ac: Use AC_CHECK_WITH_GCJ in preference to just checking for GCJ. diffstat: 4 files changed, 31 insertions(+), 3 deletions(-) ChangeLog | 11 +++++++++++ Makefile.am | 2 +- acinclude.m4 | 18 ++++++++++++++++++ configure.ac | 3 +-- diffs (68 lines): diff -r 7f335937eca4 -r 0a1e75999e5a ChangeLog --- a/ChangeLog Mon Oct 20 13:48:45 2008 +0100 +++ b/ChangeLog Mon Oct 20 16:05:49 2008 +0100 @@ -1,3 +1,14 @@ 2008-10-20 Andrew John Hughes + + * Makefile.am: + Use GCJ if not equal to no instead + of being empty. + * acinclude.m4: + (AC_CHECK_WITH_GCJ): New macro. + * configure.ac: + Use AC_CHECK_WITH_GCJ in preference to + just checking for GCJ. + 2008-10-20 Andrew John Hughes * Makefile.am: diff -r 7f335937eca4 -r 0a1e75999e5a Makefile.am --- a/Makefile.am Mon Oct 20 13:48:45 2008 +0100 +++ b/Makefile.am Mon Oct 20 16:05:49 2008 +0100 @@ -1099,7 +1099,7 @@ icedtea-debug-against-icedtea: \ stamps/native-ecj.stamp: mkdir -p stamps ; \ - if test "x${GCJ}" != x; then \ + if test "x${GCJ}" != "xno"; then \ ${GCJ} ${CFLAGS} -Wl,-Bsymbolic -o native-ecj \ --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} ; \ fi ; \ diff -r 7f335937eca4 -r 0a1e75999e5a acinclude.m4 --- a/acinclude.m4 Mon Oct 20 13:48:45 2008 +0100 +++ b/acinclude.m4 Mon Oct 20 16:05:49 2008 +0100 @@ -895,3 +895,21 @@ AC_DEFUN([AC_CHECK_WITH_CACAO_SRC_ZIP], AC_MSG_RESULT(${ALT_CACAO_SRC_ZIP}) AC_SUBST(ALT_CACAO_SRC_ZIP) ]) + +AC_DEFUN([AC_CHECK_WITH_GCJ], +[ + AC_MSG_CHECKING([whether to compile ecj natively]) + AC_ARG_WITH([gcj], + [AS_HELP_STRING(--with-gcj,location of gcj for natively compiling ecj)], + [ + GCJ="${withval}" + ], + [ + GCJ="no" + ]) + AC_MSG_RESULT([${GCJ}]) + if test "x${GCJ}" = xyes; then + AC_PATH_TOOL([GCJ],[gcj]) + fi + AC_SUBST([GCJ]) +]) diff -r 7f335937eca4 -r 0a1e75999e5a configure.ac --- a/configure.ac Mon Oct 20 13:48:45 2008 +0100 +++ b/configure.ac Mon Oct 20 16:05:49 2008 +0100 @@ -32,8 +32,7 @@ FIND_TOOL([GAWK], [gawk]) FIND_TOOL([GAWK], [gawk]) AC_PATH_TOOL([HG],[hg]) AC_SUBST([HG]) -AC_PATH_TOOL([GCJ],[gcj]) -AC_SUBST([GCJ]) +AC_CHECK_WITH_GCJ AC_MSG_CHECKING([for a JDK home directory]) AC_ARG_WITH([gcj-home], From langel at redhat.com Mon Oct 20 09:35:59 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 20 Oct 2008 16:35:59 +0000 Subject: changeset in /hg/icedtea6: 2008-10-20 Lillian Angel changeset 7c8cf9c74cfa in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=7c8cf9c74cfa description: 2008-10-20 Lillian Angel * Makefile.am: Changed all instances of $(srcdir) to $(abs_top_srcdir). diffstat: 2 files changed, 12 insertions(+), 7 deletions(-) ChangeLog | 5 +++++ Makefile.am | 14 +++++++------- diffs (62 lines): diff -r 0a1e75999e5a -r 7c8cf9c74cfa ChangeLog --- a/ChangeLog Mon Oct 20 16:05:49 2008 +0100 +++ b/ChangeLog Mon Oct 20 12:35:54 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-20 Andrew John Hughes + + * Makefile.am: Changed all instances of $(srcdir) to + $(abs_top_srcdir). + 2008-10-20 Andrew John Hughes * Makefile.am: diff -r 0a1e75999e5a -r 7c8cf9c74cfa Makefile.am --- a/Makefile.am Mon Oct 20 16:05:49 2008 +0100 +++ b/Makefile.am Mon Oct 20 12:35:54 2008 -0400 @@ -30,7 +30,7 @@ endif if ENABLE_PULSE_JAVA # include the makefile in pulseaudio subdir -PULSE_JAVA_DIR = $(srcdir)/pulseaudio +PULSE_JAVA_DIR = $(abs_top_srcdir)/pulseaudio PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java PULSE_JAVA_CLASS_DIR = $(abs_top_builddir)/pulseaudio @@ -557,7 +557,7 @@ stamps/extract.stamp: stamps/download.st mkdir openjdk ; \ $(TAR) xf $(OPENJDK_SRC_ZIP) -C openjdk; \ chmod -R ug+w openjdk ; \ - sh $(srcdir)/fsg.sh ; \ + sh $(abs_top_srcdir)/fsg.sh ; \ fi if WITH_CACAO if !USE_SYSTEM_CACAO @@ -633,14 +633,14 @@ stamps/patch.stamp: stamps/patch-fsg.sta exit 2; \ fi ; \ if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ - revision="-r`(cd $(srcdir); $(HG) tip --template '{rev}')`" ; \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ fi ; \ icedtea_version="$(PACKAGE_VERSION)$${revision}" ; \ sed -i "s#IcedTea6#IcedTea6 $${icedtea_version}#" openjdk/jdk/make/common/shared/Defs.gmk if ENABLE_PLUGIN - cp -a $(srcdir)/plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ - cp -a $(srcdir)/plugin/icedtea/netscape rt/ + cp -a $(abs_top_srcdir)/plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + cp -a $(abs_top_srcdir)/plugin/icedtea/netscape rt/ endif clean-patch: @@ -1534,8 +1534,8 @@ stamps/jtreg.stamp: stamps/icedtea.stamp rm -rf test/jtreg/classes mkdir -p test/jtreg/classes $(ICEDTEA_BOOT_DIR)/bin/javac -g -d test/jtreg/classes -source 1.5 \ - -encoding iso-8859-1 `find $(srcdir)/test/jtreg/com -name '*.java'` - (cd $(srcdir)/test/jtreg; \ + -encoding iso-8859-1 `find $(abs_top_srcdir)/test/jtreg/com -name '*.java'` + (cd $(abs_top_srcdir)/test/jtreg; \ $(ICEDTEA_BOOT_DIR)/bin/jar cfm $(abs_top_builddir)/test/jtreg.jar \ META-INF/MANIFEST.MF \ legal README JavaTest.cmdMgrs.lst JavaTest.toolMgrs.lst \ From langel at redhat.com Mon Oct 20 09:47:41 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 20 Oct 2008 16:47:41 +0000 Subject: changeset in /hg/icedtea6: 2008-10-20 Lillian Angel changeset 2b6b9ce244bc in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2b6b9ce244bc description: 2008-10-20 Lillian Angel * Makefile.am (EXTRA_DIST): Added plugin dir. diffstat: 2 files changed, 7 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ Makefile.am | 3 ++- diffs (25 lines): diff -r 7c8cf9c74cfa -r 2b6b9ce244bc ChangeLog --- a/ChangeLog Mon Oct 20 12:35:54 2008 -0400 +++ b/ChangeLog Mon Oct 20 12:47:37 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-20 Lillian Angel + + * Makefile.am + (EXTRA_DIST): Added plugin dir. + 2008-10-20 Lillian Angel * Makefile.am: Changed all instances of $(srcdir) to diff -r 7c8cf9c74cfa -r 2b6b9ce244bc Makefile.am --- a/Makefile.am Mon Oct 20 12:35:54 2008 -0400 +++ b/Makefile.am Mon Oct 20 12:47:37 2008 -0400 @@ -97,7 +97,8 @@ EXTRA_DIST = rt generated \ jconsole.desktop policytool.desktop \ test/jtreg \ IcedTeaPlugin.cc \ - HACKING pulseaudio fsg.sh + HACKING pulseaudio fsg.sh \ + plugin # The Binary plugs directory is called jdk1.7.0 for historical reasons. The # name is completely irrelevant; only contains the plugs to build IcedTea. From gnu_andrew at member.fsf.org Mon Oct 20 11:30:17 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 20 Oct 2008 18:30:17 +0000 Subject: changeset in /hg/icedtea6: Ensure Java class files have debug in... Message-ID: changeset be559c26fdbc in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=be559c26fdbc description: Ensure Java class files have debug information. 2008-10-20 Andrew John Hughes * HACKING: Add new patch. * Makefile.am: Compile PulseAudio Java files with debugging information. * patches/icedtea-ecj.patch: Regenerated. * patches/icedtea-javac-debuginfo.patch: Ensure JAXWS, JAXP, CORBA and the language tools include debugging information. diffstat: 5 files changed, 964 insertions(+), 821 deletions(-) ChangeLog | 10 HACKING | 1 Makefile.am | 7 patches/icedtea-ecj.patch | 1665 ++++++++++++++++----------------- patches/icedtea-javac-debuginfo.patch | 102 ++ diffs (truncated from 1911 to 500 lines): diff -r 2b6b9ce244bc -r be559c26fdbc ChangeLog --- a/ChangeLog Mon Oct 20 12:47:37 2008 -0400 +++ b/ChangeLog Mon Oct 20 19:30:04 2008 +0100 @@ -1,3 +1,13 @@ 2008-10-20 Lillian Angel + + * HACKING: Add new patch. + * Makefile.am: Compile PulseAudio Java + files with debugging information. + * patches/icedtea-ecj.patch: Regenerated. + * patches/icedtea-javac-debuginfo.patch: + Ensure JAXWS, JAXP, CORBA and the language + tools include debugging information. + 2008-10-20 Lillian Angel * Makefile.am diff -r 2b6b9ce244bc -r be559c26fdbc HACKING --- a/HACKING Mon Oct 20 12:47:37 2008 -0400 +++ b/HACKING Mon Oct 20 19:30:04 2008 +0100 @@ -29,6 +29,7 @@ The following patches are currently appl * icedtea-gcc-suffix.patch: Append $(GCC_SUFFIX) to end of 'gcc' binary name. * icedtea-graphics.patch: Fix word wrap in JTextArea (PR57/S6593649) * icedtea-ia64-fdlibm.patch: Fix name of ia64 architecture from _M_IA64 to ia64. +* icedtea-javac-debuginfo.patch: Ensure debugging information is generated for all class files. * icedtea-javafiles.patch: Add missing Java files to list. * icedtea-jpegclasses.patch: Add com.sun.image.codec.jpeg support. * icedtea-lcms-leak.patch: Fix LCMS memory leak. diff -r 2b6b9ce244bc -r be559c26fdbc Makefile.am --- a/Makefile.am Mon Oct 20 12:47:37 2008 -0400 +++ b/Makefile.am Mon Oct 20 19:30:04 2008 +0100 @@ -530,7 +530,8 @@ ICEDTEA_PATCHES = \ patches/icedtea-6open-6616825.patch \ patches/icedtea-6open-6651382.patch \ patches/icedtea-6open-6756202.patch \ - $(VISUALVM_PATCH) + $(VISUALVM_PATCH) \ + patches/icedtea-javac-debuginfo.patch if WITH_RHINO ICEDTEA_PATCHES += \ @@ -1478,14 +1479,14 @@ if ENABLE_PULSE_JAVA if ! test -d $(ICEDTEA_BOOT_DIR) ; \ then \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(JAVAC) -d $(PULSE_JAVA_CLASS_DIR) \ + $(JAVAC) -g -d $(PULSE_JAVA_CLASS_DIR) \ -bootclasspath \ '$(OPENJDK_SOURCEPATH_DIRS):$(abs_top_builddir)/generated' \ org/classpath/icedtea/pulseaudio/*.java\ ) \ else \ (cd $(PULSE_JAVA_JAVA_SRCDIR); \ - $(ICEDTEA_BOOT_DIR)/bin/javac -d $(PULSE_JAVA_CLASS_DIR)\ + $(ICEDTEA_BOOT_DIR)/bin/javac -g -d $(PULSE_JAVA_CLASS_DIR)\ -bootclasspath \ '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \ org/classpath/icedtea/pulseaudio/*.java\ diff -r 2b6b9ce244bc -r be559c26fdbc patches/icedtea-ecj.patch --- a/patches/icedtea-ecj.patch Mon Oct 20 12:47:37 2008 -0400 +++ b/patches/icedtea-ecj.patch Mon Oct 20 19:30:04 2008 +0100 @@ -1,271 +1,18 @@ ---- openjdk.old/hotspot/build/linux/Makefile 2007-10-12 03:46:24.000000000 -0400 -+++ openjdk-ecj/hotspot/build/linux/Makefile 2007-10-19 10:27:52.000000000 -0400 -@@ -244,28 +244,24 @@ - - $(TARGETS_C2): $(SUBDIRS_C2) - cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) -- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && ./test_gamma - ifdef INSTALL - cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install - endif - - $(TARGETS_TIERED): $(SUBDIRS_TIERED) - cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) -- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && ./test_gamma - ifdef INSTALL - cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install - endif - - $(TARGETS_C1): $(SUBDIRS_C1) - cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) -- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && ./test_gamma - ifdef INSTALL - cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install - endif - - $(TARGETS_CORE): $(SUBDIRS_CORE) - cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) -- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && ./test_gamma - ifdef INSTALL - cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install - endif ---- openjdk.old/jdk/make/common/BuildToolJar.gmk 2007-10-12 03:54:05.000000000 -0400 -+++ openjdk-ecj/jdk/make/common/BuildToolJar.gmk 2007-10-19 10:51:47.000000000 -0400 -@@ -43,7 +43,8 @@ - @$(prep-target) - @$(MKDIR) -p $(BUILDTOOLCLASSDIR) - $(BOOT_JAVAC_CMD) -d $(BUILDTOOLCLASSDIR) \ -- -sourcepath $(BUILDTOOL_SOURCE_ROOT) $(BUILDTOOL_MAIN_SOURCE_FILE) -+ -sourcepath $(BUILDTOOL_SOURCE_ROOT) -classpath $(ICEDTEA_RT) \ -+ $(BUILDTOOL_MAIN_SOURCE_FILE) - $(BOOT_JAR_CMD) cfm $@ $(BUILDTOOL_MANIFEST_FILE) \ - -C $(BUILDTOOLCLASSDIR) $(PKGDIR) \ - $(JAR_JFLAGS) || $(RM) $@ ---- iopenjdk.old/jdk/make/Makefile 2007-10-12 03:54:03.000000000 -0400 -+++ openjdk-ecj/jdk/make/Makefile 2007-10-19 13:10:02.000000000 -0400 -@@ -239,7 +239,7 @@ - - all build:: sanity-all post-sanity-all - --SUBDIRS = tools java javax org sun sunw com jpda mkdemo mksample launchers -+SUBDIRS = tools java javax org sun sunw com jpda mksample launchers - all build:: - $(SUBDIRS-loop) - ---- openjdk.old/corba/make/org/omg/sources/Makefile 2007-10-12 03:49:14.000000000 -0400 -+++ openjdk-ecj/corba/make/org/omg/sources/Makefile 2007-10-30 11:57:03.000000000 -0400 -@@ -93,8 +93,6 @@ - POAHELHOLFILES = $(POA_GENERATED_HELP_HOL_java:%=$(GENSRCDIR)/%) - - $(POAGENERATEDFILES):: $(POA.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" -i "$(SRC_DIR)/org/omg/PortableServer" -i "$(SRC_DIR)/org/omg/PortableInterceptor" -corba 3.0 -fall -pkgPrefix PortableServer org.omg $(POA.IDL) -- $(RM) -r $(POAHELHOLFILES) - - poa.compile: $(POAGENERATEDFILES) - -@@ -110,10 +108,6 @@ - - # Generating and deleting unused files to reduce images size - $(DYNANYFILES): $(DYNAMIC_ANY.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" $(DYNANY_IDLJ_FLAGS) $(DYNAMIC_ANY.IDL) -- $(RM) $(DYNANY_DIR)/*POA* -- $(RM) $(DYNANY_DIR)/*Holder* -- $(RM) $(DYNANYDELETEFILES) - - dynany.compile: $(DYNANYFILES) - -@@ -125,12 +119,6 @@ - TR_IDLJ_FLAGS =-i "$(SRC_DIR)/org/omg/PortableInterceptor" -i "$(SRC_DIR)/org/omg/PortableServer" -i "$(SRC_DIR)/org/omg/CosTransactions" - - $(TRGENERATEDFILES):: $(COSTRANSACTIONS.IDL) $(COSTSINTEROP.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" $(TR_IDLJ_FLAGS) -D CORBA3 -corba 3.0 -fall -pkgPrefix CORBA org.omg -pkgPrefix CosTransactions org.omg $(COSTRANSACTIONS.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" $(TR_IDLJ_FLAGS) -D CORBA3 -corba 3.0 -fall -pkgPrefix CORBA org.omg -pkgPrefix CosTSInteroperation org.omg $(COSTSINTEROP.IDL) --# $(IDLJ) -td "$(GENSRCDIR)" $(TR_IDLJ_FLAGS) -D CORBA3 -corba 3.0 -fall -pkgPrefix CORBA org.omg $(TRANSACTIONS.IDL) --# $(IDLJ) -td "$(GENSRCDIR)" $(TR_IDLJ_FLAGS) -D CORBA3 -corba 3.0 -fallTIE -pkgPrefix CORBA org.omg $(TRANSACTIONS.IDL) --# $(IDLJ) -td "$(GENSRCDIR)" $(TR_IDLJ_FLAGS) -D CORBA3 -corba 3.0 -fall -pkgPrefix CORBA org.omg $(TRANSACTIONS.IDL) --# $(IDLJ) -td "$(GENSRCDIR)" $(TR_IDLJ_FLAGS) -D CORBA3 -corba 3.0 -fallTIE -pkgPrefix CORBA org.omg $(TRANSACTIONS.IDL) - - tr.compile: $(TRGENERATEDFILES) - -@@ -144,7 +132,6 @@ - # _NamingContextImplBase.java and _BindingIteratorImplBase.java files - # to GENSRC directory. Note that these two classes are deprecated. - $(NSGENERATEDFILES): $(NAMESERVICE.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" -i $(NAMESERVICEDIR) -fall -pkgPrefix CosNaming org.omg $(NAMESERVICE.IDL) - - ns.compile: $(NSGENERATEDFILES) - -@@ -156,8 +143,6 @@ - IOPDELETEFILES = $(IOP_TO_DELETE_FILES:%=$(GENSRCDIR)/%) - - $(IOPGENERATEDFILES):: $(IOP.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" -i "$(SRC_DIR)/org/omg/PortableInterceptor" -i $(CORBA_IDL_DIR) -fall -corba 3.0 -D CORBA3 -pkgPrefix IOP org.omg $(IOP.IDL) -- $(RM) -r $(IOPDELETEFILES) - - iop.compile: $(IOPGENERATEDFILES) - -@@ -169,8 +154,6 @@ - CORBAXDUPLICATEFILES = $(CORBA_DUPLICATE_java:%=$(GENSRCDIR)/%) - - $(CORBAXGENERATEDFILES):: $(CORBAX.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" -i "$(SRC_DIR)/org/omg/PortableInterceptor" -i $(CORBA_IDL_DIR) -fall -corba 3.0 $(CORBAX.IDL) -- $(RM) $(CORBAXDUPLICATEFILES) - - corbax.compile: $(CORBAXGENERATEDFILES) - -@@ -181,7 +164,6 @@ - MESSAGINGGENERATEDFILES = $(Messaging_java:%=$(GENSRCDIR)/%) - - $(MESSAGINGGENERATEDFILES):: $(MESSAGING.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" -i "$(SRC_DIR)/org/omg/PortableInterceptor" -i $(CORBA_IDL_DIR) -fall -corba 3.0 -pkgPrefix Messaging org.omg $(MESSAGING.IDL) - - messaging.compile: $(MESSAGINGGENERATEDFILES) - -@@ -195,8 +177,6 @@ - PIHELHOLFILES = $(PI_GENERATED_HELP_HOL_java:%=$(GENSRCDIR)/%) - - $(PIGENERATEDFILES):: $(INTERCEPTORS.IDL) -- $(IDLJ) -td "$(GENSRCDIR)" -i "$(SRC_DIR)/org/omg/PortableInterceptor" -i $(CORBA_IDL_DIR) -fall -pkgPrefix PortableInterceptor org.omg -pkgPrefix Dynamic org.omg -pkgPrefix IOP org.omg -corba 3.0 -D CORBA3 $(INTERCEPTORS.IDL) -- $(RM) $(PIHELHOLFILES) - - pi.compile: $(PIGENERATEDFILES) - ---- openjdk.old/corba/make/sun/rmi/corbalogsources/Makefile 2007-10-12 03:49:14.000000000 -0400 -+++ openjdk-ecj/corba/make/sun/rmi/corbalogsources/Makefile 2007-10-30 11:57:25.000000000 -0400 -@@ -173,7 +173,6 @@ - ACTIVATIONFILES = $(com_sun_corba_se_spi_activation_java:%=$(GENSRCDIR)/%) - - $(ACTIVATIONFILES): $(ACTIVATION.IDL) -- $(IDLJ) -td $(GENSRCDIR) -i $(ACTIVATIONFILEDIR) -fall -oldImplBase -pkgPrefix activation com.sun.corba.se.spi $(ACTIVATION.IDL) - - activation.idl.compile: $(ACTIVATIONFILES) - -@@ -196,7 +195,6 @@ - - # REVISIT: remove -oldImplBase - $(PORTABLEACTIVATIONFILES): $(PORTABLEACTIVATION.IDL) -- $(IDLJ) -td $(GENSRCDIR) $(PORTABLEACTIVATION_INCLUDES) $(PORTABLEACTIVATION_PKG_PREFIXES) -fall -oldImplBase -corba 3.0 -D CORBA3 $(PORTABLEACTIVATION.IDL) - - portableactivation.idl.compile: $(PORTABLEACTIVATIONFILES) - ---- openjdk.old/jdk/make/sun/javazic/Makefile 2007-10-12 03:54:08.000000000 -0400 -+++ openjdk-ecj/jdk/make/sun/javazic/Makefile 2007-10-30 14:32:25.000000000 -0400 -@@ -62,7 +62,8 @@ - $(WORKDIR)/$(MAPFILE): $(BUILDTOOLJARDIR)/javazic.jar $(TZFILES) - $(RM) -r $(@D) - $(prep-target) -- $(BOOT_JAVA_CMD) -jar $(BUILDTOOLJARDIR)/javazic.jar -V "$(TZDATA_VER)" -d $(WORKDIR) $(TZFILES) -+ $(BOOT_JAVA_CMD) -cp $(ICEDTEA_CLS_DIR):$(BUILDTOOLJARDIR)/javazic.jar \ -+ build.tools.javazic.Main -V "$(TZDATA_VER)" -d $(WORKDIR) $(TZFILES) - @$(java-vm-cleanup) - - $(INSTALLDIR)/$(MAPFILE): $(WORKDIR)/$(MAPFILE) ---- openjdk.old/jdk/make/sun/awt/Makefile 2007-10-30 15:27:06.000000000 -0400 -+++ openjdk-ecj/jdk/make/sun/awt/Makefile 2007-10-30 15:30:02.000000000 -0400 -@@ -400,10 +400,9 @@ - COMPILEFONTCONFIG_JARFILE = $(BUILDTOOLJARDIR)/compilefontconfig.jar - - $(LIBDIR)/%.bfc: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%.properties \ -- $(COMPILEFONTCONFIG_JARFILE) -- $(prep-target) -- $(BOOT_JAVA_CMD) -jar $(COMPILEFONTCONFIG_JARFILE) $< $@ -- $(CHMOD) 444 $(@) -+ $(COMPILEFONTCONFIG_JARFILE) -+ $(CP) -f $(GENSRCDIR)/fontconfig/* $(LIBDIR) -+ $(CHMOD) 444 $(LIBDIR)/*.bfc - @$(java-vm-cleanup) - - fontconfigs.clean : ---- openjdk.old/jdk/make/sun/text/Makefile 2007-10-12 03:54:08.000000000 -0400 -+++ openjdk-ecj/jdk/make/sun/text/Makefile 2007-10-30 15:32:46.000000000 -0400 -@@ -85,8 +85,9 @@ - $(BOOT_JAVAC_CMD) -d $(TEXT_CLASSES) \ - -sourcepath $(TEXT_SRCDIR) \ - $(BIRULES) $(BIINFO) -- $(BOOT_JAVA_CMD) -Xbootclasspath/p:$(TEXT_CLASSES) \ -- -jar $(GENERATEBREAKITERATORDATA_JARFILE) \ -+ $(BOOT_JAVA_CMD) \ -+ -cp $(TEXT_CLASSES):$(ICEDTEA_CLS_DIR):$(GENERATEBREAKITERATORDATA_JARFILE) \ -+ build.tools.generatebreakiteratordata.GenerateBreakIteratorData \ - -o $(CLASSDESTDIR)/sun/text/resources \ - -spec $(UNICODEDATA)/UnicodeData.txt \ - -language th ---- openjdk.old/jdk/make/java/text/Makefile 2007-10-12 03:54:05.000000000 -0400 -+++ openjdk-ecj/jdk/make/java/text/Makefile 2007-10-30 14:26:53.000000000 -0400 -@@ -80,8 +80,8 @@ - -sourcepath $(TEXT_SRCDIR) \ - $(TEXT_SOURCES) - $(MKDIR) -p $(TEXT_CLASSDIR) -- $(BOOT_JAVA_CMD) -Xbootclasspath/p:$(TEXT_CLASSES) \ -- -jar $(GENERATEBREAKITERATORDATA_JARFILE) \ -+ $(BOOT_JAVA_CMD) -cp $(TEXT_CLASSES):$(GENERATEBREAKITERATORDATA_JARFILE):$(ICEDTEA_CLS_DIR) \ -+ build.tools.generatebreakiteratordata.GenerateBreakIteratorData \ - -o $(TEXT_CLASSDIR) \ - -spec $(UNICODEDATA)/UnicodeData.txt - @$(java-vm-cleanup) ---- openjdk.old/jdk/make/java/nio/Makefile 2007-10-12 03:54:05.000000000 -0400 -+++ openjdk-ecj/jdk/make/java/nio/Makefile 2007-10-31 16:55:26.000000000 -0400 -@@ -31,7 +31,7 @@ - PACKAGE = java.nio - LIBRARY = nio - PRODUCT = java --OTHER_JAVACFLAGS += -Xmaxwarns 1000 -Xlint:serial -Werror -+OTHER_JAVACFLAGS += -Xlint:serial -Werror - include $(BUILDDIR)/common/Defs.gmk - - NIO_SRC = $(SHARE_SRC)/classes/java/nio ---- openjdk.old/corba/make/common/Rules.gmk 2007-10-12 03:49:14.000000000 -0400 -+++ openjdk-ecj/corba/make/common/Rules.gmk 2007-11-01 11:31:47.000000000 -0400 -@@ -197,8 +197,10 @@ - $(ECHO) "# Java sources to be compiled: (listed in file $(JAVA_SOURCE_LIST))"; \ - $(CAT) $(JAVA_SOURCE_LIST); \ - $(ECHO) "# Running javac:"; \ -- $(ECHO) $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \ -- $(JAVAC_CMD) -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \ -+ $(ECHO) $(JAVAC_CMD) -bootclasspath $(ICEDTEA_RT):$(ICEDTEA_BUILD_DIR)/corba/classes \ -+ -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \ -+ $(JAVAC_CMD) -bootclasspath $(ICEDTEA_RT):$(ICEDTEA_BUILD_DIR)/corba/classes \ -+ -sourcepath "$(SOURCEPATH)" -d $(CLASSDESTDIR) @$(JAVA_SOURCE_LIST); \ - fi - @$(java-vm-cleanup) - ---- openjdk.old/corba/make/common/Defs.gmk 2007-10-12 03:49:14.000000000 -0400 -+++ openjdk-ecj/corba/make/common/Defs.gmk 2007-11-01 12:24:59.000000000 -0400 -@@ -53,6 +53,13 @@ - - _OUTPUTDIR=$(TOPDIR)/build/$(PLATFORM)-$(ARCH) - -+ -+ifdef ALT_LANGTOOLS_DIST -+ LANGTOOLS_DIST :=$(call FullPath,$(ALT_LANGTOOLS_DIST)) -+else -+ LANGTOOLS_DIST = -+endif -+ - # - # Get platform definitions - # -@@ -129,8 +136,6 @@ - # for build tool jar files - BUILDTOOLJARDIR = $(OUTPUTDIR)/btjars - ABS_BUILDTOOLJARDIR = $(ABS_OUTPUTDIR)/btjars --# for generated java source files --GENSRCDIR = $(OUTPUTDIR)/gensrc - # for generated C source files (not javah) - GENNATIVESRCDIR = $(OUTPUTDIR)/gennativesrc - # for imported source files -@@ -231,7 +236,7 @@ - # We define an intermediate variable for Java files because - # we use its value later to help define $SOURCEPATH - --VPATH0.java = $(GENSRCDIR)$(CLASSPATH_SEPARATOR)$(PLATFORM_SRC)/classes$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/classes -+VPATH0.java = $(GENSRCDIR)$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/classes - VPATH.java = $(VPATH0.java) - vpath %.java $(VPATH.java) - vpath %.class $(CLASSBINDIR) -diff -ruN openjdk.old/corba/make/com/sun/corba/se/Makefile openjdk-ecj/corba/make/com/sun/corba/se/Makefile ---- openjdk.old/corba/make/com/sun/corba/se/Makefile 2007-10-12 03:49:13.000000000 -0400 -+++ openjdk-ecj/corba/make/com/sun/corba/se/Makefile 2007-11-06 15:07:45.000000000 -0500 +diff -Nru openjdk-ecj.orig/control/make/make/jdk-rules.gmk openjdk-ecj/control/make/make/jdk-rules.gmk +--- openjdk-ecj.orig/control/make/make/jdk-rules.gmk 2008-10-20 18:45:00.000000000 +0100 ++++ openjdk-ecj/control/make/make/jdk-rules.gmk 2008-10-20 18:50:20.000000000 +0100 +@@ -58,7 +58,7 @@ + endif + + ifndef DEV_ONLY +- JDK_BUILD_TARGETS = sanity all $(DOCS_TARGET) images ++ JDK_BUILD_TARGETS = sanity all images + else + JDK_BUILD_TARGETS = sanity all $(IMAGES_TARGET) + endif +diff -Nru openjdk-ecj.orig/corba/make/com/sun/corba/se/Makefile openjdk-ecj/corba/make/com/sun/corba/se/Makefile +--- openjdk-ecj.orig/corba/make/com/sun/corba/se/Makefile 2008-08-28 09:24:03.000000000 +0100 ++++ openjdk-ecj/corba/make/com/sun/corba/se/Makefile 2008-10-20 18:50:20.000000000 +0100 @@ -42,7 +42,7 @@ # the rmic iiop backend needs some classes that are part of the impl/util # package. These classes use log wrappers, so they must be built after @@ -275,9 +22,9 @@ diff -ruN openjdk.old/corba/make/com/sun all build clean clobber:: $(SUBDIRS-loop) -diff -ruN openjdk.old/corba/make/com/sun/corba/se/org/Makefile openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile ---- openjdk.old/corba/make/com/sun/corba/se/org/Makefile 1969-12-31 19:00:00.000000000 -0500 -+++ openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile 2007-11-06 15:07:20.000000000 -0500 +diff -Nru openjdk-ecj.orig/corba/make/com/sun/corba/se/org/Makefile openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile +--- openjdk-ecj.orig/corba/make/com/sun/corba/se/org/Makefile 1970-01-01 01:00:00.000000000 +0100 ++++ openjdk-ecj/corba/make/com/sun/corba/se/org/Makefile 2008-10-20 18:50:20.000000000 +0100 @@ -0,0 +1,38 @@ +# +# Copyright 2001-2005 Sun Microsystems, Inc. All Rights Reserved. @@ -317,63 +64,517 @@ diff -ruN openjdk.old/corba/make/com/sun +# Include +# +include $(BUILDDIR)/common/Classes.gmk ---- iopenjdk/jdk/make/common/Rules.gmk 2007-10-12 03:54:05.000000000 -0400 -+++ openjdk-ecj/jdk/make/common/Rules.gmk 2007-11-07 11:02:53.000000000 -0500 -@@ -235,8 +235,9 @@ +diff -Nru openjdk-ecj.orig/corba/make/com/sun/corba/se/sources/Makefile openjdk-ecj/corba/make/com/sun/corba/se/sources/Makefile +--- openjdk-ecj.orig/corba/make/com/sun/corba/se/sources/Makefile 2008-08-28 09:24:03.000000000 +0100 ++++ openjdk-ecj/corba/make/com/sun/corba/se/sources/Makefile 1970-01-01 01:00:00.000000000 +0100 +@@ -1,224 +0,0 @@ +-# +-# Copyright 2000-2006 Sun Microsystems, Inc. All Rights Reserved. +-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +-# +-# This code is free software; you can redistribute it and/or modify it +-# under the terms of the GNU General Public License version 2 only, as +-# published by the Free Software Foundation. Sun designates this +-# particular file as subject to the "Classpath" exception as provided +-# by Sun in the LICENSE file that accompanied this code. +-# +-# This code is distributed in the hope that it will be useful, but WITHOUT +-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +-# version 2 for more details (a copy is included in the LICENSE file that +-# accompanied this code). +-# +-# You should have received a copy of the GNU General Public License version +-# 2 along with this work; if not, write to the Free Software Foundation, +-# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +-# +-# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, +-# CA 95054 USA or visit www.sun.com if you need additional information or +-# have any questions. +-# +- +-BUILDDIR = ../../../../.. +- +-PACKAGE = com.sun.corba.se +-PRODUCT = org +- +-include $(BUILDDIR)/common/Defs.gmk +- +-# +-# Rules +-# +-all: build +- +-build: portableactivation.idl.compile logwrapper.generate logresource.generate +- +-clean clobber:: portableactivation.idl.clean +- +-# +-# Files +-# +-CORBA_JMK_DIRECTORY=$(TOPDIR)/make/com/sun/corba/minclude/ +-include $(CORBA_JMK_DIRECTORY)com_sun_corba_se_PortableActivationIDL.jmk +-include $(CORBA_JMK_DIRECTORY)com_sun_corba_se_impl_logging.jmk +- +-FILES_java += com/sun/corba/se/org/omg/CORBA/ORB.java +- +-# +-# Dirs +-# +- +-SRC_DIR = $(SHARE_SRC)/classes +-CORBA_IDL_DIR = $(SRC_DIR)/org/omg/PortableServer +-PI_IDL_DIR = $(SRC_DIR)/org/omg/PortableInterceptor +- +-ACTIVATIONFILEDIR = $(GENSRCDIR)/com/sun/corba/se/spi/activation +-PORTABLEACTIVATIONFILEDIR = $(GENSRCDIR)/com/sun/corba/se/PortableActivationIDL +-LOG_GENDIRECTORY = $(GENSRCDIR)/com/sun/corba/se/impl/logging +- +-# +-# IDLs +-# +- +-ACTIVATION.IDL = $(SRC_DIR)/com/sun/corba/se/spi/activation/activation.idl +-PORTABLEACTIVATION.IDL = $(SRC_DIR)/com/sun/corba/se/PortableActivationIDL/activation.idl +- +- +-# +-# .mc files +-# +-ACTIVATION.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/Activation.mc +-IOR.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/IOR.mc +-INTERCEPTORS.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/Interceptors.mc +-NAMING.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/Naming.mc +-OMG.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/OMG.mc +-ORBUTIL.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/ORBUtil.mc +-POA.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/POA.mc +-UTIL.MC = $(SRC_DIR)/com/sun/corba/se/spi/logging/data/Util.mc +- +-MC_GENERATE_CLASS = make-class +-MC_GENERATE_LOG_RB = make-resource +- +-JSCHEME_GENERATE_CLASS = $(BOOT_JAVA_CMD) com.sun.tools.corba.se.logutil.MC $(MC_GENERATE_CLASS) +-JSCHEME_GENERATE_LOG_RB = $(BOOT_JAVA_CMD) com.sun.tools.corba.se.logutil.MC $(MC_GENERATE_LOG_RB) +- +- +-# +-# Activation +-# +- +-ACTIVATIONFILES = $(com_sun_corba_se_spi_activation_java:%=$(GENSRCDIR)/%) +- +-$(ACTIVATIONFILES): $(ACTIVATION.IDL) +- $(IDLJ) -td $(GENSRCDIR) -i $(ACTIVATIONFILEDIR) -fall -oldImplBase -pkgPrefix activation com.sun.corba.se.spi $(ACTIVATION.IDL) +- +-activation.idl.compile: $(ACTIVATIONFILES) +- +-activation.idl.clean: +- $(RM) -f $(ACTIVATIONFILES) +- +-# +-# PortableActivationIDL +-# +- +-PORTABLEACTIVATIONFILES = $(com_sun_corba_se_PortableActivationIDL_java:%=$(GENSRCDIR)/%) +- +-PORTABLEACTIVATION_INCLUDES = -i $(CORBA_IDL_DIR) -i $(PI_IDL_DIR) +- +-PORTABLEACTIVATION_PKG_PREFIXES = -pkgPrefix PortableInterceptor org.omg \ +- -pkgPrefix PortableActivationIDL com.sun.corba.se \ +- -pkgPrefix Dynamic org.omg \ +- -pkgPrefix IOP org.omg +- +-# REVISIT: remove -oldImplBase +-$(PORTABLEACTIVATIONFILES): $(PORTABLEACTIVATION.IDL) +- $(IDLJ) -td $(GENSRCDIR) $(PORTABLEACTIVATION_INCLUDES) $(PORTABLEACTIVATION_PKG_PREFIXES) -fall -oldImplBase -corba 3.0 -D CORBA3 $(PORTABLEACTIVATION.IDL) +- +-portableactivation.idl.compile: $(PORTABLEACTIVATIONFILES) +- +-portableactivation.idl.clean: +- $(RM) -f $(PORTABLEACTIVATIONFILES) +- +-# +-# Generate LogWrapper classes +-# From bugzilla-daemon at icedtea.classpath.org Mon Oct 20 13:38:40 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 20 Oct 2008 20:38:40 +0000 Subject: [Bug 214] Unparseable date with OpenJDK6, works with SunJava6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=214 omajid at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |omajid at redhat.com ------- Comment #3 from omajid at redhat.com 2008-10-20 20:38 ------- Works for me with java-1.6.0-openjdk-1.6.0.0-0.23.b12.fc10.i386 (Icedtea 1.3) on Fedora. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 20 15:37:03 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 20 Oct 2008 22:37:03 +0000 Subject: [Bug 200] java-1.6.0-openjdk-plugin fails to render radar time loop animation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=200 orion at cora.nwra.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |orion at cora.nwra.com Summary|java-1.6.0-openjdk-plugin |java-1.6.0-openjdk-plugin |(x86_64) fails to render |fails to render radar time |radar time loop animation |loop animation ------- Comment #1 from orion at cora.nwra.com 2008-10-20 22:37 ------- Interestingly, appletviewer works while the plugin doesn't. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 21 07:41:13 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 21 Oct 2008 14:41:13 +0000 Subject: [Bug 214] Unparseable date with OpenJDK6, works with SunJava6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=214 langel at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |WORKSFORME -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Tue Oct 21 07:45:46 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Tue, 21 Oct 2008 14:45:46 +0000 Subject: changeset in /hg/icedtea6: 2008-10-21 Matthias Klose changeset 5fabd5969958 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5fabd5969958 description: 2008-10-21 Matthias Klose * configure.ac: Add new option --with-pkgversion, substitute PKGVERSION and DIST_ID. * Makefile.am (ICEDTEA_ENV): Add DISTRIBUTION_ID; (stamps/patch.stamp): Encode PKGVERSION in IcedTea version. * patches/icedtea-version.patch: Add DISTRIBUTION_ID in vm crash report. diffstat: 4 files changed, 72 insertions(+), 1 deletion(-) ChangeLog | 8 ++++++++ Makefile.am | 8 +++++++- configure.ac | 22 ++++++++++++++++++++++ patches/icedtea-version.patch | 35 +++++++++++++++++++++++++++++++++++ diffs (125 lines): diff -r be559c26fdbc -r 5fabd5969958 ChangeLog --- a/ChangeLog Mon Oct 20 19:30:04 2008 +0100 +++ b/ChangeLog Tue Oct 21 16:45:19 2008 +0200 @@ -1,3 +1,11 @@ 2008-10-20 Andrew John Hughes + + * configure.ac: Add new option --with-pkgversion, + substitute PKGVERSION and DIST_ID. + * Makefile.am (ICEDTEA_ENV): Add DISTRIBUTION_ID; + (stamps/patch.stamp): Encode PKGVERSION in IcedTea version. + * patches/icedtea-version.patch: Add DISTRIBUTION_ID in vm crash report. + 2008-10-20 Andrew John Hughes * HACKING: Add new patch. diff -r be559c26fdbc -r 5fabd5969958 Makefile.am --- a/Makefile.am Mon Oct 20 19:30:04 2008 +0100 +++ b/Makefile.am Tue Oct 21 16:45:19 2008 +0200 @@ -172,6 +172,8 @@ ICEDTEA_ENV = \ "HOTSPOT_BUILD_JOBS=$(PARALLEL_JOBS)" \ "JAVAC=" \ "RHINO_JAR=$(RHINO_JAR)" + +ICEDTEA_ENV += $(if $(DIST_ID),"DISTRIBUTION_ID=$(DIST_ID)") if WITH_CACAO ICEDTEA_ENV += \ @@ -633,11 +635,15 @@ stamps/patch.stamp: stamps/patch-fsg.sta echo ERROR patch $${all_patches_ok} FAILED! ; \ echo WARNING make clean-patch before retrying a fix ; \ exit 2; \ - fi ; \ + fi + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ fi ; \ icedtea_version="$(PACKAGE_VERSION)$${revision}" ; \ + if [ -n "$(PKGVERSION)" ]; then \ + icedtea_version="$${icedtea_version} ($(PKGVERSION))" ; \ + fi; \ sed -i "s#IcedTea6#IcedTea6 $${icedtea_version}#" openjdk/jdk/make/common/shared/Defs.gmk if ENABLE_PLUGIN diff -r be559c26fdbc -r 5fabd5969958 configure.ac --- a/configure.ac Mon Oct 20 19:30:04 2008 +0100 +++ b/configure.ac Tue Oct 21 16:45:19 2008 +0200 @@ -32,6 +32,7 @@ FIND_TOOL([GAWK], [gawk]) FIND_TOOL([GAWK], [gawk]) AC_PATH_TOOL([HG],[hg]) AC_SUBST([HG]) +AC_PATH_TOOL([LSB_RELEASE],[lsb_release]) AC_CHECK_WITH_GCJ AC_MSG_CHECKING([for a JDK home directory]) @@ -223,6 +224,27 @@ AC_ARG_WITH([parallel-jobs], ]) AC_MSG_RESULT(${PARALLEL_JOBS}) AC_SUBST(PARALLEL_JOBS) + +AC_ARG_WITH([pkgversion], + [AS_HELP_STRING([--with-pkgversion=PKG], + [Use PKG in the version string in addition to "IcedTea"])], + [case "$withval" in + yes) AC_MSG_ERROR([package version not specified]) ;; + no) PKGVERSION= ;; + *) PKGVERSION="$withval" ;; + esac], + [PKGVERSION=]) +AC_SUBST(PKGVERSION) + +if test -n "$LSB_RELEASE"; then + DIST_ID=$($LSB_RELEASE -ds) +else + DIST_ID='Custom build' +fi +if test -n "$PKGVERSION"; then + DIST_ID="$DIST_ID, package $PKGVERSION" +fi +AC_SUBST(DIST_ID) SET_ARCH_DIRS if test "${with_openjdk}" = true diff -r be559c26fdbc -r 5fabd5969958 patches/icedtea-version.patch --- a/patches/icedtea-version.patch Mon Oct 20 19:30:04 2008 +0100 +++ b/patches/icedtea-version.patch Tue Oct 21 16:45:19 2008 +0200 @@ -26,3 +26,38 @@ diff -Nru openjdk.orig/jdk/make/common/s # FULL_VERSION is RELEASE and -BUILD_NUMBER if BUILD_NUMBER is set ifdef BUILD_NUMBER +--- openjdk/hotspot/src/share/vm/utilities/vmError.cpp~ 2008-08-28 10:23:18.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/utilities/vmError.cpp 2008-10-21 14:05:12.000000000 +0200 +@@ -168,7 +168,8 @@ + + static void print_bug_submit_message(outputStream *out, Thread *thread) { + if (out == NULL) return; +- out->print_raw_cr("# If you would like to submit a bug report, please visit:"); ++ out->print_raw_cr("# If you would like to submit a bug report, please include"); ++ out->print_raw_cr("# instructions how to reproduce the bug and visit:"); + out->print_raw ("# "); + out->print_raw_cr(Arguments::java_vendor_url_bug()); + // If the crash is in native code, encourage user to submit a bug to the +@@ -340,6 +341,9 @@ + Abstract_VM_Version::vm_info_string(), + Abstract_VM_Version::vm_platform_string() + ); ++#ifdef DISTRIBUTION_ID ++ st->print_cr("# Distribution: %s", DISTRIBUTION_ID); ++#endif + + STEP(60, "(printing problematic frame)") + +--- openjdk/hotspot/build/linux/makefiles/vm.make~ 2008-08-28 10:22:55.000000000 +0200 ++++ openjdk/hotspot/build/linux/makefiles/vm.make 2008-10-21 14:03:36.000000000 +0200 +@@ -111,6 +111,10 @@ + ${JRE_VERSION} \ + ${VM_DISTRO} + ++ifdef DISTRIBUTION_ID ++CPPFLAGS += -DDISTRIBUTION_ID="\"$(DISTRIBUTION_ID)\"" ++endif ++ + # CFLAGS_WARN holds compiler options to suppress/enable warnings. + CFLAGS += $(CFLAGS_WARN/BYFILE) + From mark at klomp.org Tue Oct 21 12:16:12 2008 From: mark at klomp.org (Mark Wielaard) Date: Tue, 21 Oct 2008 21:16:12 +0200 Subject: Public open specs In-Reply-To: <48F4DD1E.6000106@sun.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> <48F4BD78.1060704@sun.com> <1223999173.3470.11.camel@hermans.wildebeest.org> <48F4DD1E.6000106@sun.com> Message-ID: <1224616572.3700.22.camel@hermans.wildebeest.org> Hi Dalibor, On Tue, 2008-10-14 at 19:55 +0200, Dalibor Topic wrote: > Not yet (outside the JSR spec document). The process bottleneck is > identified, working on a fix. That is great! Any timelines for these process fixes to be cleared up? It has been a little funny that Sun is now producing GPLed code for the various JSRs they lead, but still publish the JSR specs themselves under terms that conflict (through the 2a-c restrictions) with the liberties granted by the GPL. I came up with the following list of JSRs that have a Sun lead and for which OpenJDK provides (prototype) GPL code, but which are published under non-free terms preventing others to also publish (independent) implementations or extend the OpenJDK provided ones: JSR 105: XML Digital Signature APIs JSR 199: Java Compiler API JSR 202: JavaTM Class File Specification Update JSR 203: More New I/O APIs for the JavaTM Platform ("NIO.2") JSR 221: JDBC 4.0 API Specification JSR 222: Java Architecture for XML Binding (JAXB) 2.0 JSR 223: Scripting for the Java Platform JSR 224: Java API for XML-Based Web Services (JAX-WS) 2.0 JSR 250: Common Annotations for the Java Platform JSR 255: Java Management Extensions (JMX) Specification, version 2.0 JSR 269: Pluggable Annotation Processing API JSR 270: Java SE 6 Release Contents JSR 277: Java Module System JSR 292: Supporting Dynamically Typed Languages on the Java Platform JSR 294: Improved Modularity Support in the Java Programming Language Would be great to see all these specs finally liberated. Thanks, Mark From mark at klomp.org Tue Oct 21 12:22:33 2008 From: mark at klomp.org (Mark Wielaard) Date: Tue, 21 Oct 2008 21:22:33 +0200 Subject: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48F8D4E1.4000604@sun.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> <48F8D4E1.4000604@sun.com> Message-ID: <1224616953.3700.28.camel@hermans.wildebeest.org> Hi David, On Fri, 2008-10-17 at 11:09 -0700, David Herron wrote: > I suppose you're requesting that I stop sending the DLJ announcements to > this list? Lets just try to figure out some way that the DLJ and OpenJDK communities could work together. The problem as I see it currently is that you are publishing these "bundles" under terms which explicitly deny anybody from combining, configuring, distribute or even running the DLJ bundles together with OpenJDK derived projects. Is there a way to get around that limitation? And what parts/ideas of the DLJ bundles do you think could be used (as inspiration) to improve the OpenJDK work? Would it be possible to publish those parts so others could extend and improve on the work in conjunction with IcedTea/OpenJDk? Thanks, Mark From bugzilla-daemon at icedtea.classpath.org Tue Oct 21 14:11:53 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 21 Oct 2008 21:11:53 +0000 Subject: [Bug 200] java-1.6.0-openjdk-plugin fails to render radar time loop animation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=200 ------- Comment #2 from dbhole at redhat.com 2008-10-21 21:11 ------- Please try the site again with the tip. It should be fixed now. Instructions on how to build tip and try it out are here: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2008-October/003555.html -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Tue Oct 21 14:09:53 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Tue, 21 Oct 2008 21:09:53 +0000 Subject: changeset in /hg/icedtea6: - minor cleanup Message-ID: changeset 560a859a217b in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=560a859a217b description: - minor cleanup diffstat: 1 file changed, 1 insertion(+), 4 deletions(-) plugin/icedtea/sun/applet/PluginAppletViewer.java | 5 +---- diffs (22 lines): diff -r eb4fbb8e17d9 -r 560a859a217b plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Tue Oct 21 16:17:19 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Tue Oct 21 17:09:48 2008 -0400 @@ -434,9 +434,6 @@ import sun.misc.Ref; // do nothing e.printStackTrace(); } - -// this.validate(); -// panel.validate(); } else if (message.startsWith("destroy")) { dispose(); } else if (message.startsWith("GetJavaObject")) { @@ -458,7 +455,7 @@ import sun.misc.Ref; } } - PluginDebug.debug ("Looking for object " + o + " panel is " + panel.getClass()); + PluginDebug.debug ("Looking for object " + o + " panel is " + panel); AppletSecurityContextManager.getSecurityContext(0).store(o); PluginDebug.debug ("WRITING 1: " + "context 0 reference " + reference + " GetJavaObject " + AppletSecurityContextManager.getSecurityContext(0).getIdentifier(o)); From dbhole at redhat.com Tue Oct 21 14:09:53 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Tue, 21 Oct 2008 21:09:53 +0000 Subject: changeset in /hg/icedtea6: - Implemented jvm respawn, in case th... Message-ID: changeset eb4fbb8e17d9 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=eb4fbb8e17d9 description: - Implemented jvm respawn, in case the jvm exits for whatever reason - Fix http://www.goes.noaa.gov/HURRLOOPS/huirloop.html - Fix panel size on initialization -- it is now correct diffstat: 5 files changed, 305 insertions(+), 51 deletions(-) ChangeLog | 10 IcedTeaPlugin.cc | 138 +++++++++--- plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 129 +++++++++++ plugin/icedtea/sun/applet/PluginAppletViewer.java | 69 ++++-- plugin/icedtea/sun/applet/PluginMain.java | 10 diffs (truncated from 624 to 500 lines): diff -r 5fabd5969958 -r eb4fbb8e17d9 ChangeLog --- a/ChangeLog Tue Oct 21 16:45:19 2008 +0200 +++ b/ChangeLog Tue Oct 21 16:17:19 2008 -0400 @@ -1,3 +1,13 @@ 2008-10-21 Matthias Klose + + * IcedTeaPlugin.cc: Implemented JVM respawning. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Prepopulate + classes requested by LiveConnect at initialization. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Fix panel applet + resizing when window height and width is in %. + * plugin/icedtea/sun/applet/PluginMain.java: Handle error during NetX + initialization gracefully. + 2008-10-21 Matthias Klose * configure.ac: Add new option --with-pkgversion, diff -r 5fabd5969958 -r eb4fbb8e17d9 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Tue Oct 21 16:45:19 2008 +0200 +++ b/IcedTeaPlugin.cc Tue Oct 21 16:17:19 2008 -0400 @@ -319,6 +319,8 @@ static PRBool factory_created = PR_FALSE static PRBool factory_created = PR_FALSE; static IcedTeaPluginFactory* factory = NULL; +static PRBool jvm_attached = PR_FALSE; + // Applet viewer input channel (needs to be static because it is used in plugin_in_pipe_callback) GIOChannel* in_from_appletviewer = NULL; @@ -492,30 +494,24 @@ char const* TYPES[10] = { "Object", // shutdown (so that the permanent loop does not block // proper exit). We need better error handling -#define PROCESS_PENDING_EVENTS_REF2(reference) \ - ResultContainer *resultC; \ - factory->result_map.Get(reference, &resultC); \ - if (factory->shutting_down == PR_TRUE && \ - resultC->errorOccurred == PR_TRUE) \ - { \ - PLUGIN_DEBUG_0ARG("Error occured. Exiting function\n"); \ +#define PROCESS_PENDING_EVENTS_REF(reference) \ + if (jvm_attached == PR_FALSE) \ + { \ + fprintf(stderr, "Error on Java side detected. Abandoning wait and returning.\n"); \ return NS_ERROR_FAILURE; \ } \ - PRBool hasPending; \ - factory->current->HasPendingEvents(&hasPending); \ - if (hasPending == PR_TRUE) { \ - PRBool processed = PR_FALSE; \ - factory->current->ProcessNextEvent(PR_TRUE, &processed); \ - } else if (g_main_context_pending (NULL)) { \ - g_main_context_iteration(NULL, false); \ - } else { \ - PR_Sleep(PR_INTERVAL_NO_WAIT); \ - } - - -#define PROCESS_PENDING_EVENTS_REF(reference) \ if (g_main_context_pending (NULL)) { \ g_main_context_iteration(NULL, false); \ + } \ + PRBool hasPending; \ + factory->current->HasPendingEvents(&hasPending); \ + if (hasPending == PR_TRUE) \ + { \ + PRBool processed = PR_FALSE; \ + factory->current->ProcessNextEvent(PR_TRUE, &processed); \ + } else \ + {\ + PR_Sleep(PR_INTERVAL_NO_WAIT); \ } #define PROCESS_PENDING_EVENTS \ @@ -524,7 +520,11 @@ char const* TYPES[10] = { "Object", if (hasPending == PR_TRUE) { \ PRBool processed = PR_FALSE; \ factory->current->ProcessNextEvent(PR_TRUE, &processed); \ - } else { \ + } \ + if (g_main_context_pending (NULL)) { \ + g_main_context_iteration(NULL, false); \ + } else \ + { \ PR_Sleep(PR_INTERVAL_NO_WAIT); \ } @@ -945,6 +945,7 @@ public: nsISecureEnv* secureEnv; nsDataHashtable result_map; + void InitializeJava(); void GetMember (); void SetMember (); void GetSlot (); @@ -954,6 +955,7 @@ public: void Call (); void Finalize (); void ToString (); + void MarkInstancesVoid (); nsCOMPtr liveconnect; // normally, we shouldn't have to track unref'd handles, but in some cases, @@ -970,21 +972,21 @@ private: nsresult StartAppletviewer (); void ProcessMessage(); void ConsumeMsgFromJVM(); - void InitializeJava(); nsCOMPtr sink; nsCOMPtr transport; nsCOMPtr applet_viewer_process; PRBool connected; PRUint32 next_instance_identifier; - // Does not do construction/deconstruction or reference counting. - nsDataHashtable instances; PRUint32 object_identifier_return; + PRUint32 instance_count; int javascript_identifier; int name_identifier; int args_identifier; int string_identifier; int slot_index; int value_identifier; + // Does not do construction/deconstruction or reference counting. + nsDataHashtable instances; // Applet viewer input pipe name. gchar* in_pipe_name; @@ -1015,6 +1017,7 @@ public: nsIPluginInstancePeer* peer; PRBool initialized; + PRBool fatalErrorOccurred; private: @@ -1449,6 +1452,7 @@ IcedTeaPluginFactory::IcedTeaPluginFacto value_identifier (0), connected (PR_FALSE), liveconnect (0), + instance_count(0), shutting_down(PR_FALSE), in_pipe_name(NULL), in_watch_source(NULL), @@ -1533,6 +1537,7 @@ IcedTeaPluginFactory::CreateInstance (ns if (!instance) return NS_ERROR_OUT_OF_MEMORY; + instance_count++; return instance->QueryInterface (iid, result); } @@ -1576,7 +1581,16 @@ IcedTeaPluginFactory::Initialize () result = threadManager->GetCurrentThread (getter_AddRefs (current)); PLUGIN_CHECK_RETURN ("current thread", result); - InitializeJava(); + if (jvm_attached == PR_FALSE) + { + // using printf on purpose.. this should happen rarely + printf("Initializing JVM...\n"); + + // mark attached right away, in case another initialize() call + //is made (happens if multiple applets are present on the same page) + jvm_attached = PR_TRUE; + InitializeJava(); + } return NS_OK; } @@ -1610,7 +1624,26 @@ IcedTeaPluginFactory::InitializeJava () result = StartAppletviewer (); PLUGIN_CHECK ("started appletviewer", result); - +} + +void +IcedTeaPluginFactory::MarkInstancesVoid () +{ + PLUGIN_TRACE_FACTORY (); + + IcedTeaPluginInstance* instance = NULL; + + int instance_id = 1; + + while (instance_id <= instance_count) + { + if (instances.Get(instance_id, &instance)) + { + PLUGIN_DEBUG_2ARG("Marking %d of %d void\n", instance_id, instance_count); + instance->fatalErrorOccurred = PR_TRUE; + } + instance_id++; + } } NS_IMETHODIMP @@ -2218,10 +2251,24 @@ NS_IMPL_ISUPPORTS2 (IcedTeaPluginInstanc NS_IMPL_ISUPPORTS2 (IcedTeaPluginInstance, nsIPluginInstance, nsIJVMPluginInstance) + NS_IMETHODIMP IcedTeaPluginInstance::Initialize (nsIPluginInstancePeer* aPeer) { PLUGIN_TRACE_INSTANCE (); + + // Ensure that there is a jvm running... + + if (jvm_attached == PR_FALSE) + { + // using printf on purpose.. this should happen rarely + fprintf(stderr, "WARNING: Looks like the JVM is not up. Attempting to re-initialize...\n"); + + // mark attached right away, in case another initialize() call + //is made (happens if multiple applets are present on the same page) + jvm_attached = PR_TRUE; + factory->InitializeJava(); + } // Send applet tag message to appletviewer. // FIXME: nsCOMPtr @@ -2254,8 +2301,8 @@ IcedTeaPluginInstance::Initialize (nsIPl tagMessage += appletTag; tagMessage += ""; - // remove \n characters from the message - tagMessage.StripChars("\n"); + // remove newline characters from the message + tagMessage.StripChars("\r\n"); factory->SendMessageToAppletViewer (tagMessage); @@ -2307,6 +2354,11 @@ IcedTeaPluginInstance::Destroy () { PLUGIN_TRACE_INSTANCE (); + if (fatalErrorOccurred == PR_TRUE) + { + return NS_OK; + } + nsCString destroyMessage (instanceIdentifierPrefix); destroyMessage += "destroy"; factory->SendMessageToAppletViewer (destroyMessage); @@ -2335,9 +2387,16 @@ IcedTeaPluginInstance::SetWindow (nsPlug PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - while (initialized == PR_FALSE) { + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) { PROCESS_PENDING_EVENTS; } + + // did we bail because there is no jvm? + if (this->fatalErrorOccurred == PR_TRUE) + { + PLUGIN_DEBUG_0ARG("Initialization failed. SetWindow returning\n"); + return NS_ERROR_FAILURE; + } PLUGIN_DEBUG_1ARG ("Instance %p initialization complete...\n", this); } @@ -2584,6 +2643,9 @@ plugin_in_pipe_callback (GIOChannel* sou { PLUGIN_DEBUG ("appletviewer has stopped."); keep_installed = FALSE; + jvm_attached = PR_FALSE; + + factory->MarkInstancesVoid(); } else { @@ -2667,10 +2729,7 @@ IcedTeaPluginFactory::OnInputStreamReady return NS_OK; } -#include #include -#include -#include void IcedTeaPluginFactory::HandleMessage (nsCString const& message) @@ -2725,7 +2784,6 @@ IcedTeaPluginFactory::HandleMessage (nsC if (instance != 0) { instance->peer->ShowStatus (nsCString (rest).get ()); - } } else if (command == "initialized") @@ -2736,6 +2794,16 @@ IcedTeaPluginFactory::HandleMessage (nsC PLUGIN_DEBUG_2ARG ("Setting instance.initialized for %p from %d ", instance, instance->initialized); instance->initialized = PR_TRUE; PLUGIN_DEBUG_1ARG ("to %d...\n", instance->initialized); + } + } + else if (command == "fatalError") + { + IcedTeaPluginInstance* instance = NULL; + instances.Get (identifier, &instance); + if (instance != 0) { + PLUGIN_DEBUG_2ARG ("Setting instance.fatalErrorOccurred for %p from %d ", instance, instance->fatalErrorOccurred); + instance->fatalErrorOccurred = PR_TRUE; + PLUGIN_DEBUG_1ARG ("to %d...\n", instance->fatalErrorOccurred); } } else if (command == "url") @@ -3727,6 +3795,7 @@ IcedTeaPluginInstance::IcedTeaPluginInst peer(0), liveconnect_window (0), initialized(PR_FALSE), + fatalErrorOccurred(PR_FALSE), instanceIdentifierPrefix ("") { PLUGIN_TRACE_INSTANCE (); @@ -4272,7 +4341,6 @@ NS_IMPL_ISUPPORTS1 (IcedTeaJNIEnv, nsISe #include #include #include -#include #include #include #include @@ -5444,6 +5512,8 @@ NSGetFactory (nsISupports* aServMgr, nsC char const* aClassName, char const* aContractID, nsIFactory** aFactory) { + PLUGIN_DEBUG_0ARG("NSGetFactory called\n"); + static NS_DEFINE_CID (PluginCID, NS_PLUGIN_CID); if (!aClass.Equals (PluginCID)) return NS_ERROR_FACTORY_NOT_LOADED; diff -r 5fabd5969958 -r eb4fbb8e17d9 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java --- a/plugin/icedtea/sun/applet/PluginAppletSecurityContext.java Tue Oct 21 16:45:19 2008 +0200 +++ b/plugin/icedtea/sun/applet/PluginAppletSecurityContext.java Tue Oct 21 16:17:19 2008 -0400 @@ -1010,6 +1010,135 @@ public class PluginAppletSecurityContext + " " + message); } + public void prePopulateLCClasses() { + + int classID; + + prepopulateClass("netscape/javascript/JSObject"); + classID = prepopulateClass("netscape/javascript/JSException"); + prepopulateMethod(classID, "", "(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;I)V"); + prepopulateMethod(classID, "", "(ILjava/lang/Object;)V"); + prepopulateField(classID, "lineno"); + prepopulateField(classID, "tokenIndex"); + prepopulateField(classID, "source"); + prepopulateField(classID, "filename"); + prepopulateField(classID, "wrappedExceptionType"); + prepopulateField(classID, "wrappedException"); + + classID = prepopulateClass("netscape/javascript/JSUtil"); + prepopulateMethod(classID, "getStackTrace", "(Ljava/lang/Throwable;)Ljava/lang/String;"); + + prepopulateClass("java/lang/Object"); + classID = prepopulateClass("java/lang/Class"); + prepopulateMethod(classID, "getMethods", "()[Ljava/lang/reflect/Method;"); + prepopulateMethod(classID, "getConstructors", "()[Ljava/lang/reflect/Constructor;"); + prepopulateMethod(classID, "getFields", "()[Ljava/lang/reflect/Field;"); + prepopulateMethod(classID, "getName", "()Ljava/lang/String;"); + prepopulateMethod(classID, "isArray", "()Z"); + prepopulateMethod(classID, "getComponentType", "()Ljava/lang/Class;"); + prepopulateMethod(classID, "getModifiers", "()I"); + + + classID = prepopulateClass("java/lang/reflect/Method"); + prepopulateMethod(classID, "getName", "()Ljava/lang/String;"); + prepopulateMethod(classID, "getParameterTypes", "()[Ljava/lang/Class;"); + prepopulateMethod(classID, "getReturnType", "()Ljava/lang/Class;"); + prepopulateMethod(classID, "getModifiers", "()I"); + + classID = prepopulateClass("java/lang/reflect/Constructor"); + prepopulateMethod(classID, "getParameterTypes", "()[Ljava/lang/Class;"); + prepopulateMethod(classID, "getModifiers", "()I"); + + classID = prepopulateClass("java/lang/reflect/Field"); + prepopulateMethod(classID, "getName", "()Ljava/lang/String;"); + prepopulateMethod(classID, "getType", "()Ljava/lang/Class;"); + prepopulateMethod(classID, "getModifiers", "()I"); + + classID = prepopulateClass("java/lang/reflect/Array"); + prepopulateMethod(classID, "newInstance", "(Ljava/lang/Class;I)Ljava/lang/Object;"); + + classID = prepopulateClass("java/lang/Throwable"); + prepopulateMethod(classID, "toString", "()Ljava/lang/String;"); + prepopulateMethod(classID, "getMessage", "()Ljava/lang/String;"); + + classID = prepopulateClass("java/lang/System"); + prepopulateMethod(classID, "identityHashCode", "(Ljava/lang/Object;)I"); + + classID = prepopulateClass("java/lang/Boolean"); + prepopulateMethod(classID, "booleanValue", "()D"); + prepopulateMethod(classID, "", "(Z)V"); + + classID = prepopulateClass("java/lang/Double"); + prepopulateMethod(classID, "doubleValue", "()D"); + prepopulateMethod(classID, "", "(D)V"); + + classID = prepopulateClass("java/lang/Void"); + prepopulateField(classID, "TYPE"); + + prepopulateClass("java/lang/String"); + prepopulateClass("java/applet/Applet"); + } + + private int prepopulateClass(String name) { + name = name.replace('/', '.'); + ClassLoader cl = liveconnectLoader; + Class c = null; + + try { + c = cl.loadClass(name); + store.reference(c); + } catch (ClassNotFoundException cnfe) { + // do nothing ... this should never happen + cnfe.printStackTrace(); + } + + return store.getIdentifier(c); + } + + private int prepopulateMethod(int classID, String methodName, String signatureStr) { + Signature signature = parseCall(signatureStr, ((Class) store.getObject(classID)).getClassLoader(), Signature.class); + Object[] a = signature.getClassArray(); + + Class c = (Class) store.getObject(classID); + Method m = null; + Constructor cs = null; + Object o = null; + + try { + if (methodName.equals("") + || methodName.equals("")) { + o = cs = c.getConstructor(signature.getClassArray()); + store.reference(cs); + } else { + o = m = c.getMethod(methodName, signature.getClassArray()); + store.reference(m); + } + } catch (NoSuchMethodException e) { + // should never happen + e.printStackTrace(); + } + + return store.getIdentifier(m); + } + + private int prepopulateField(int classID, String fieldName) { + + Class c = (Class) store.getObject(classID); + Field f = null; + try { + f = c.getField(fieldName); + } catch (SecurityException e) { + // should never happen + e.printStackTrace(); + } catch (NoSuchFieldException e) { + // should never happen + e.printStackTrace(); + } + + store.reference(f); + return store.getIdentifier(f); + } + public void dumpStore() { store.dump(); } diff -r 5fabd5969958 -r eb4fbb8e17d9 plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Tue Oct 21 16:45:19 2008 +0200 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Tue Oct 21 16:17:19 2008 -0400 @@ -47,11 +47,11 @@ import java.io.PrintStream; import java.io.PrintStream; import java.io.Reader; import java.io.StringReader; +import java.lang.reflect.InvocationTargetException; import java.net.MalformedURLException; import java.net.SocketPermission; import java.net.URL; import java.security.AccessController; -import java.security.Policy; import java.security.PrivilegedAction; import java.util.Enumeration; import java.util.HashMap; @@ -59,6 +59,8 @@ import java.util.Iterator; import java.util.Iterator; import java.util.Map; import java.util.Vector; + +import javax.swing.SwingUtilities; import net.sourceforge.jnlp.NetxPanel; import sun.awt.AppContext; @@ -261,12 +263,6 @@ import sun.misc.Ref; From David.Herron at Sun.COM Tue Oct 21 14:39:56 2008 From: David.Herron at Sun.COM (David Herron) Date: Tue, 21 Oct 2008 14:39:56 -0700 Subject: DLJ 2.0 Re: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <1224616953.3700.28.camel@hermans.wildebeest.org> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> <48F8D4E1.4000604@sun.com> <1224616953.3700.28.camel@hermans.wildebeest.org> Message-ID: <48FE4C2C.6020005@sun.com> Mark Wielaard wrote: > Hi David, > > On Fri, 2008-10-17 at 11:09 -0700, David Herron wrote: > >> I suppose you're requesting that I stop sending the DLJ announcements to >> this list? >> > Lets just try to figure out some way that the DLJ and OpenJDK > communities could work together. The problem as I see it currently is > that you are publishing these "bundles" under terms which explicitly > deny anybody from combining, configuring, distribute or even running the > DLJ bundles together with OpenJDK derived projects. Is there a way to > get around that limitation? > > And what parts/ideas of the DLJ bundles do you think could be used (as > inspiration) to improve the OpenJDK work? Would it be possible to > publish those parts so others could extend and improve on the work in > conjunction with IcedTea/OpenJDk? > > Thanks, > > Mark > > I changed the subject since you're kind of describing a DLJ2.0 (or DLJ-the-next-generation). And I appreciate your willingness to work with us on this. The part which would be easy to reuse is packaging scripts. While the bundles themselves are under a non-free not-quite-icky closed license we chose the BSD license for packaging scripts inside the jdk-distros project. This means jdk-distros could be used for shared development of packaging or other meta scripts some of whom I suppose could be applied to openjdk builds. That could be done today no changes required. As for the bundle license... I could imagine some changes but am reluctant to take many steps down that road. It would cost some internal effort to work through changes, and I see little reason to pursue it because I believe there is limited usefulness to the DLJ bundles. e.g. I think that when we get to the end of oh-what-the-heck-lets-call-it-java-7 and openjdk7 approximately equals closedjdk7 there will be little reason to have DLJ bundles because openjdk7 will be close enough to closedjdk7 that it won't make much difference. The big question mark there is what will be the status of the plugin, and as we said last month that decision is up in the air. In any case if we're likely to drop DLJ next year because it's no longer needed then it doesn't seem useful to me to spend the resources to change it now. One potentially useful DLJ change would be to change it so a non-distro (like JPackage) could participate and redistribute DLJ derived bundles. Right now the license is only open to distros. - David Herron -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081021/ede5ff8f/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 02:04:40 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 22 Oct 2008 09:04:40 +0000 Subject: [Bug 225] New: Alfresco throws exception on ARM Zero Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=225 Summary: Alfresco throws exception on ARM Zero Product: IcedTea Version: unspecified Platform: Other OS/Version: Linux Status: NEW Severity: major Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: twisti at complang.tuwien.ac.at During startup, Alfresco throws on a Debian Lenny armel with: $ java -version java version "1.6.0_0" OpenJDK Runtime Environment (build 1.6.0_0-b11) OpenJDK Core VM (build 1.6.0_0-b11, interpreted mode) this exception (and a few more are following). The same exception also occurs with CACAO as VM, so it's probably something in the OpenJDK libraries. 08:41:34,239 User:System WARN [remoting.rmi.RmiRegistryFactoryBean] Could not detect RMI registry - creating new one 08:42:07,021 User:System WARN [remoting.rmi.RmiServiceExporter] Could not detect RMI registry - creating new one 08:42:07,679 User:System ERROR [web.context.ContextLoader] Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.remoting.rmi.RmiServiceExporter' defined in class path resource [alfresco/emailserver/email-service-context.xml]: Invocation of init method failed; nested exception is java.rmi.server.ExportException: internal error: ObjID already in use Caused by: java.rmi.server.ExportException: internal error: ObjID already in use at sun.rmi.transport.ObjectTable.putTarget(ObjectTable.java:186) at sun.rmi.transport.Transport.exportObject(Transport.java:92) at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:247) at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:411) at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:147) at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:207) at sun.rmi.registry.RegistryImpl.setup(RegistryImpl.java:110) at sun.rmi.registry.RegistryImpl.(RegistryImpl.java:96) at java.rmi.registry.LocateRegistry.createRegistry(LocateRegistry.java:203) at org.springframework.remoting.rmi.RmiServiceExporter.getRegistry(RmiServiceExporter.java:349) at org.springframework.remoting.rmi.RmiServiceExporter.getRegistry(RmiServiceExporter.java:325) at org.springframework.remoting.rmi.RmiServiceExporter.getRegistry(RmiServiceExporter.java:290) at org.springframework.remoting.rmi.RmiServiceExporter.prepare(RmiServiceExporter.java:233) at org.springframework.remoting.rmi.RmiServiceExporter.afterPropertiesSet(RmiServiceExporter.java:197) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1118) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1085) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:429) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:250) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:247) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:161) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:273) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:346) at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:156) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3764) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4216) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:825) at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:714) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022) at org.apache.catalina.core.StandardHost.start(StandardHost.java:736) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:448) at org.apache.catalina.core.StandardServer.start(StandardServer.java:700) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From aph at redhat.com Wed Oct 22 03:50:55 2008 From: aph at redhat.com (Andrew Haley) Date: Wed, 22 Oct 2008 11:50:55 +0100 Subject: New patch: fix xjc regressions Message-ID: <48FF058F.20807@redhat.com> A change committed some time between b09 and b12 added a security feature in Xerces. This enforces a limit of 5000 on the maxOccurs attribute of a xsd:sequence element. I asssume this is in order to prevent a DOS attack on the VM from XML downloaded from the Internet. However, it also enforces the limit when running the commend-line XJC tool, and this causes a huge number of JCK failures. This fix disables the SecurityManager, and so removes the limit, when we're using the XJC tool. Andrew. 2008-10-22 Andrew Haley * patches/icedtea-xjc.patch: New. --- openjdk/jaxws/src/share/classes/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java.prev 2008-10-21 15:50:20.000000000 +0100 +++ openjdk/jaxws/src/share/classes/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java 2008-10-21 15:57:37.000000000 +0100 @@ -66,6 +66,14 @@ SchemaFactory sf = SchemaFactory.newInstance(W3C_XML_SCHEMA_NS_URI); sf.setErrorHandler(errorFilter); + try { + // By default the SchemaFactory imposes a limit of 5000 on + // xsd:sequence maxOccurs if a SecurityManager is + // installed. This breaks the specification of xjc, + // causing TCK failures. + sf.setProperty("http://apache.org/xml/properties/security-manager", null); + } catch (SAXException e) { + } if( entityResolver != null ) { sf.setResourceResolver(new LSResourceResolver() { public LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI) { From aph at redhat.com Wed Oct 22 03:56:35 2008 From: aph at redhat.com (Andrew Haley) Date: Wed, 22 Oct 2008 10:56:35 +0000 Subject: changeset in /hg/icedtea6: 2008-10-22 Andrew Haley changeset f56655e8cba7 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f56655e8cba7 description: 2008-10-22 Andrew Haley * patches/icedtea-xjc.patch: New. diffstat: 3 files changed, 23 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 3 ++- patches/icedtea-xjc.patch | 17 +++++++++++++++++ diffs (45 lines): diff -r 560a859a217b -r f56655e8cba7 ChangeLog --- a/ChangeLog Tue Oct 21 17:09:48 2008 -0400 +++ b/ChangeLog Wed Oct 22 11:56:27 2008 +0100 @@ -1,3 +1,7 @@ 2008-10-21 Deepak Bhole + + * patches/icedtea-xjc.patch: New. + 2008-10-21 Deepak Bhole * IcedTeaPlugin.cc: Implemented JVM respawning. diff -r 560a859a217b -r f56655e8cba7 Makefile.am --- a/Makefile.am Tue Oct 21 17:09:48 2008 -0400 +++ b/Makefile.am Wed Oct 22 11:56:27 2008 +0100 @@ -533,7 +533,8 @@ ICEDTEA_PATCHES = \ patches/icedtea-6open-6651382.patch \ patches/icedtea-6open-6756202.patch \ $(VISUALVM_PATCH) \ - patches/icedtea-javac-debuginfo.patch + patches/icedtea-javac-debuginfo.patch \ + patches/icedtea-xjc.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 560a859a217b -r f56655e8cba7 patches/icedtea-xjc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-xjc.patch Wed Oct 22 11:56:27 2008 +0100 @@ -0,0 +1,17 @@ +--- openjdk/jaxws/src/share/classes/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java.prev 2008-10-21 15:50:20.000000000 +0100 ++++ openjdk/jaxws/src/share/classes/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java 2008-10-21 15:57:37.000000000 +0100 +@@ -66,6 +66,14 @@ + + SchemaFactory sf = SchemaFactory.newInstance(W3C_XML_SCHEMA_NS_URI); + sf.setErrorHandler(errorFilter); ++ try { ++ // By default the SchemaFactory imposes a limit of 5000 on ++ // xsd:sequence maxOccurs if a SecurityManager is ++ // installed. This breaks the specification of xjc, ++ // causing TCK failures. ++ sf.setProperty("http://apache.org/xml/properties/security-manager", null); ++ } catch (SAXException e) { ++ } + if( entityResolver != null ) { + sf.setResourceResolver(new LSResourceResolver() { + public LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI) { From Dalibor.Topic at Sun.COM Wed Oct 22 07:09:58 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Wed, 22 Oct 2008 16:09:58 +0200 Subject: Public open specs In-Reply-To: <1224616572.3700.22.camel@hermans.wildebeest.org> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> <48F4BD78.1060704@sun.com> <1223999173.3470.11.camel@hermans.wildebeest.org> <48F4DD1E.6000106@sun.com> <1224616572.3700.22.camel@hermans.wildebeest.org> Message-ID: <48FF3436.7070203@sun.com> Mark Wielaard wrote: > Hi Dalibor, > > On Tue, 2008-10-14 at 19:55 +0200, Dalibor Topic wrote: > >> Not yet (outside the JSR spec document). The process bottleneck is >> identified, working on a fix. >> > > That is great! Any timelines for these process fixes to be cleared up? > Unfortunately, I don't yet have a timeline, though the work on a fix is ongoing. At the same time, I'd like to thank you for your patience and the regular pings on this issue, the regular heartbeat of acommunity that cares about the VM spec is helping in a good way. > I came up with the following list of JSRs that have > a Sun lead and for which OpenJDK provides (prototype) GPL code, but > which are published under non-free terms preventing others to also > publish (independent) implementations or extend the OpenJDK provided > ones: > Could you elaborate why you think that the terms of the JSRs you quoted prevent publication of independent implementations? cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From mark at klomp.org Wed Oct 22 07:22:40 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 22 Oct 2008 16:22:40 +0200 Subject: Public open specs In-Reply-To: <48FF3436.7070203@sun.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> <48F4BD78.1060704@sun.com> <1223999173.3470.11.camel@hermans.wildebeest.org> <48F4DD1E.6000106@sun.com> <1224616572.3700.22.camel@hermans.wildebeest.org> <48FF3436.7070203@sun.com> Message-ID: <1224685360.3266.39.camel@dijkstra.wildebeest.org> Hi Dalibor, On Wed, 2008-10-22 at 16:09 +0200, Dalibor Topic wrote: > Mark Wielaard wrote: > > On Tue, 2008-10-14 at 19:55 +0200, Dalibor Topic wrote: > > > >> Not yet (outside the JSR spec document). The process bottleneck is > >> identified, working on a fix. > > > > That is great! Any timelines for these process fixes to be cleared up? > > > Unfortunately, I don't yet have a timeline, though the work on a fix is > ongoing. Thanks, please keep us informed. > > I came up with the following list of JSRs that have > > a Sun lead and for which OpenJDK provides (prototype) GPL code, but > > which are published under non-free terms preventing others to also > > publish (independent) implementations or extend the OpenJDK provided > > ones: > > > Could you elaborate why you think that the terms of the JSRs you quoted > prevent publication of > independent implementations? There are currently restrictions on the JSRs that prevent reusing any Sun OpenJDK code for implementations because they aren't considered "independent" because of clause 5 ('"Independent Implementation" shall mean an implementation of the Specification that neither derives from any of Sun's source code or binary code materials, ...'). And even for "independent" implementations clauses 2 (a - c) limit the scope of the code you can publish, which conflicts with the rights granted under the GPL, which doesn't limit the scope ("does not modify, subset, superset, etc."). Cheers, Mark From langel at redhat.com Wed Oct 22 07:27:02 2008 From: langel at redhat.com (Lillian Angel) Date: Wed, 22 Oct 2008 14:27:02 +0000 Subject: changeset in /hg/icedtea6: 2008-10-22 Lillian Angel changeset 928b757d93db in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=928b757d93db description: 2008-10-22 Lillian Angel * Makefile.am: Added quotes around DIST_ID. diffstat: 2 files changed, 6 insertions(+), 2 deletions(-) ChangeLog | 6 +++++- Makefile.am | 2 +- diffs (27 lines): diff -r f56655e8cba7 -r 928b757d93db ChangeLog --- a/ChangeLog Wed Oct 22 11:56:27 2008 +0100 +++ b/ChangeLog Wed Oct 22 10:26:57 2008 -0400 @@ -1,6 +1,10 @@ 2008-10-22 Andrew Haley + + * Makefile.am: Added quotes around DIST_ID. + 2008-10-22 Andrew Haley - * patches/icedtea-xjc.patch: New. + * patches/icedtea-xjc.patch: New. 2008-10-21 Deepak Bhole diff -r f56655e8cba7 -r 928b757d93db Makefile.am --- a/Makefile.am Wed Oct 22 11:56:27 2008 +0100 +++ b/Makefile.am Wed Oct 22 10:26:57 2008 -0400 @@ -173,7 +173,7 @@ ICEDTEA_ENV = \ "JAVAC=" \ "RHINO_JAR=$(RHINO_JAR)" -ICEDTEA_ENV += $(if $(DIST_ID),"DISTRIBUTION_ID=$(DIST_ID)") +ICEDTEA_ENV += $(if $(DIST_ID),"DISTRIBUTION_ID="$(DIST_ID)"") if WITH_CACAO ICEDTEA_ENV += \ From omajid at redhat.com Wed Oct 22 09:21:28 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 22 Oct 2008 16:21:28 +0000 Subject: changeset in /hg/icedtea6: 2008-10-22 Omair Majid changeset e86a02a1a217 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e86a02a1a217 description: 2008-10-22 Omair Majid * rt/net/sourceforge/nanoxml/XMLElement.java (sanitizeInput): Fix for last character of the jnlp file being ignored. diffstat: 2 files changed, 18 insertions(+) ChangeLog | 5 +++++ rt/net/sourceforge/nanoxml/XMLElement.java | 13 +++++++++++++ diffs (43 lines): diff -r 928b757d93db -r e86a02a1a217 ChangeLog --- a/ChangeLog Wed Oct 22 10:26:57 2008 -0400 +++ b/ChangeLog Wed Oct 22 12:20:12 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-22 Lillian Angel + + * rt/net/sourceforge/nanoxml/XMLElement.java + (sanitizeInput): Fix for last character of the jnlp file being ignored. + 2008-10-22 Lillian Angel * Makefile.am: Added quotes around DIST_ID. diff -r 928b757d93db -r e86a02a1a217 rt/net/sourceforge/nanoxml/XMLElement.java --- a/rt/net/sourceforge/nanoxml/XMLElement.java Wed Oct 22 10:26:57 2008 -0400 +++ b/rt/net/sourceforge/nanoxml/XMLElement.java Wed Oct 22 12:20:12 2008 -0400 @@ -1266,6 +1266,7 @@ public class XMLElement int i = this.reader.read(); if (i == -1) { + // no character in buffer, and nothing read out.flush(); break; } else if (i == 10) { @@ -1278,7 +1279,19 @@ public class XMLElement char next; int i = this.reader.read(); if (i == -1) { + // character in buffer and nothing read. write out + // what's in the buffer + out.print(ch); out.flush(); + if (JNLPRuntime.isDebug()) { + if (ch == 10) { + System.out.println(); + System.out.print("line: " + newline + " "); + newline++; + } else { + System.out.print(ch); + } + } break; } else if (i == 10) { next = '\n'; From doko at ubuntu.com Wed Oct 22 10:18:53 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 22 Oct 2008 17:18:53 +0000 Subject: changeset in /hg/icedtea6: 2008-10-22 Matthias Klose changeset d47e55fa18e5 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=d47e55fa18e5 description: 2008-10-22 Matthias Klose * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID instead. * configure.ac: Make DIST_ID more precise. diffstat: 3 files changed, 14 insertions(+), 8 deletions(-) ChangeLog | 6 ++++++ Makefile.am | 5 ++--- configure.ac | 11 ++++++----- diffs (50 lines): diff -r e86a02a1a217 -r d47e55fa18e5 ChangeLog --- a/ChangeLog Wed Oct 22 12:20:12 2008 -0400 +++ b/ChangeLog Wed Oct 22 19:18:26 2008 +0200 @@ -1,3 +1,9 @@ 2008-10-22 Omair Majid + + * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID + instead. + * configure.ac: Make DIST_ID more precise. + 2008-10-22 Omair Majid * rt/net/sourceforge/nanoxml/XMLElement.java diff -r e86a02a1a217 -r d47e55fa18e5 Makefile.am --- a/Makefile.am Wed Oct 22 12:20:12 2008 -0400 +++ b/Makefile.am Wed Oct 22 19:18:26 2008 +0200 @@ -171,9 +171,8 @@ ICEDTEA_ENV = \ "ALT_PARALLEL_COMPILE_JOBS=$(PARALLEL_JOBS)" \ "HOTSPOT_BUILD_JOBS=$(PARALLEL_JOBS)" \ "JAVAC=" \ - "RHINO_JAR=$(RHINO_JAR)" - -ICEDTEA_ENV += $(if $(DIST_ID),"DISTRIBUTION_ID="$(DIST_ID)"") + "RHINO_JAR=$(RHINO_JAR)" \ + "DISTRIBUTION_ID=$(DIST_ID)" if WITH_CACAO ICEDTEA_ENV += \ diff -r e86a02a1a217 -r d47e55fa18e5 configure.ac --- a/configure.ac Wed Oct 22 12:20:12 2008 -0400 +++ b/configure.ac Wed Oct 22 19:18:26 2008 +0200 @@ -237,12 +237,13 @@ AC_SUBST(PKGVERSION) AC_SUBST(PKGVERSION) if test -n "$LSB_RELEASE"; then - DIST_ID=$($LSB_RELEASE -ds) + if test -n "$PKGVERSION"; then + DIST_ID="$DIST_ID, package $PKGVERSION" + else + DIST_ID="Built on $($LSB_RELEASE -ds)" + fi else - DIST_ID='Custom build' -fi -if test -n "$PKGVERSION"; then - DIST_ID="$DIST_ID, package $PKGVERSION" + DIST_ID="Custom build ($(date))" fi AC_SUBST(DIST_ID) From doko at ubuntu.com Wed Oct 22 10:37:45 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 22 Oct 2008 17:37:45 +0000 Subject: changeset in /hg/icedtea6: * configure.ac: Make DIST_ID more pre... Message-ID: changeset 5d129b358a4f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5d129b358a4f description: * configure.ac: Make DIST_ID more precise. Some implementations of the lsb_release command quote the output; ignore it. diffstat: 2 files changed, 5 insertions(+), 3 deletions(-) ChangeLog | 3 ++- configure.ac | 5 +++-- diffs (30 lines): diff -r d47e55fa18e5 -r 5d129b358a4f ChangeLog --- a/ChangeLog Wed Oct 22 19:18:26 2008 +0200 +++ b/ChangeLog Wed Oct 22 19:37:18 2008 +0200 @@ -2,7 +2,8 @@ 2008-10-22 Matthias Klose diff -r d47e55fa18e5 -r 5d129b358a4f configure.ac --- a/configure.ac Wed Oct 22 19:18:26 2008 +0200 +++ b/configure.ac Wed Oct 22 19:37:18 2008 +0200 @@ -237,10 +237,11 @@ AC_SUBST(PKGVERSION) AC_SUBST(PKGVERSION) if test -n "$LSB_RELEASE"; then + lsb_info="$($LSB_RELEASE -ds | sed 's/^"//;s/"$//')" if test -n "$PKGVERSION"; then - DIST_ID="$DIST_ID, package $PKGVERSION" + DIST_ID="$lsb_info, package $PKGVERSION" else - DIST_ID="Built on $($LSB_RELEASE -ds)" + DIST_ID="Built on $lsb_info" fi else DIST_ID="Custom build ($(date))" From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 17:23:11 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 00:23:11 +0000 Subject: [Bug 226] New: applet parameter with "" value is passed to applet as null Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=226 Summary: applet parameter with "" value is passed to applet as null Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: asch at freemail.hu When a parameter is set to empty string in the applet embedding html snippet then the applet receives null value instead of empty string (""). -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 17:26:13 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 00:26:13 +0000 Subject: [Bug 226] applet parameter with "" value is passed to applet as null Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=226 ------- Comment #1 from asch at freemail.hu 2008-10-23 00:26 ------- Created an attachment (id=122) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=122&action=view) Simple Example (Eclipse project) that demonstrates the problem -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 17:57:09 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 00:57:09 +0000 Subject: [Bug 227] New: swing TextLayout.getBounds() returns shifted bounds Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=227 Summary: swing TextLayout.getBounds() returns shifted bounds Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: asch at freemail.hu The java.awt.font.TextLayout.getBounds() method returns a box that is shifted upwards compared to the box that is returned by Sun's official JRE. Sample code: package swingbug; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Rectangle; import java.awt.font.FontRenderContext; import java.awt.font.TextLayout; import java.awt.geom.Rectangle2D; import javax.swing.JFrame; public class SwingBug extends JFrame { private static final long serialVersionUID = 1L; public static void main(String[] args) { new SwingBug().setVisible(true); } public SwingBug() { setTitle("Swing bug"); setSize(400, 400); repaint(); } @Override public void paint(Graphics g) { Graphics2D graphics=(Graphics2D) g; graphics.setColor(Color.BLUE); graphics.fillRect(0,0,400,400); drawString(graphics, "Hello Kitty!", 100, 100); } public void drawString( Graphics2D graphics, String string, int x, int y) { if (string.length() > 0) { Font f = new Font("times", 0, 16); graphics.setFont(f); FontRenderContext fontRendererContext = new FontRenderContext(null, true, true); TextLayout textLayout = new TextLayout(string, f, fontRendererContext); Rectangle2D rectangleOfText=textLayout.getBounds(); Rectangle backgroundRectangle=rectangleOfText.getBounds(); graphics.setColor(new Color(1.0f,1.0f,1.0f,0.5f)); graphics.fillRect(backgroundRectangle.x+x,backgroundRectangle.y+y,backgroundRectangle.width,backgroundRectangle.height); graphics.setColor(new Color(0,0,0)); textLayout.draw(graphics, x, y); } } } -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 17:58:50 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 00:58:50 +0000 Subject: [Bug 227] swing TextLayout.getBounds() returns shifted bounds Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=227 ------- Comment #1 from asch at freemail.hu 2008-10-23 00:58 ------- Created an attachment (id=123) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=123&action=view) The result of the example code on icedtea6 When generating this screenshot this JRE is used: $ java -version java version "1.6.0_0" IcedTea6 1.3.1 Runtime Environment (build 1.6.0_0-b12) OpenJDK 64-Bit Server VM (build 1.6.0_0-b12, mixed mode) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 18:00:22 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 01:00:22 +0000 Subject: [Bug 227] swing TextLayout.getBounds() returns shifted bounds Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=227 ------- Comment #2 from asch at freemail.hu 2008-10-23 01:00 ------- Created an attachment (id=124) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=124&action=view) This is how Sun JRE renders the same window -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Oct 22 18:07:43 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 01:07:43 +0000 Subject: [Bug 227] swing TextLayout.getBounds() returns shifted bounds Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=227 ------- Comment #3 from asch at freemail.hu 2008-10-23 01:07 ------- Created an attachment (id=125) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=125&action=view) With Compiz activated the result is getting more weird The "dust" on the picture appears when I run the test code with compiz activated. It is not deterministic but is always different on each run of the code. The "extra" white rectangle is always the same. It seems to be video driver problem but other (non Java) programs on the desktop all work fine and are not affected. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Oct 23 00:49:09 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 07:49:09 +0000 Subject: [Bug 228] New: Since I have installed Mandriva 2009, brutal breakdown of my eclipse 3.3.2 platform with JDK 1.6. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=228 Summary: Since I have installed Mandriva 2009, brutal breakdown of my eclipse 3.3.2 platform with JDK 1.6. Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: major Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: olivier.allard at prismtech.com Since I have installed Mandriva 2009 I experience brutal breakdown of my eclipse 3.3.2 platform. It happens apparently randomly while I do my usual development tasks. I develop a modeling tool for DDS (OMG specification) and I use EMF plugins. This is rather blocking since I don't really want to re-install Mandriva 2008 spring after having spent some time fixing issues. I guess there's something wrong with my system. First of all I'm surprised by the fact that the generated bug report document states icedtea, though I use jdk 1.6. Icedtea doesn't seem to be available for Mandriva 2009 anyway and I couldn't use it because one of the daemon I have to interact with is not compliant. # # An unexpected error has been detected by Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x19d607da, pid=4442, tid=3072800448 # # Java VM: OpenJDK Client VM (1.6.0_0-b11 mixed mode linux-x86) # Problematic frame: # C [UTF-16.so+0x7da] gconv+0x33a # # If you would like to submit a bug report, please visit: # http://icedtea.classpath.org/bugzilla # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # --------------- T H R E A D --------------- Current thread (0x0860a000): JavaThread "main" [_thread_in_native, id=4442, stack(0xbfbb1000,0xbfdb1000)] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=2 (SEGV_ACCERR), si_addr=0x19d7b000 Registers: EAX=0x0a093bec, EBX=0x19d62ff4, ECX=0x19d7b000, EDX=0x00000000 ESP=0xbfdadd64, EBP=0xbfdade10, ESI=0x19d7b002, EDI=0x0a093be8 EIP=0x19d607da, CR2=0x19d7b000, EFLAGS=0x00210212 Top of Stack: (sp=0xbfdadd64) 0xbfdadd64: bfdade04 bfdaddec 00000000 bfdadd90 0xbfdadd74: bfdadee7 b7a71140 0a1efeb4 0a26e39c 0xbfdadd84: bfdaddf4 00000004 00000000 0a08a130 0xbfdadd94: 0a0920b0 bfdaddf0 00000004 0a1c468c 0xbfdadda4: 19d7a268 00000000 0a26e404 0a26e48c 0xbfdaddb4: b7941970 00000004 0a09a038 bfdade00 0xbfdaddc4: 00000002 00000000 00000000 00000000 0xbfdaddd4: bfdadee8 2634f4c8 19d7a268 0860a000 Instructions: (pc=0x19d607da) 0x19d607ca: 00 8d 47 04 39 45 ac 0f 82 9b 04 00 00 8b 55 b8 0x19d607da: 0f b7 01 85 d2 0f 85 a3 03 00 00 66 3d ff d7 77 Stack: [0xbfbb1000,0xbfdb1000], sp=0xbfdadd64, free space=2035k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [UTF-16.so+0x7da] gconv+0x33a C [libc.so.6+0x17eaa] C [libc.so.6+0x174c7] iconv+0x67 Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter J org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Z)Z J org.eclipse.swt.widgets.Display.readAndDispatch()Z J org.eclipse.ui.internal.Workbench.runEventLoop(Lorg/eclipse/jface/window/Window$IExceptionHandler;Lorg/eclipse/swt/widgets/Display;)V v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::StubRoutines (1) v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::Interpreter v ~BufferBlob::StubRoutines (1) --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x09382400 JavaThread "Worker-28" [_thread_blocked, id=32685, stack(0x19d7b000,0x1a17c000)] 0x0a1f5c00 JavaThread "RMI TCP Connection(137)-127.0.0.1" daemon [_thread_in_native, id=18710, stack(0x21967000,0x21d68000)] 0x0a2c5000 JavaThread "RMI TCP Connection(136)-127.0.0.1" daemon [_thread_in_native, id=28465, stack(0x1696e000,0x16d6f000)] 0x09f12400 JavaThread "Worker-26" [_thread_blocked, id=17448, stack(0x1656d000,0x1696e000)] 0x0a28f800 JavaThread "Worker-25" [_thread_blocked, id=30130, stack(0x16d6f000,0x17170000)] 0x09e98000 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11790, stack(0x17d73000,0x18174000)] 0x09e60400 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11781, stack(0x18174000,0x18575000)] 0x09ef6000 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11780, stack(0x18575000,0x18976000)] 0x09f0ac00 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11779, stack(0x18976000,0x18d77000)] 0x09f32c00 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11553, stack(0x18d77000,0x19178000)] 0x086d3000 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11552, stack(0x19178000,0x19579000)] 0x09dde400 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11551, stack(0x20081000,0x20482000)] 0x09d9ec00 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11550, stack(0x1e37a000,0x1e77b000)] 0x09d96c00 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11324, stack(0x1e77b000,0x1eb7c000)] 0x086cb000 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=11323, stack(0x19579000,0x1997a000)] 0x08689400 JavaThread "RMI TCP Connection(2)-127.0.0.1" daemon [_thread_blocked, id=7794, stack(0x1a17c000,0x1a57d000)] 0x09579800 JavaThread "JMX server connection timeout 71" daemon [_thread_blocked, id=7786, stack(0x1a57d000,0x1a97e000)] 0x09c9a800 JavaThread "RMI Scheduler(0)" daemon [_thread_blocked, id=7784, stack(0x1a97e000,0x1ad7f000)] 0x094a1800 JavaThread "RMI TCP Accept-0" daemon [_thread_in_native, id=7780, stack(0x1b180000,0x1b581000)] 0x094c7400 JavaThread "Attach Listener" daemon [_thread_blocked, id=7779, stack(0x1b922000,0x1bd23000)] 0x09c76400 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=6981, stack(0x1eb7c000,0x1ef7d000)] 0x09c7a800 JavaThread "org.eclipse.jface.text.reconciler.MonoReconciler" daemon [_thread_blocked, id=6494, stack(0x20482000,0x20883000)] 0x097fec00 JavaThread "org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon [_thread_blocked, id=4461, stack(0x1f1bc000,0x1f5bd000)] 0x087ba800 JavaThread "Java indexing" daemon [_thread_blocked, id=4459, stack(0x1fc6e000,0x2006f000)] 0x088ebc00 JavaThread "Start Level Event Dispatcher" daemon [_thread_blocked, id=4452, stack(0x21d6d000,0x2216e000)] 0x088b4c00 JavaThread "Framework Event Dispatcher" daemon [_thread_blocked, id=4451, stack(0x2216e000,0x2256f000)] 0x088bfc00 JavaThread "State Data Manager" daemon [_thread_blocked, id=4450, stack(0x2256f000,0x22970000)] 0x0867d400 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=4448, stack(0x22a8f000,0x22e90000)] 0x0867a800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=4447, stack(0x22e90000,0x22f11000)] 0x08679400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=4446, stack(0x22f11000,0x23312000)] 0x08668000 JavaThread "Finalizer" daemon [_thread_blocked, id=4445, stack(0x23312000,0x23713000)] 0x08663800 JavaThread "Reference Handler" daemon [_thread_blocked, id=4444, stack(0x23713000,0x23b14000)] =>0x0860a000 JavaThread "main" [_thread_in_native, id=4442, stack(0xbfbb1000,0xbfdb1000)] Other Threads: 0x08660400 VMThread [stack: 0x23b14000,0x23b95000] [id=4443] 0x0867ec00 WatcherThread [stack: 0x22a0e000,0x22a8f000] [id=4449] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: None Heap def new generation total 11008K, used 5427K [0x24650000, 0x25240000, 0x25a00000) eden space 9792K, 43% used [0x24650000, 0x24a6cfc0, 0x24fe0000) from space 1216K, 100% used [0x24fe0000, 0x25110000, 0x25110000) to space 1216K, 0% used [0x25110000, 0x25110000, 0x25240000) tenured generation total 146456K, used 61086K [0x25a00000, 0x2e906000, 0x34650000) the space 146456K, 41% used [0x25a00000, 0x295a7ad8, 0x295a7c00, 0x2e906000) compacting perm gen total 524288K, used 57473K [0x34650000, 0x54650000, 0xb4650000) the space 524288K, 10% used [0x34650000, 0x37e70500, 0x37e70600, 0x54650000) No shared spaces configured. Dynamic libraries: 08048000-0804b000 r-xp 00000000 08:08 1586715 /home/oall/Development/ECLIPSES/eclipse332/eclipse/eclipse 0804b000-0804c000 rw-p 00002000 08:08 1586715 /home/oall/Development/ECLIPSES/eclipse332/eclipse/eclipse 085ad000-0a38a000 rw-p 085ad000 00:00 0 [heap] 14f75000-16081000 r-xp 00000000 08:05 384074 /usr/lib/xulrunner-1.9/libxul.so 16081000-1615d000 rw-p 0110b000 08:05 384074 /usr/lib/xulrunner-1.9/libxul.so 1615d000-1616c000 rw-p 1615d000 00:00 0 1616c000-1616f000 rwxp 1616c000 00:00 0 1616f000-1656d000 rwxp 1616f000 00:00 0 1656d000-16570000 ---p 1656d000 00:00 0 16570000-1696e000 rwxp 16570000 00:00 0 1696e000-16971000 ---p 1696e000 00:00 0 16971000-16d6f000 rwxp 16971000 00:00 0 16d6f000-16d72000 ---p 16d6f000 00:00 0 16d72000-17170000 rwxp 16d72000 00:00 0 17170000-17173000 rwxp 17170000 00:00 0 17173000-17571000 rwxp 17173000 00:00 0 178d6000-1792c000 r-xp 00000000 08:05 314039 /usr/lib/libXt.so.6.0.0 1792c000-1792f000 rw-p 00056000 08:05 314039 /usr/lib/libXt.so.6.0.0 1792f000-17930000 rw-p 1792f000 00:00 0 17930000-1796e000 r-xp 00000000 08:05 314043 /usr/lib/libhunspell-1.2.so.0.0.0 1796e000-17972000 rw-p 0003e000 08:05 314043 /usr/lib/libhunspell-1.2.so.0.0.0 17972000-17975000 rwxp 17972000 00:00 0 17975000-17d73000 rwxp 17975000 00:00 0 17d73000-17d76000 ---p 17d73000 00:00 0 17d76000-18174000 rwxp 17d76000 00:00 0 18174000-18177000 ---p 18174000 00:00 0 18177000-18575000 rwxp 18177000 00:00 0 18575000-18578000 ---p 18575000 00:00 0 18578000-18976000 rwxp 18578000 00:00 0 18976000-18979000 ---p 18976000 00:00 0 18979000-18d77000 rwxp 18979000 00:00 0 18d77000-18d7a000 ---p 18d77000 00:00 0 18d7a000-19178000 rwxp 18d7a000 00:00 0 19178000-1917b000 ---p 19178000 00:00 0 1917b000-19579000 rwxp 1917b000 00:00 0 19579000-1957c000 ---p 19579000 00:00 0 1957c000-1997a000 rwxp 1957c000 00:00 0 1999a000-199a3000 r-xp 00000000 08:05 314840 /usr/lib/libstartup-notification-1.so.0.0.0 199a3000-199a4000 rw-p 00008000 08:05 314840 /usr/lib/libstartup-notification-1.so.0.0.0 199a4000-199b8000 r-xp 00000000 08:05 313813 /usr/lib/libXft.so.2.1.13 199b8000-199b9000 rw-p 00013000 08:05 313813 /usr/lib/libXft.so.2.1.13 199b9000-19afa000 r-xp 00000000 08:05 314665 /usr/lib/libnss3.so 19afa000-19aff000 rw-p 00141000 08:05 314665 /usr/lib/libnss3.so 19aff000-19b15000 r-xp 00000000 08:05 314668 /usr/lib/libnssutil3.so 19b15000-19b18000 rw-p 00015000 08:05 314668 /usr/lib/libnssutil3.so 19b18000-19b3e000 r-xp 00000000 08:05 314669 /usr/lib/libsmime3.so 19b3e000-19b40000 rw-p 00026000 08:05 314669 /usr/lib/libsmime3.so 19b40000-19b71000 r-xp 00000000 08:05 314671 /usr/lib/libssl3.so 19b71000-19b73000 rw-p 00031000 08:05 314671 /usr/lib/libssl3.so 19b73000-19c2e000 r-xp 00000000 08:05 384072 /usr/lib/xulrunner-1.9/libmozjs.so 19c2e000-19c33000 rw-p 000ba000 08:05 384072 /usr/lib/xulrunner-1.9/libmozjs.so 19c33000-19c68000 r-xp 00000000 08:05 314041 /usr/lib/liblcms.so.1.0.16 19c68000-19c6a000 rw-p 00034000 08:05 314041 /usr/lib/liblcms.so.1.0.16 19c6a000-19c6c000 rw-p 19c6a000 00:00 0 19c6c000-19c8e000 r-xp 00000000 08:05 313713 /usr/lib/libjpeg.so.62.0.0 19c8e000-19c8f000 rw-p 00021000 08:05 313713 /usr/lib/libjpeg.so.62.0.0 19c8f000-19d03000 r-xp 00000000 08:05 309946 /usr/lib/libsqlite3.so.0.8.6 19d03000-19d04000 rw-p 00074000 08:05 309946 /usr/lib/libsqlite3.so.0.8.6 19d04000-19d08000 r-xp 00000000 08:05 314595 /usr/lib/libplc4.so 19d08000-19d09000 rw-p 00003000 08:05 314595 /usr/lib/libplc4.so 19d09000-19d0b000 r-xp 00000000 08:05 314596 /usr/lib/libplds4.so 19d0b000-19d0c000 rw-p 00002000 08:05 314596 /usr/lib/libplds4.so 19d0c000-19d43000 r-xp 00000000 08:05 314594 /usr/lib/libnspr4.so 19d43000-19d44000 rw-p 00037000 08:05 314594 /usr/lib/libnspr4.so 19d44000-19d46000 rw-p 19d44000 00:00 0 19d60000-19d62000 r-xp 00000000 08:05 309127 /usr/lib/gconv/UTF-16.so 19d62000-19d63000 r--p 00001000 08:05 309127 /usr/lib/gconv/UTF-16.so 19d63000-19d64000 rw-p 00002000 08:05 309127 /usr/lib/gconv/UTF-16.so 19d64000-19d68000 r-xp 00000000 08:05 384073 /usr/lib/xulrunner-1.9/libxpcom.so 19d68000-19d69000 rw-p 00003000 08:05 384073 /usr/lib/xulrunner-1.9/libxpcom.so 19d69000-19d7a000 r-xp 00000000 08:08 1847871 /home/oall/Development/ECLIPSES/eclipse332/eclipse/configuration/org.eclipse.osgi/bundles/122/1/.cp/libswt-mozilla-gtk-3349.so 19d7a000-19d7b000 rw-p 00011000 08:08 1847871 /home/oall/Development/ECLIPSES/eclipse332/eclipse/configuration/org.eclipse.osgi/bundles/122/1/.cp/libswt-mozilla-gtk-3349.so 19d7b000-19d7e000 ---p 19d7b000 00:00 0 19d7e000-1a17c000 rwxp 19d7e000 00:00 0 1a17c000-1a17f000 ---p 1a17c000 00:00 0 1a17f000-1a57d000 rwxp 1a17f000 00:00 0 1a57d000-1a580000 ---p 1a57d000 00:00 0 1a580000-1a97e000 rwxp 1a580000 00:00 0 1a97e000-1a981000 ---p 1a97e000 00:00 0 1a981000-1ad7f000 rwxp 1a981000 00:00 0 1ad7f000-1ad82000 rwxp 1ad7f000 00:00 0 1ad82000-1b180000 rwxp 1ad82000 00:00 0 1b180000-1b183000 ---p 1b180000 00:00 0 1b183000-1b581000 rwxp 1b183000 00:00 0 1b581000-1b587000 r-xp 00000000 08:05 313791 /usr/lib/libfam.so.0.0.0 1b587000-1b588000 rw-p 00006000 08:05 313791 /usr/lib/libfam.so.0.0.0 1b588000-1b58f000 r-xp 00000000 08:05 666633 /lib/libacl.so.1.1.0 1b58f000-1b590000 rw-p 00006000 08:05 666633 /lib/libacl.so.1.1.0 1b592000-1b597000 r-xp 00000000 08:08 1847870 /home/oall/Development/ECLIPSES/eclipse332/eclipse/configuration/org.eclipse.osgi/bundles/122/1/.cp/libswt-xpcominit-gtk-3349.so 1b597000-1b599000 rw-p 00005000 08:08 1847870 /home/oall/Development/ECLIPSES/eclipse332/eclipse/configuration/org.eclipse.osgi/bundles/122/1/.cp/libswt-xpcominit-gtk-3349.so 1b599000-1b59f000 r-xp 00000000 08:05 464288 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libmanagement.so 1b59f000-1b5a0000 rw-p 00005000 08:05 464288 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libmanagement.so 1b5a0000-1b5a3000 r-xp 00000000 08:05 464267 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/jli/libjli.so 1b5a3000-1b5a4000 rw-p 00003000 08:05 464267 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/jli/libjli.so 1b5a4000-1b5ad000 r-xp 00000000 08:05 464274 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libinstrument.so 1b5ad000-1b5ae000 rw-p 00008000 08:05 464274 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libinstrument.so 1b5ae000-1b5bb000 r-xp 00000000 08:05 358974 /usr/lib/gnome-vfs-2.0/modules/libfile.so 1b5bb000-1b5bc000 rw-p 0000c000 08:05 358974 /usr/lib/gnome-vfs-2.0/modules/libfile.so 1b5bc000-1b5c2000 r-xp 00000000 08:05 314598 /usr/lib/libgailutil.so.18.0.1 1b5c2000-1b5c3000 rw-p 00005000 08:05 314598 /usr/lib/libgailutil.so.18.0.1 1b5c3000-1b733000 r-xp 00000000 08:05 309812 /usr/lib/libcrypto.so.0.9.8 1b733000-1b748000 rw-p 00170000 08:05 309812 /usr/lib/libcrypto.so.0.9.8 1b748000-1b74b000 rw-p 1b748000 00:00 0 1b74b000-1b79b000 r-xp 00000000 08:05 313873 /usr/lib/libORBit-2.so.0.1.0 1b79b000-1b7a4000 rw-p 00050000 08:05 313873 /usr/lib/libORBit-2.so.0.1.0 1b7a4000-1b7a5000 rw-p 1b7a4000 00:00 0 1b7a5000-1b7bb000 r-xp 00000000 08:05 313797 /usr/lib/libICE.so.6.3.0 1b7bb000-1b7bc000 rw-p 00016000 08:05 313797 /usr/lib/libICE.so.6.3.0 1b7bc000-1b7be000 rw-p 1b7bc000 00:00 0 1b7be000-1b7c6000 r-xp 00000000 08:05 313803 /usr/lib/libSM.so.6.0.0 1b7c6000-1b7c7000 rw-p 00007000 08:05 313803 /usr/lib/libSM.so.6.0.0 1b7c7000-1b7d9000 r-xp 00000000 08:05 314620 /usr/lib/libgnome-keyring.so.0.1.1 1b7d9000-1b7da000 rw-p 00011000 08:05 314620 /usr/lib/libgnome-keyring.so.0.1.1 1b7da000-1b7f3000 r-xp 00000000 08:05 314600 /usr/lib/libart_lgpl_2.so.2.3.20 1b7f3000-1b7f4000 rw-p 00018000 08:05 314600 /usr/lib/libart_lgpl_2.so.2.3.20 1b7f4000-1b827000 r-xp 00000000 08:05 314604 /usr/lib/libgnomecanvas-2.so.0.2001.0 1b827000-1b828000 rw-p 00033000 08:05 314604 /usr/lib/libgnomecanvas-2.so.0.2001.0 1b828000-1b88e000 r-xp 00000000 08:05 314842 /usr/lib/libbonoboui-2.so.0.0.0 1b88e000-1b891000 rw-p 00065000 08:05 314842 /usr/lib/libbonoboui-2.so.0.0.0 1b891000-1b8ba000 r-xp 00000000 08:05 314536 /usr/lib/libaudiofile.so.0.0.2 1b8ba000-1b8bd000 rw-p 00029000 08:05 314536 /usr/lib/libaudiofile.so.0.0.2 1b8bd000-1b918000 r-xp 00000000 08:05 314447 /usr/lib/libbonobo-2.so.0.0.0 1b918000-1b922000 rw-p 0005b000 08:05 314447 /usr/lib/libbonobo-2.so.0.0.0 1b922000-1b925000 ---p 1b922000 00:00 0 1b925000-1bd23000 rwxp 1b925000 00:00 0 1bd25000-1bd29000 r-xp 00000000 08:05 313877 /usr/lib/libORBitCosNaming-2.so.0.1.0 1bd29000-1bd2a000 rw-p 00004000 08:05 313877 /usr/lib/libORBitCosNaming-2.so.0.1.0 1bd2a000-1bd31000 r-xp 00000000 08:05 666631 /lib/libpopt.so.0.0.0 1bd31000-1bd32000 rw-p 00007000 08:05 666631 /lib/libpopt.so.0.0.0 1bd32000-1bd3a000 r-xp 00000000 08:05 314547 /usr/lib/libesd.so.0.2.39 1bd3a000-1bd3b000 rw-p 00008000 08:05 314547 /usr/lib/libesd.so.0.2.39 1bd3b000-1bd4f000 r-xp 00000000 08:05 314449 /usr/lib/libbonobo-activation.so.4.0.0 1bd4f000-1bd51000 rw-p 00014000 08:05 314449 /usr/lib/libbonobo-activation.so.4.0.0 1bd51000-1bd60000 r-xp 00000000 08:05 666542 /lib/libresolv-2.8.so 1bd60000-1bd61000 r--p 0000e000 08:05 666542 /lib/libresolv-2.8.so 1bd61000-1bd62000 rw-p 0000f000 08:05 666542 /lib/libresolv-2.8.so 1bd62000-1bd64000 rw-p 1bd62000 00:00 0 1bd64000-1bd74000 r-xp 00000000 08:05 314551 /usr/lib/libavahi-client.so.3.2.4 1bd74000-1bd75000 rw-p 0000f000 08:05 314551 /usr/lib/libavahi-client.so.3.2.4 1bd75000-1bdbe000 r-xp 00000000 08:05 309813 /usr/lib/libssl.so.0.9.8 1bdbe000-1bdc2000 rw-p 00048000 08:05 309813 /usr/lib/libssl.so.0.9.8 1bdc2000-1bde0000 r-xp 00000000 08:05 311881 /usr/lib/libdbus-glib-1.so.2.1.0 1bde0000-1bde1000 rw-p 0001d000 08:05 311881 /usr/lib/libdbus-glib-1.so.2.1.0 1bde1000-1be15000 r-xp 00000000 08:05 314011 /usr/lib/libgconf-2.so.4.1.5 1be15000-1be18000 rw-p 00033000 08:05 314011 /usr/lib/libgconf-2.so.4.1.5 1be18000-1beaa000 r-xp 00000000 08:05 314847 /usr/lib/libgnomeui-2.so.0.2400.0 1beaa000-1beae000 rw-p 00091000 08:05 314847 /usr/lib/libgnomeui-2.so.0.2400.0 1beae000-1d0fc000 r--p 00000000 08:05 345901 /usr/share/icons/hicolor/icon-theme.cache 1d0fc000-1d766000 r--p 00000000 08:05 360264 /usr/share/icons/gnome/icon-theme.cache 1d766000-1d769000 rwxp 1d766000 00:00 0 1d769000-1db67000 rwxp 1d769000 00:00 0 1db67000-1db6a000 rwxp 1db67000 00:00 0 1db6a000-1df68000 rwxp 1db6a000 00:00 0 1df68000-1df75000 r--s 000b5000 08:08 1848901 /home/oall/Development/ECLIPSES/eclipse332/eclipse/plugins/org.eclipse.jdt.debug_3.3.1.v20070719_r331/jdimodel.jar 1df75000-1df79000 r--s 0000d000 08:08 1848908 /home/oall/Development/ECLIPSES/eclipse332/eclipse/plugins/org.eclipse.jdt.debug_3.3.1.v20070719_r331/jdi.jar 1df79000-1df7c000 rwxp 1df79000 00:00 0 1df7c000-1e37a000 rwxp 1df7c000 00:00 0 1e37a000-1e37d000 ---p 1e37a000 00:00 0 1e37d000-1e77b000 rwxp 1e37d000 00:00 0 1e77b000-1e77e000 ---p 1e77b000 00:00 0 1e77e000-1eb7c000 rwxp 1e77e000 00:00 0 1eb7c000-1eb7f000 ---p 1eb7c000 00:00 0 1eb7f000-1ef7d000 rwxp 1eb7f000 00:00 0 1ef7d000-1ef88000 r-xp 00000000 08:05 314534 /usr/lib/libavahi-common.so.3.5.0 1ef88000-1ef89000 rw-p 0000a000 08:05 314534 /usr/lib/libavahi-common.so.3.5.0 1ef89000-1ef9e000 r-xp 00000000 08:05 314591 /usr/lib/libgnome-2.so.0.2400.1 1ef9e000-1ef9f000 rw-p 00014000 08:05 314591 /usr/lib/libgnome-2.so.0.2400.1 1ef9f000-1efff000 rw-s 00000000 00:08 2490379 /SYSV00000000 (deleted) 1efff000-1f000000 r--p 1efff000 00:00 0 1f000000-1f001000 r-xp 00000000 08:05 464293 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/librmi.so 1f001000-1f002000 rw-p 00000000 08:05 464293 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/librmi.so 1f002000-1f064000 r-xp 00000000 08:05 314580 /usr/lib/libgnomevfs-2.so.0.2400.0 1f064000-1f067000 rw-p 00061000 08:05 314580 /usr/lib/libgnomevfs-2.so.0.2400.0 1f067000-1f09f000 r-xp 00000000 08:05 315115 /usr/lib/libcroco-0.6.so.3.0.1 1f09f000-1f0a2000 rw-p 00037000 08:05 315115 /usr/lib/libcroco-0.6.so.3.0.1 1f0a2000-1f0d8000 r-xp 00000000 08:05 314867 /usr/lib/libgsf-1.so.114.0.9 1f0d8000-1f0db000 rw-p 00035000 08:05 314867 /usr/lib/libgsf-1.so.114.0.9 1f0db000-1f0dc000 rw-p 1f0db000 00:00 0 1f0dc000-1f112000 r-xp 00000000 08:05 315119 /usr/lib/librsvg-2.so.2.22.3 1f112000-1f113000 rw-p 00036000 08:05 315119 /usr/lib/librsvg-2.so.2.22.3 1f113000-1f117000 r-xp 00000000 08:05 666563 /lib/libattr.so.1.1.0 1f117000-1f118000 rw-p 00003000 08:05 666563 /lib/libattr.so.1.1.0 1f118000-1f131000 r--s 00000000 08:05 345174 /usr/share/mime/mime.cache 1f131000-1f170000 r-xp 00000000 08:05 666659 /lib/libdbus-1.so.3.4.0 1f170000-1f171000 r--p 0003f000 08:05 666659 /lib/libdbus-1.so.3.4.0 1f171000-1f172000 rw-p 00040000 08:05 666659 /lib/libdbus-1.so.3.4.0 1f172000-1f181000 r-xp 00000000 08:05 316829 /usr/lib/libgvfscommon.so.0.0.0 1f181000-1f182000 rw-p 0000e000 08:05 316829 /usr/lib/libgvfscommon.so.0.0.0 1f182000-1f183000 r--s 00001000 08:08 3257654 /home/oall/Development/ECLIPSES/eclipse332/eclipse/configuration/org.eclipse.osgi/bundles/68/1/.cp/cdt_linux.jar 1f183000-1f184000 r--s 00000000 08:05 464326 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/management-agent.jar 1f184000-1f185000 r--s 00000000 08:08 870212 /home/oall/.local/share/mime/mime.cache 1f185000-1f186000 r-xp 00000000 08:05 344803 /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so 1f186000-1f187000 rw-p 00000000 08:05 344803 /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so 1f187000-1f1a0000 r--s 00000000 08:05 345174 /usr/share/mime/mime.cache 1f1a0000-1f1bb000 r-xp 00000000 08:05 376987 /usr/lib/gio/modules/libgvfsdbus.so 1f1bb000-1f1bc000 rw-p 0001a000 08:05 376987 /usr/lib/gio/modules/libgvfsdbus.so 1f1bc000-1f1bf000 ---p 1f1bc000 00:00 0 1f1bf000-1f5bd000 rwxp 1f1bf000 00:00 0 1f5bd000-1f5c7000 r-xp 00000000 08:05 666532 /lib/libnss_files-2.8.so 1f5c7000-1f5c8000 r--p 00009000 08:05 666532 /lib/libnss_files-2.8.so 1f5c8000-1f5c9000 rw-p 0000a000 08:05 666532 /lib/libnss_files-2.8.so 1f5c9000-1f5cb000 r-xp 00000000 08:05 668999 /lib/libnss_mdns4_minimal.so.2 1f5cb000-1f5cc000 rw-p 00001000 08:05 668999 /lib/libnss_mdns4_minimal.so.2 1f5cc000-1f601000 r--s 00000000 08:05 187000 /var/db/nscd/services 1f601000-1f610000 r-xp 00000000 08:05 666520 /lib/libcrypt-2.8.so 1f610000-1f611000 r--p 0000e000 08:05 666520 /lib/libcrypt-2.8.so 1f611000-1f612000 rw-p 0000f000 08:05 666520 /lib/libcrypt-2.8.so 1f612000-1f64a000 rw-p 1f612000 00:00 0 ********************************************************************************* TOO LONG: please ask me a complete report: olivier.allard at prismtech.com -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gbenson at redhat.com Thu Oct 23 01:58:29 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 23 Oct 2008 08:58:29 +0000 Subject: changeset in /hg/icedtea6: 2008-10-23 Gary Benson changeset 77b03084ebd0 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=77b03084ebd0 description: 2008-10-23 Gary Benson PR icedtea/204: * ports/hotspot/src/share/vm/shark/sharkState.cpp (SharkPHIState::initialize): Fix return address initialization. * ports/hotspot/src/share/vm/shark/sharkBlock.hpp (SharkBlock::jsr_ret_bci): Removed now-unnecessary code. * patches/icedtea-shark.patch (openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp): Likewise. diffstat: 4 files changed, 14 insertions(+), 43 deletions(-) ChangeLog | 10 ++++++ patches/icedtea-shark.patch | 35 ----------------------- ports/hotspot/src/share/vm/shark/sharkBlock.hpp | 6 --- ports/hotspot/src/share/vm/shark/sharkState.cpp | 6 ++- diffs (101 lines): diff -r 5d129b358a4f -r 77b03084ebd0 ChangeLog --- a/ChangeLog Wed Oct 22 19:37:18 2008 +0200 +++ b/ChangeLog Thu Oct 23 04:58:23 2008 -0400 @@ -1,3 +1,13 @@ 2008-10-22 Matthias Klose + + PR icedtea/204: + * ports/hotspot/src/share/vm/shark/sharkState.cpp + (SharkPHIState::initialize): Fix return address initialization. + * ports/hotspot/src/share/vm/shark/sharkBlock.hpp + (SharkBlock::jsr_ret_bci): Removed now-unnecessary code. + * patches/icedtea-shark.patch + (openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp): Likewise. + 2008-10-22 Matthias Klose * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID diff -r 5d129b358a4f -r 77b03084ebd0 patches/icedtea-shark.patch --- a/patches/icedtea-shark.patch Wed Oct 22 19:37:18 2008 +0200 +++ b/patches/icedtea-shark.patch Thu Oct 23 04:58:23 2008 -0400 @@ -303,41 +303,6 @@ diff -r ef3bb05d21d5 openjdk/hotspot/src } -diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp ---- openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp Mon Sep 29 08:47:58 2008 +0100 -+++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp Mon Sep 29 08:51:58 2008 +0100 -@@ -94,9 +94,17 @@ public: - private: - GrowableArray* _set; - -+#ifdef SHARK -+ // XXX This can be removed if it turns out we have to deal -+ // with T_ADDRESS values the same as everything else. -+ public: -+#endif // SHARK - JsrRecord* record_at(int i) { - return _set->at(i); - } -+#ifdef SHARK -+ private: -+#endif // SHARK - - // Insert the given JsrRecord into the JsrSet, maintaining the order - // of the set and replacing any element with the same entry address. -@@ -515,6 +523,13 @@ public: - ciType* local_type_at(int i) const { return _state->local_type_at(i); } - ciType* stack_type_at(int i) const { return _state->stack_type_at(i); } - -+ // access to the JSRs -+#ifdef SHARK -+ // XXX This can be removed if it turns out we have to deal -+ // with T_ADDRESS values the same as everything else. -+ JsrSet* jsrset() const { return _jsrs; } -+#endif // SHARK -+ - // Get the successors for this Block. - GrowableArray* successors(ciBytecodeStream* str, - StateVector* state, diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp --- openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp Mon Sep 29 08:47:58 2008 +0100 +++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp Mon Sep 29 08:54:36 2008 +0100 diff -r 5d129b358a4f -r 77b03084ebd0 ports/hotspot/src/share/vm/shark/sharkBlock.hpp --- a/ports/hotspot/src/share/vm/shark/sharkBlock.hpp Wed Oct 22 19:37:18 2008 +0200 +++ b/ports/hotspot/src/share/vm/shark/sharkBlock.hpp Thu Oct 23 04:58:23 2008 -0400 @@ -128,12 +128,6 @@ class SharkBlock : public ResourceObj { { return function()->block(ciblock()->successors()->at(index)->pre_order()); } - int jsr_ret_bci() const - { - int jsr_level = ciblock()->jsrset()->size(); - assert(jsr_level > 0, "should be"); - return ciblock()->jsrset()->record_at(jsr_level - 1)->return_address(); - } SharkBlock* bci_successor(int bci) const; // Bytecode stream diff -r 5d129b358a4f -r 77b03084ebd0 ports/hotspot/src/share/vm/shark/sharkState.cpp --- a/ports/hotspot/src/share/vm/shark/sharkState.cpp Wed Oct 22 19:37:18 2008 +0200 +++ b/ports/hotspot/src/share/vm/shark/sharkState.cpp Thu Oct 23 04:58:23 2008 -0400 @@ -129,7 +129,8 @@ void SharkPHIState::initialize() break; case T_ADDRESS: - value = SharkValue::create_returnAddress(block()->jsr_ret_bci()); + value = SharkValue::create_returnAddress( + type->as_return_address()->bci()); break; case ciTypeFlow::StateVector::T_BOTTOM: @@ -167,7 +168,8 @@ void SharkPHIState::initialize() break; case T_ADDRESS: - value = SharkValue::create_returnAddress(block()->jsr_ret_bci()); + value = SharkValue::create_returnAddress( + type->as_return_address()->bci()); break; case ciTypeFlow::StateVector::T_LONG2: From mark at klomp.org Thu Oct 23 03:17:30 2008 From: mark at klomp.org (Mark Wielaard) Date: Thu, 23 Oct 2008 10:17:30 +0000 Subject: changeset in /hg/icedtea6: * Makefile.am (stamps/patch.stamp): M... Message-ID: changeset 0fafece1a73c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=0fafece1a73c description: * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when ENABLE_PLUGIN is true. diffstat: 2 files changed, 9 insertions(+), 3 deletions(-) ChangeLog | 11 ++++++++--- Makefile.am | 1 + diffs (36 lines): diff -r 77b03084ebd0 -r 0fafece1a73c ChangeLog --- a/ChangeLog Thu Oct 23 04:58:23 2008 -0400 +++ b/ChangeLog Thu Oct 23 12:17:21 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-23 Gary Benson + + * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when + ENABLE_PLUGIN is true. + 2008-10-23 Gary Benson PR icedtea/204: @@ -10,9 +15,9 @@ 2008-10-23 Gary Benson - * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID - instead. - * configure.ac: Make DIST_ID more precise. Some implementations of the + * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID + instead. + * configure.ac: Make DIST_ID more precise. Some implementations of the lsb_release command quote the output; ignore it. 2008-10-22 Omair Majid diff -r 77b03084ebd0 -r 0fafece1a73c Makefile.am --- a/Makefile.am Thu Oct 23 04:58:23 2008 -0400 +++ b/Makefile.am Thu Oct 23 12:17:21 2008 +0200 @@ -648,6 +648,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta if ENABLE_PLUGIN cp -a $(abs_top_srcdir)/plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + mkdir -p rt cp -a $(abs_top_srcdir)/plugin/icedtea/netscape rt/ endif From mark at klomp.org Thu Oct 23 04:38:38 2008 From: mark at klomp.org (Mark Wielaard) Date: Thu, 23 Oct 2008 13:38:38 +0200 Subject: changeset in /hg/icedtea6: * Makefile.am (EXTRA_DIST): Always in... In-Reply-To: <17c6771e0810200247v669d8b77w30895db7b038eff5@mail.gmail.com> References: <17c6771e0810160123s7f8afa2dwddb97c17e7cd44f@mail.gmail.com> <1224258836.4461.12.camel@hermans.wildebeest.org> <17c6771e0810200247v669d8b77w30895db7b038eff5@mail.gmail.com> Message-ID: <1224761919.3572.24.camel@dijkstra.wildebeest.org> Hi Andrew, On Mon, 2008-10-20 at 10:47 +0100, Andrew John Hughes wrote: > >> Is there going to be another release? The current tarball is unbuildable for > >> an ecj build: > >> > >> Checking patches/icedtea-ecj.patch > >> /bin/sh: line 8: > >> /var/tmp/portage/dev-java/icedtea6-1.3-r1/work/icedtea6-1.3/patches/icedtea-ecj.patch: > >> No such file or directory > >> ERROR patch patches/icedtea-ecj.patch FAILED! > > > > O, that is bad. This wasn't exactly what the patch was for. It was to > > make sure the shark specific patches (and any conditionally patch lists) > > would all be included. I see why this happened. ICEDTEA_ECJ_PATCH was > > renamed to ICEDTEA_ECJ_PATCHES except in EXTRA_DIST. My patch would also > > help with that. > > Ok, the name change is my fault, I thought I'd changed it there. > Anyway, the more general > fix you've applied is the correct one, otherwise the contents of the > release tarball depend on how > things are configured when make dist is run. So Shark is presumably > missing from the current one > too. I count 77 patches in the tarball and 87 in hg. Yes, that was why I made the patch, I saw the missing patches and wanted to make sure they were always included. > > Creating a new release seems like a good idea, to make sure all files > > are included. > > > I hope this is what Lillian had planned when she changed the tree to 1.3.1. I don't know of any plans for an quick fixup release, but it sounds like a good idea to me. It could also include a couple (all) of the other fixes since 1.3 and making the IcedTeaPlugin the default. > > I haven't tried if make distcheck works. That is always a good thing to > > be sure the dist tar ball is complete. But sometimes hard to get working > > for the first time. > > I've had make distcheck run to the point of doing the tests before, so > this wouldn't > be the first run. Currently it stumbles over the -bootclasspath > issue, at least for me. > I know there are bugs in the pulseaudio config (fixed in icedtea, I'll > backport) that prevent > out-of-dir builds. A ./autogen.sh && ./configure && make distcheck now works up to the make check stage (still running). So that part is good to go now. > Ideally make distcheck should be run with most > things enabled, but I don't > have NetBeans to check VisualVM (and I still wonder why that is in > this tree at all). I haven't tried having anything enabled besides the default configure yet. Cheers, Mark From mark at klomp.org Thu Oct 23 04:40:55 2008 From: mark at klomp.org (Mark Wielaard) Date: Thu, 23 Oct 2008 13:40:55 +0200 Subject: DLJ 2.0 Re: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <48FE4C2C.6020005@sun.com> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> <48F8D4E1.4000604@sun.com> <1224616953.3700.28.camel@hermans.wildebeest.org> <48FE4C2C.6020005@sun.com> Message-ID: <1224762055.3572.27.camel@dijkstra.wildebeest.org> Hi David, On Tue, 2008-10-21 at 14:39 -0700, David Herron wrote: > The part which would be easy to reuse is packaging scripts. > > While the bundles themselves are under a non-free not-quite-icky > closed license we chose the BSD license for packaging scripts inside > the jdk-distros project. This means jdk-distros could be used for > shared development of packaging or other meta scripts some of whom I > suppose could be applied to openjdk builds. That could be done today > no changes required. Could you post (a pointer to) these free packaging scripts? We can try to integrate them as is then if they are (modern) BSD licensed since that is GPL-compatible. Thanks, Mark From David.Herron at Sun.COM Thu Oct 23 07:12:57 2008 From: David.Herron at Sun.COM (David Herron) Date: Thu, 23 Oct 2008 07:12:57 -0700 Subject: DLJ 2.0 Re: [Fwd: DLJ 6u10 bundles have been posted on jdk-distros.dev.java.net] In-Reply-To: <1224762055.3572.27.camel@dijkstra.wildebeest.org> References: <48F78082.6010905@sun.com> <17c6771e0810161101p4b5416cdse3a59c21b29fdd16@mail.gmail.com> <48F7A8EA.4090407@sun.com> <17c6771e0810161437m2130efcdh29ac288a0782d736@mail.gmail.com> <48F7BCFE.1020705@sun.com> <1224259954.4461.29.camel@hermans.wildebeest.org> <48F8D4E1.4000604@sun.com> <1224616953.3700.28.camel@hermans.wildebeest.org> <48FE4C2C.6020005@sun.com> <1224762055.3572.27.camel@dijkstra.wildebeest.org> Message-ID: <49008669.8080304@sun.com> Mark Wielaard wrote: > Hi David, > > On Tue, 2008-10-21 at 14:39 -0700, David Herron wrote: > >> The part which would be easy to reuse is packaging scripts. >> >> While the bundles themselves are under a non-free not-quite-icky >> closed license we chose the BSD license for packaging scripts inside >> the jdk-distros project. This means jdk-distros could be used for >> shared development of packaging or other meta scripts some of whom I >> suppose could be applied to openjdk builds. That could be done today >> no changes required. >> > > Could you post (a pointer to) these free packaging scripts? We can try > to integrate them as is then if they are (modern) BSD licensed since > that is GPL-compatible. > > Thanks, > > Mark > > https://jdk-distros.dev.java.net/source/browse/jdk-distros/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081023/6679e0ca/attachment.html From ahughes at redhat.com Thu Oct 23 01:45:02 2008 From: ahughes at redhat.com (Andrew John Hughes) Date: Thu, 23 Oct 2008 08:45:02 +0000 Subject: changeset in /hg/icedtea: 2008-10-22 Andrew John Hughes changeset 1db6ec885d9f in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=1db6ec885d9f description: 2008-10-22 Andrew John Hughes * patches/icedtea-constructor-properties.patch: Removed. * Makefile.am: Bump to b37, pass JAR_KNOWS_J_OPTIONS to ecj make. * acinclude.m4: Check whether or not jar supports -J options at the end. * patches/icedtea-ecj-jopt.patch: Only add -J options to jar in JDK and CORBA when supported. diffstat: 5 files changed, 54 insertions(+), 20 deletions(-) ChangeLog | 11 +++++++++++ Makefile.am | 11 ++++++----- acinclude.m4 | 12 +++++++++++- patches/icedtea-constructor-properties.patch | 14 -------------- patches/icedtea-ecj-jopt.patch | 26 ++++++++++++++++++++++++++ diffs (130 lines): diff -r 2c18c20ea81c -r 1db6ec885d9f ChangeLog --- a/ChangeLog Sun Oct 19 05:20:39 2008 +0100 +++ b/ChangeLog Thu Oct 23 09:43:20 2008 +0100 @@ -1,3 +1,14 @@ 2008-10-19 Andrew John Hughes + + * patches/icedtea-constructor-properties.patch: + Removed. + * Makefile.am: Bump to b37, pass JAR_KNOWS_J_OPTIONS + to ecj make. + * acinclude.m4: Check whether or not jar supports -J + options at the end. + * patches/icedtea-ecj-jopt.patch: Only add -J options + to jar in JDK and CORBA when supported. + 2008-10-19 Andrew John Hughes * Makefile.am: diff -r 2c18c20ea81c -r 1db6ec885d9f Makefile.am --- a/Makefile.am Sun Oct 19 05:20:39 2008 +0100 +++ b/Makefile.am Thu Oct 23 09:43:20 2008 +0100 @@ -1,6 +1,6 @@ OPENJDK_DATE = 25_sep_2008 -OPENJDK_DATE = 25_sep_2008 -OPENJDK_MD5SUM = 6432f04891bc0e61142a73bb8500314c -OPENJDK_VERSION = b36 +OPENJDK_DATE = 09_oct_2008 +OPENJDK_MD5SUM = 979a7f60de588f1f416657d41ad5e63c +OPENJDK_VERSION = b37 CACAO_VERSION = 0.99.3 CACAO_MD5SUM = 80de3ad344c1a20c086ec5f1390bd1b8 @@ -247,6 +247,7 @@ ICEDTEA_ENV_ECJ = \ "JAVAC=" \ "RHINO_JAR=$(RHINO_JAR)" \ "JAR_KNOWS_ATFILE=$(JAR_KNOWS_ATFILE)" \ + "JAR_KNOWS_J_OPTIONS=$(JAR_KNOWS_J_OPTIONS)" \ "JAR_ACCEPTS_STDIN_LIST=$(JAR_ACCEPTS_STDIN_LIST)" if WITH_CACAO @@ -567,7 +568,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-shark-build.patch \ patches/icedtea-toolkit.patch \ patches/icedtea-security-updates.patch \ - patches/icedtea-constructor-properties.patch \ patches/icedtea-jsoundhs.patch \ patches/icedtea-jdk-docs-target.patch \ patches/icedtea-mbeanintrospector.patch \ @@ -871,7 +871,8 @@ stamps/ports-ecj.stamp: stamps/clone-ecj # Patch OpenJDK for plug replacements and ecj. ICEDTEA_ECJ_PATCHES = patches/icedtea-ecj.patch \ - patches/icedtea-ecj-spp.patch + patches/icedtea-ecj-spp.patch \ + patches/icedtea-ecj-jopt.patch stamps/patch-ecj.stamp: stamps/clone-ecj.stamp mkdir -p stamps; \ diff -r 2c18c20ea81c -r 1db6ec885d9f acinclude.m4 --- a/acinclude.m4 Sun Oct 19 05:20:39 2008 +0100 +++ b/acinclude.m4 Thu Oct 23 09:43:20 2008 +0100 @@ -349,10 +349,20 @@ EOF JAR_ACCEPTS_STDIN_LIST= AC_MSG_RESULT(no) fi - rm -f _config.txt _config.list _config.jar + rm -f _config.list _config.jar + AC_MSG_CHECKING([whether jar supports -J options at the end]) + if $JAR cf _config.jar _config.txt -J-Xmx896m 2>/dev/null; then + JAR_KNOWS_J_OPTIONS=1 + AC_MSG_RESULT(yes) + else + JAR_KNOWS_J_OPTIONS= + AC_MSG_RESULT(no) + fi + rm -f _config.txt _config.jar AC_SUBST(JAR) AC_SUBST(JAR_KNOWS_ATFILE) AC_SUBST(JAR_ACCEPTS_STDIN_LIST) + AC_SUBST(JAR_KNOWS_J_OPTIONS) ]) AC_DEFUN([FIND_RMIC], diff -r 2c18c20ea81c -r 1db6ec885d9f patches/icedtea-constructor-properties.patch --- a/patches/icedtea-constructor-properties.patch Sun Oct 19 05:20:39 2008 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ -diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/jmx/mbeanserver/DefaultMXBeanMappingFactory.java openjdk/jdk/src/share/classes/com/sun/jmx/mbeanserver/DefaultMXBeanMappingFactory.java ---- openjdk.orig/jdk/src/share/classes/com/sun/jmx/mbeanserver/DefaultMXBeanMappingFactory.java 2008-07-13 01:25:15.000000000 +0100 -+++ openjdk/jdk/src/share/classes/com/sun/jmx/mbeanserver/DefaultMXBeanMappingFactory.java 2008-07-13 01:28:31.000000000 +0100 -@@ -1207,8 +1207,8 @@ - // so we can test unambiguity. - Set getterIndexSets = newSet(); - for (Constructor constr : annotatedConstrList) { -- String[] propertyNames = -- constr.getAnnotation(propertyNamesClass).value(); -+ String[] propertyNames = ((ConstructorProperties) -+ constr.getAnnotation(propertyNamesClass)).value(); - - Type[] paramTypes = constr.getGenericParameterTypes(); - if (paramTypes.length != propertyNames.length) { diff -r 2c18c20ea81c -r 1db6ec885d9f patches/icedtea-ecj-jopt.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-ecj-jopt.patch Thu Oct 23 09:43:20 2008 +0100 @@ -0,0 +1,26 @@ +diff -Nru openjdk-ecj.orig/corba/make/common/shared/Defs-java.gmk openjdk-ecj/corba/make/common/shared/Defs-java.gmk +--- openjdk-ecj.orig/corba/make/common/shared/Defs-java.gmk 2008-10-22 18:45:43.000000000 +0100 ++++ openjdk-ecj/corba/make/common/shared/Defs-java.gmk 2008-10-22 18:49:29.000000000 +0100 +@@ -75,7 +75,9 @@ + JAVAC_JVM_FLAGS += $(JAVA_TOOLS_FLAGS:%=-J%) + + # The jar -J options are special, must be added at the end of the command line ++ifneq (,$(JAR_KNOWS_J_OPTIONS)) + JAR_JFLAGS = $(JAVA_TOOLS_FLAGS:%=-J%) ++endif + + # JAVA_TOOLS_DIR is the default location to find Java tools to run, if + # langtools is not available. +diff -Nru openjdk-ecj.orig/jdk/make/common/shared/Defs-java.gmk openjdk-ecj/jdk/make/common/shared/Defs-java.gmk +--- openjdk-ecj.orig/jdk/make/common/shared/Defs-java.gmk 2008-10-22 19:14:30.000000000 +0100 ++++ openjdk-ecj/jdk/make/common/shared/Defs-java.gmk 2008-10-22 19:15:00.000000000 +0100 +@@ -82,7 +82,9 @@ + JAVAC_JVM_FLAGS += $(JAVA_TOOLS_FLAGS:%=-J%) + + # The jar -J options are special, must be added at the end of the command line ++ifneq (,$(JAR_KNOWS_J_OPTIONS)) + JAR_JFLAGS = $(JAVA_TOOLS_FLAGS:%=-J%) ++endif + + # JAVA_TOOLS_DIR is the default location to find Java tools to run, if + # langtools is not available. From gbenson at redhat.com Thu Oct 23 07:31:11 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 23 Oct 2008 14:31:11 +0000 Subject: changeset in /hg/icedtea6: 2008-10-23 Gary Benson changeset 6ce8e4006dd4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=6ce8e4006dd4 description: 2008-10-23 Gary Benson PR icedtea/229: * ports/hotspot/src/share/vm/shark/sharkBlock.cpp (SharkBlock::parse): Parse goto_w correctly. diffstat: 2 files changed, 11 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 6 +++++- diffs (36 lines): diff -r 0fafece1a73c -r 6ce8e4006dd4 ChangeLog --- a/ChangeLog Thu Oct 23 12:17:21 2008 +0200 +++ b/ChangeLog Thu Oct 23 10:31:07 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-23 Mark Wielaard + + PR icedtea/229: + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp + (SharkBlock::parse): Parse goto_w correctly. + 2008-10-23 Mark Wielaard * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when diff -r 0fafece1a73c -r 6ce8e4006dd4 ports/hotspot/src/share/vm/shark/sharkBlock.cpp --- a/ports/hotspot/src/share/vm/shark/sharkBlock.cpp Thu Oct 23 12:17:21 2008 +0200 +++ b/ports/hotspot/src/share/vm/shark/sharkBlock.cpp Thu Oct 23 10:31:07 2008 -0400 @@ -140,7 +140,6 @@ void SharkBlock::parse() switch (bc()) { case Bytecodes::_goto: - case Bytecodes::_goto_w: case Bytecodes::_ifnull: case Bytecodes::_ifnonnull: case Bytecodes::_if_acmpeq: @@ -158,6 +157,11 @@ void SharkBlock::parse() case Bytecodes::_if_icmpgt: case Bytecodes::_if_icmpge: if (iter()->get_dest() <= bci()) + add_safepoint(); + break; + + case Bytecodes::_goto_w: + if (iter()->get_far_dest() <= bci()) add_safepoint(); break; From aph at redhat.com Thu Oct 23 08:45:01 2008 From: aph at redhat.com (Andrew Haley) Date: Thu, 23 Oct 2008 16:45:01 +0100 Subject: JCK Distilled Message-ID: <49009BFD.9030101@redhat.com> I have posted the JCK Distilled document at http://icedtea.classpath.org/wiki/JCKDistilled If you're going to run the JCK on GNU/Linux you will find this page very helpful; if you're not, it'll be meaningless. :-) Please let me know if you use this, and if you find any bugs in the page. Andrew. From bugzilla-daemon at icedtea.classpath.org Thu Oct 23 08:47:33 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 15:47:33 +0000 Subject: [Bug 199] Crash during a build of xerces-j2 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=199 mvyskocil at suse.cz changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |WONTFIX ------- Comment #3 from mvyskocil at suse.cz 2008-10-23 15:47 ------- Well, I was unable to reproduce this using newer version of openjdk/icedtea. Closing this as WONTFIX. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From langel at redhat.com Thu Oct 23 09:17:30 2008 From: langel at redhat.com (Lillian Angel) Date: Thu, 23 Oct 2008 16:17:30 +0000 Subject: changeset in /hg/icedtea6: 2008-10-23 Lillian Angel changeset 19ff33216eaf in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=19ff33216eaf description: 2008-10-23 Lillian Angel PR redhat/468193: * patches/icedtea-fonts.patch: Updated for filename change. diffstat: 2 files changed, 7 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ patches/icedtea-fonts.patch | 4 ++-- diffs (26 lines): diff -r 6ce8e4006dd4 -r 19ff33216eaf ChangeLog --- a/ChangeLog Thu Oct 23 10:31:07 2008 -0400 +++ b/ChangeLog Thu Oct 23 12:17:26 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-23 Gary Benson + + PR redhat/468193: + * patches/icedtea-fonts.patch: Updated for filename change. + 2008-10-23 Gary Benson PR icedtea/229: diff -r 6ce8e4006dd4 -r 19ff33216eaf patches/icedtea-fonts.patch --- a/patches/icedtea-fonts.patch Thu Oct 23 10:31:07 2008 -0400 +++ b/patches/icedtea-fonts.patch Thu Oct 23 12:17:26 2008 -0400 @@ -383,8 +383,8 @@ + +filename.Sazanami_Gothic=/usr/share/fonts/sazanami-fonts-gothic/sazanami-gothic.ttf +filename.Sazanami_Mincho=/usr/share/fonts/sazanami-fonts-mincho/sazanami-mincho.ttf -+filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/cjkunifonts-uming/uming.ttf -+filename.AR_PL_ZenKai_Uni=/usr/share/fonts/cjkunifonts-ukai/ukai.ttf ++filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/cjkunifonts-uming/uming.ttc ++filename.AR_PL_ZenKai_Uni=/usr/share/fonts/cjkunifonts-ukai/ukai.ttc +filename.Baekmuk_Gulim=/usr/share/fonts/baekmuk-ttf-gulim/gulim.ttf +filename.Baekmuk_Batang=/usr/share/fonts/baekmuk-ttf-batang/batang.ttf + From linuxhippy at gmail.com Thu Oct 23 10:15:43 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Thu, 23 Oct 2008 19:15:43 +0200 Subject: Howto build deployable OpenJDK packages? Message-ID: <194f62550810231015j146c6233r4de583a7244c7bfe@mail.gmail.com> Hi, when compiling OpenJDK all I have found is the linux-i586 file which is fine for me, but not really suited for deployment. Is it possible to generate some dir-hirarchy used by the proprietary builds, somthing like openjdk1.6.0/bin jre jre/lib/i386 ...? Thank you in advance, Clemens From gnu_andrew at member.fsf.org Thu Oct 23 10:15:49 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 23 Oct 2008 18:15:49 +0100 Subject: forward-port IMPORT_BINARY_PLUGS to OpenJDK7 In-Reply-To: <4900A981.7000809@sun.com> References: <1224601541.27098.8.camel@cthalinger.lan> <17c6771e0810220343i45ca18ubb2663db4bd31cd@mail.gmail.com> <1224672741.30850.12.camel@cthalinger.lan> <17c6771e0810220354k233b831t7212534e1515566a@mail.gmail.com> <1224673380.30850.19.camel@cthalinger.lan> <17c6771e0810220408g4d5c730ewb55eea4642cad85f@mail.gmail.com> <1224673855.30850.21.camel@cthalinger.lan> <17c6771e0810220416j77139573v2f1f0efacbb9b142@mail.gmail.com> <1224766213.3170.14.camel@cthalinger.lan> <4900A981.7000809@sun.com> Message-ID: <17c6771e0810231015i42a3bff7se35774b77f0db861@mail.gmail.com> 2008/10/23 Kelly O'Hair : > I'm very confused. > > Where did this rt-closed.jar file come from? All the jdk7 copies I have > do not have any jdi class files in them (jdi is all open GPL sources). > The rt-closed.jar files I have all contain only 75 class files > (roughly half jmx/snmp and half media/sound). > > The openjdk6 rt-closed.jar file only has 25 jmx/snmp class files in it. > > Could this be a very very OLD rt-closed.jar file? Or perhaps someone > copied some rt.jar to rt-closed.jar? > > Furthermore, tools.jar does not normally live in the jre (jre/lib/tools.jar) > but above that at lib/tools.jar. > > There is something very strange going on here. > > -kto > > Christian Thalinger wrote: >> >> On Wed, 2008-10-22 at 12:16 +0100, Andrew John Hughes wrote: >>> >>> Ok, then it sounds like something is either not being built into the jars >>> in bootstrap/jdk1.6.0 or they are being missing off the classpath used >>> by HotSpot. IIRC, hotspot-tools.jar should include com.sun.tools.jdi.*. >> >> The class is not in tools.jar but in rt-closed.jar: >> >> $ unzip -l bootstrap/jdk1.7.0/jre/lib/tools.jar | grep jdi.Linked >> $ unzip -l bootstrap/jdk1.7.0/jre/lib/rt-closed.jar | grep jdi.Linked >> 9421 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap.class >> 2259 10-18-08 17:16 >> com/sun/tools/jdi/LinkedHashMap$HashIterator.class >> 1301 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$1.class >> 1769 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$Entry.class >> 1176 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$2.class >> 2415 10-18-08 17:16 com/sun/tools/jdi/LinkedHashMap$3.class >> $ >> >> The command line compiling the HotSpot classes is: >> >> >> /export/home/twisti/projects/openjdk/icedtea6-bootstrap/build-hotspot-m64/bootstrap/jdk1.6.0/bin/javac >> -source 1.4 -classpath >> /export/home/twisti/projects/openjdk/icedtea6-bootstrap/build-hotspot-m64/bootstrap/jdk1.6.0/lib/tools.jar >> -g -d ../generated/saclasses >> >> and bootstrap/jdk1.6.0/lib/tools.jar is linked to: >> >> $ ls -l bootstrap/jdk1.6.0/lib/ >> total 3 >> drwxr-xr-x 2 twisti staff 5 Oct 18 17:08 endorsed/ >> lrwxrwxrwx 1 twisti staff 110 Oct 18 18:49 tools.jar -> >> /export/home/twisti/projects/openjdk/icedtea6-bootstrap/build-hotspot-m64/bootstrap/jdk1.7.0/jre/lib/tools.jar >> >> In my completed 32-bit IcedTea build, tools.jar contains the JDI >> classes: >> >> $ unzip -l openjdk/control/build/solaris-i586/lib/tools.jar | grep >> jdi.Linked >> 1177 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$2.class >> 2389 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$3.class >> 1763 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$Entry.class >> 9571 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap.class >> 2244 10-12-08 14:45 >> com/sun/tools/jdi/LinkedHashMap$HashIterator.class >> 1304 10-12-08 14:45 com/sun/tools/jdi/LinkedHashMap$1.class >> >> So it seems IcedTea should add these classes to the tools.jar. >> >> - Christian >> > This isn't Sun's rt-closed.jar, which is proprietary. This is a faked version which is part of the IcedTea build. However, on both IcedTea6 and IcedTea7 this only includes SNMP and sound stubs (and the latter should probably be removed). On IcedTea6, it also includes JNLP. We should look at enabling IMPORT_BINARY_PLUGS=false on IcedTea so these stubs are not needed. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From gnu_andrew at member.fsf.org Thu Oct 23 10:35:41 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Thu, 23 Oct 2008 18:35:41 +0100 Subject: Howto build deployable OpenJDK packages? In-Reply-To: <194f62550810231015j146c6233r4de583a7244c7bfe@mail.gmail.com> References: <194f62550810231015j146c6233r4de583a7244c7bfe@mail.gmail.com> Message-ID: <17c6771e0810231035p35fd05f7o4b2503660e84ef46@mail.gmail.com> 2008/10/23 Clemens Eisserer : > Hi, > > when compiling OpenJDK all I have found is the linux-i586 file which > is fine for me, but not really suited for deployment. > Is it possible to generate some dir-hirarchy used by the proprietary > builds, somthing like openjdk1.6.0/bin jre jre/lib/i386 ...? > > Thank you in advance, Clemens > You should have both j2sdk and j2re images under control/build/linux-i586 (for OpenJDK6) and build/linux-i586 (for OpenJDK7). -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From langel at redhat.com Thu Oct 23 12:27:13 2008 From: langel at redhat.com (Lillian Angel) Date: Thu, 23 Oct 2008 15:27:13 -0400 Subject: Howto build deployable OpenJDK packages? In-Reply-To: <194f62550810231015j146c6233r4de583a7244c7bfe@mail.gmail.com> References: <194f62550810231015j146c6233r4de583a7244c7bfe@mail.gmail.com> Message-ID: <4900D011.9060100@redhat.com> Clemens Eisserer wrote: > Hi, > > when compiling OpenJDK all I have found is the linux-i586 file which > is fine for me, but not really suited for deployment. > Is it possible to generate some dir-hirarchy used by the proprietary > builds, somthing like openjdk1.6.0/bin jre jre/lib/i386 ...? > Look in openjdk/control/build/linux-i586/j2sdk-image Lillian From linuxhippy at gmail.com Thu Oct 23 12:40:47 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Thu, 23 Oct 2008 21:40:47 +0200 Subject: Howto build deployable OpenJDK packages? In-Reply-To: <4900D011.9060100@redhat.com> References: <194f62550810231015j146c6233r4de583a7244c7bfe@mail.gmail.com> <4900D011.9060100@redhat.com> Message-ID: <194f62550810231240j66fbdd19p9dba9a6b8f9d4034@mail.gmail.com> Wow, somehow I completly missed that. Thanks for your help :) - Clemens From bugzilla-daemon at icedtea.classpath.org Thu Oct 23 14:06:51 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Oct 2008 21:06:51 +0000 Subject: [Bug 227] swing TextLayout.getBounds() returns shifted bounds Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=227 ------- Comment #4 from martinrb at google.com 2008-10-23 21:06 ------- (In reply to comment #0) I'm no 2-d expert, but these appear to be the same bug: swing TextLayout.getBounds() returns shifted bounds http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=227 OpenJDK: vertical text metrics may be significanly different from those returned by Sun JDK http://bugs.sun.com/view_bug.do?bug_id=6761856 See also thread on this on 2d-dev at openjdk.java.net -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Thu Oct 23 15:07:55 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 23 Oct 2008 22:07:55 +0000 Subject: changeset in /hg/icedtea6: On second thought, do exit on netx fa... Message-ID: changeset 1e020b5801bb in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1e020b5801bb description: On second thought, do exit on netx failure. JVM respawning code is far more robust than the initialization timeout code, which may put the browser in an unknown state. Remove classpath when initialiazing the jvm -- it is not needed. diffstat: 3 files changed, 45 insertions(+), 31 deletions(-) ChangeLog | 6 - IcedTeaPlugin.cc | 68 ++++++++++++--------- plugin/icedtea/sun/applet/PluginAppletViewer.java | 2 diffs (177 lines): diff -r 93f0928ec0ed -r 1e020b5801bb ChangeLog --- a/ChangeLog Thu Oct 23 12:27:23 2008 -0400 +++ b/ChangeLog Thu Oct 23 18:07:45 2008 -0400 @@ -1,8 +1,8 @@ 2008-10-23 Deepak Bhole - * IcedTeaPlugin.cc: Supply classpath to rt.jar when starting java. - * plugin/icedtea/sun/applet/PluginAppletViewer.java: Tell Netx to exit VM - on error. + * IcedTeaPlugin.cc: Implement proper timeout action. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Supply new + exitOnFailure argument to Netx. * rt/net/sourceforge/jnlp/Launcher.java: Implement an option for not exiting VM on error. * rt/net/sourceforge/jnlp/NetxPanel.java: Same. diff -r 93f0928ec0ed -r 1e020b5801bb IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 23 12:27:23 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 23 18:07:45 2008 -0400 @@ -192,6 +192,12 @@ inline suseconds_t get_time_in_ms() gettimeofday(&tv, &tz); return tv.tv_usec; +} + +inline long get_time_in_s() +{ + time_t t; + return time(&t); } // __func__ is a variable, not a string literal, so it cannot be @@ -315,7 +321,6 @@ static GError* channel_error = NULL; // Fully-qualified appletviewer executable. gchar* data_directory = NULL; static char* appletviewer_executable = NULL; -static char* appletviewer_classpath = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -2391,14 +2396,14 @@ IcedTeaPluginInstance::SetWindow (nsPlug PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - suseconds_t startTime = get_time_in_ms(); + long startTime = get_time_in_s(); PRBool timedOut = PR_FALSE; while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) { PROCESS_PENDING_EVENTS; - if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + if ((get_time_in_s() - startTime) > TIMEOUT) { timedOut = PR_TRUE; break; @@ -2407,7 +2412,11 @@ IcedTeaPluginInstance::SetWindow (nsPlug // we timed out if (timedOut == PR_TRUE) - return NS_ERROR_FAILURE; + { + PLUGIN_DEBUG_1ARG ("Initialization for instance %d has timed out. Marking it void\n", instance_identifier); + this->fatalErrorOccurred = PR_TRUE; + return NS_ERROR_FAILURE; + } // did we bail because there is no jvm? if (this->fatalErrorOccurred == PR_TRUE) @@ -2549,12 +2558,28 @@ IcedTeaPluginInstance::GetJavaObject (jo if (initialized == PR_FALSE) { - PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - - while (initialized == PR_FALSE) { - PROCESS_PENDING_EVENTS; -// printf("waiting for java object\n"); + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::GetJavaObject: Instance %p waiting for initialization...\n", this); + + long startTime = get_time_in_s(); + PRBool timedOut = PR_FALSE; + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) + { + PROCESS_PENDING_EVENTS; + + if ((get_time_in_s() - startTime) > TIMEOUT) + { + timedOut = PR_TRUE; + break; + } } + + // we timed out + if (timedOut == PR_TRUE) + { + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::GetJavaObject: Initialization for instance %d has timed out. Marking it void\n", instance_identifier); + this->fatalErrorOccurred = PR_TRUE; + return NS_ERROR_FAILURE; + } PLUGIN_DEBUG_1ARG ("Instance %p initialization complete...\n", this); } @@ -2590,12 +2615,12 @@ IcedTeaPluginFactory::GetJavaObject (PRU nsresult result = NS_OK; // wait for result - suseconds_t startTime = get_time_in_ms(); + long startTime = get_time_in_s(); while (object_identifier_return == 0) { current->ProcessNextEvent(PR_TRUE, &processed); // If we have been waiting for more than 20 seconds, something is wrong - if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + if ((get_time_in_ms() - startTime) > TIMEOUT) break; } @@ -3574,17 +3599,15 @@ IcedTeaPluginFactory::StartAppletviewer if (getenv("ICEDTEAPLUGIN_DEBUG")) { - numArgs = 6; - char const* javaArgs[6] = { "-cp", appletviewer_classpath, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; + numArgs = 4; + char const* javaArgs[4] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; args = javaArgs; } else { - numArgs = 3; - char const* javaArgs[3] = { "-cp", appletviewer_classpath, "sun.applet.PluginMain" }; + numArgs = 1; + char const* javaArgs[1] = { "sun.applet.PluginMain" }; args = javaArgs; } - - printf("Executing: %s %s\n", appletviewer_executable, args); // start processing thread nsCOMPtr processMessageEvent = @@ -5561,7 +5584,7 @@ NSGetFactory (nsISupports* aServMgr, nsC return NS_ERROR_OUT_OF_MEMORY; } nsCString executable (dirname (filename)); - nsCString classpath(dirname (filename)); + free (filename); filename = NULL; @@ -5574,15 +5597,6 @@ NSGetFactory (nsISupports* aServMgr, nsC PLUGIN_ERROR ("Failed to create java executable name."); return NS_ERROR_OUT_OF_MEMORY; } - - classpath += nsCString ("/rt.jar"); - appletviewer_classpath = strdup (classpath.get ()); - if (!appletviewer_classpath) - { - PLUGIN_ERROR ("Failed to create java classpath string."); - return NS_ERROR_OUT_OF_MEMORY; - } - // Make sure the plugin data directory exists, creating it if // necessary. diff -r 93f0928ec0ed -r 1e020b5801bb plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 12:27:23 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 18:07:45 2008 -0400 @@ -175,7 +175,7 @@ import sun.misc.Ref; AccessController.doPrivileged(new PrivilegedAction() { public Object run() { try { - panel = new NetxPanel(doc, atts, false); + panel = new NetxPanel(doc, atts, true); AppletViewerPanel.debug("Using NetX panel"); } catch (Exception ex) { AppletViewerPanel.debug("Unable to start NetX applet - defaulting to Sun applet", ex); From dbhole at redhat.com Thu Oct 23 15:07:54 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 23 Oct 2008 22:07:54 +0000 Subject: changeset in /hg/icedtea6: - Supply classpath to vm when initial... Message-ID: changeset 93f0928ec0ed in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=93f0928ec0ed description: - Supply classpath to vm when initializing - Do not exit java on error - Don't wait forever (c++ side) for java to respond diffstat: 5 files changed, 93 insertions(+), 28 deletions(-) ChangeLog | 9 ++ IcedTeaPlugin.cc | 77 ++++++++++++++------- plugin/icedtea/sun/applet/PluginAppletViewer.java | 2 rt/net/sourceforge/jnlp/Launcher.java | 20 +++++ rt/net/sourceforge/jnlp/NetxPanel.java | 13 +++ diffs (296 lines): diff -r 19ff33216eaf -r 93f0928ec0ed ChangeLog --- a/ChangeLog Thu Oct 23 12:17:26 2008 -0400 +++ b/ChangeLog Thu Oct 23 12:27:23 2008 -0400 @@ -1,3 +1,12 @@ 2008-10-23 Lillian Angel + + * IcedTeaPlugin.cc: Supply classpath to rt.jar when starting java. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Tell Netx to exit VM + on error. + * rt/net/sourceforge/jnlp/Launcher.java: Implement an option for not + exiting VM on error. + * rt/net/sourceforge/jnlp/NetxPanel.java: Same. + 2008-10-23 Lillian Angel PR redhat/468193: diff -r 19ff33216eaf -r 93f0928ec0ed IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 23 12:17:26 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 23 12:27:23 2008 -0400 @@ -83,6 +83,9 @@ PRThread* current_thread (); // #12 0x0153e62f in ProxyJNIEnv::InvokeMethod (env=0xa8b8040, obj=0x9dad690, method=0xa0ed070, args=0x0) at ProxyJNI.cpp:571 // #13 0x0153f91c in ProxyJNIEnv::InvokeMethod (env=0xa8b8040, obj=0x9dad690, method=0xa0ed070, args=0xbff3065c "\235\225$") at ProxyJNI.cpp:580 // #14 0x0153fdbf in ProxyJNIEnv::CallObjectMethod (env=0xa8b8040, obj=0x9dad690, methodID=0xa0ed070) at ProxyJNI.cpp:641 + +// timeout (in seconds) for various calls to java side +#define TIMEOUT 20 #define NOT_IMPLEMENTED() \ printf ("NOT IMPLEMENTED: %s\n", __PRETTY_FUNCTION__) @@ -312,6 +315,7 @@ static GError* channel_error = NULL; // Fully-qualified appletviewer executable. gchar* data_directory = NULL; static char* appletviewer_executable = NULL; +static char* appletviewer_classpath = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -2383,13 +2387,27 @@ IcedTeaPluginInstance::SetWindow (nsPlug { if (initialized == PR_FALSE) - { - - PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - - while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) { - PROCESS_PENDING_EVENTS; + { + + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); + + suseconds_t startTime = get_time_in_ms(); + PRBool timedOut = PR_FALSE; + + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) + { + PROCESS_PENDING_EVENTS; + + if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + { + timedOut = PR_TRUE; + break; + } } + + // we timed out + if (timedOut == PR_TRUE) + return NS_ERROR_FAILURE; // did we bail because there is no jvm? if (this->fatalErrorOccurred == PR_TRUE) @@ -2572,8 +2590,13 @@ IcedTeaPluginFactory::GetJavaObject (PRU nsresult result = NS_OK; // wait for result + suseconds_t startTime = get_time_in_ms(); while (object_identifier_return == 0) { current->ProcessNextEvent(PR_TRUE, &processed); + + // If we have been waiting for more than 20 seconds, something is wrong + if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + break; } PLUGIN_DEBUG_1ARG ("GOT JAVA OBJECT IDENTIFIER: %d\n", object_identifier_return); @@ -3551,15 +3574,17 @@ IcedTeaPluginFactory::StartAppletviewer if (getenv("ICEDTEAPLUGIN_DEBUG")) { - numArgs = 4; - char const* javaArgs[4] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; + numArgs = 6; + char const* javaArgs[6] = { "-cp", appletviewer_classpath, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; args = javaArgs; } else { - numArgs = 1; - char const* javaArgs[1] = { "sun.applet.PluginMain" }; + numArgs = 3; + char const* javaArgs[3] = { "-cp", appletviewer_classpath, "sun.applet.PluginMain" }; args = javaArgs; } + + printf("Executing: %s %s\n", appletviewer_executable, args); // start processing thread nsCOMPtr processMessageEvent = @@ -3585,14 +3610,14 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_DEBUG_TWO ("clearing old input fifo (if any):", in_pipe_name); g_remove(in_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: creating input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("creating input fifo:", in_pipe_name); if (mkfifo (in_pipe_name, 0700) == -1 && errno != EEXIST) { PLUGIN_ERROR_TWO ("Failed to create input pipe", strerror (errno)); result = NS_ERROR_OUT_OF_MEMORY; goto cleanup_in_pipe_name; } - PLUGIN_DEBUG_TWO ("GCJ_New: created input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("created input fifo:", in_pipe_name); // Create plugin-to-appletviewer pipe which we refer to as the // output pipe. @@ -3614,14 +3639,14 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_DEBUG_TWO ("clearing old output fifo (if any):", out_pipe_name); g_remove(out_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: creating output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("creating output fifo:", out_pipe_name); if (mkfifo (out_pipe_name, 0700) == -1 && errno != EEXIST) { PLUGIN_ERROR_TWO ("Failed to create output pipe", strerror (errno)); result = NS_ERROR_OUT_OF_MEMORY; goto cleanup_out_pipe_name; } - PLUGIN_DEBUG_TWO ("GCJ_New: created output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("created output fifo:", out_pipe_name); result = applet_viewer_process->Run (PR_FALSE, args, numArgs, nsnull); PLUGIN_CHECK_RETURN ("run process", result); @@ -3696,9 +3721,9 @@ IcedTeaPluginFactory::StartAppletviewer // cleanup_out_pipe: // Delete output pipe. - PLUGIN_DEBUG_TWO ("GCJ_New: deleting input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("deleting input fifo:", in_pipe_name); unlink (out_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: deleted input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("deleted input fifo:", in_pipe_name); cleanup_out_pipe_name: g_free (out_pipe_name); @@ -3706,9 +3731,9 @@ IcedTeaPluginFactory::StartAppletviewer // cleanup_in_pipe: // Delete input pipe. - PLUGIN_DEBUG_TWO ("GCJ_New: deleting output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("deleting output fifo:", out_pipe_name); unlink (in_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: deleted output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("deleted output fifo:", out_pipe_name); cleanup_in_pipe_name: g_free (in_pipe_name); @@ -5536,24 +5561,28 @@ NSGetFactory (nsISupports* aServMgr, nsC return NS_ERROR_OUT_OF_MEMORY; } nsCString executable (dirname (filename)); - nsCString jar(dirname (filename)); - nsCString extrajars(""); + nsCString classpath(dirname (filename)); free (filename); filename = NULL; - //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - - //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); return NS_ERROR_OUT_OF_MEMORY; } + + classpath += nsCString ("/rt.jar"); + appletviewer_classpath = strdup (classpath.get ()); + if (!appletviewer_classpath) + { + PLUGIN_ERROR ("Failed to create java classpath string."); + return NS_ERROR_OUT_OF_MEMORY; + } + // Make sure the plugin data directory exists, creating it if // necessary. diff -r 19ff33216eaf -r 93f0928ec0ed plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 12:17:26 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 12:27:23 2008 -0400 @@ -175,7 +175,7 @@ import sun.misc.Ref; AccessController.doPrivileged(new PrivilegedAction() { public Object run() { try { - panel = new NetxPanel(doc, atts); + panel = new NetxPanel(doc, atts, false); AppletViewerPanel.debug("Using NetX panel"); } catch (Exception ex) { AppletViewerPanel.debug("Unable to start NetX applet - defaulting to Sun applet", ex); diff -r 19ff33216eaf -r 93f0928ec0ed rt/net/sourceforge/jnlp/Launcher.java --- a/rt/net/sourceforge/jnlp/Launcher.java Thu Oct 23 12:17:26 2008 -0400 +++ b/rt/net/sourceforge/jnlp/Launcher.java Thu Oct 23 12:27:23 2008 -0400 @@ -59,6 +59,8 @@ public class Launcher { /** whether to create an AppContext (if possible) */ private boolean context = true; + /** If the application should call System.exit on fatal errors */ + private boolean exitOnFailure = true; /** * Create a launcher with the runtime's default update policy @@ -69,6 +71,21 @@ public class Launcher { if (handler == null) handler = JNLPRuntime.getDefaultLaunchHandler(); + } + + /** + * Create a launcher with the runtime's default update policy + * and launch handler. + * + * @param exitOnError Exit if there is an error (usually default, but false when being used from the plugin) + */ + public Launcher(boolean exitOnFailure) { + this(null, null); + + if (handler == null) + handler = JNLPRuntime.getDefaultLaunchHandler(); + + this.exitOnFailure = exitOnFailure; } /** @@ -595,7 +612,8 @@ public class Launcher { ex.printStackTrace(); exception = ex; // Exit if we can't launch the application. - System.exit(0); + if (exitOnFailure) + System.exit(0); } } diff -r 19ff33216eaf -r 93f0928ec0ed rt/net/sourceforge/jnlp/NetxPanel.java --- a/rt/net/sourceforge/jnlp/NetxPanel.java Thu Oct 23 12:17:26 2008 -0400 +++ b/rt/net/sourceforge/jnlp/NetxPanel.java Thu Oct 23 12:27:23 2008 -0400 @@ -39,10 +39,18 @@ public class NetxPanel extends AppletVie public class NetxPanel extends AppletViewerPanel { private PluginBridge bridge = null; + private boolean exitOnFailure = true; public NetxPanel(URL documentURL, Hashtable atts) { super(documentURL, atts); + } + + // overloaded constructor, called when initialized via plugin + public NetxPanel(URL documentURL, Hashtable atts, boolean exitOnFailure) + { + this(documentURL, atts); + this.exitOnFailure = exitOnFailure; } //Overriding to use Netx classloader. You might need to relax visibility @@ -72,14 +80,15 @@ public class NetxPanel extends AppletVie dispatchAppletEvent(APPLET_LOADING, null); status = APPLET_LOAD; - Launcher l = new Launcher(); + Launcher l = new Launcher(exitOnFailure); AppletInstance appInst = null; try { appInst = (AppletInstance) l.launch(bridge, this); } catch (LaunchException e) { // Assume user has indicated he does not trust the // applet. - System.exit(0); + if (exitOnFailure) + System.exit(0); } applet = appInst.getApplet(); From doko at ubuntu.com Fri Oct 24 04:33:42 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Fri, 24 Oct 2008 11:33:42 +0000 Subject: changeset in /hg/icedtea6: 2008-10-24 Matthias Klose changeset a8f8cb9d58df in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a8f8cb9d58df description: 2008-10-24 Matthias Klose * Makefile.am (clean-pulseaudio): Don't remove source files. Might not be correct, but doesn't do harm in any build environment. diffstat: 2 files changed, 7 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ Makefile.am | 4 ++-- diffs (26 lines): diff -r 1e020b5801bb -r a8f8cb9d58df ChangeLog --- a/ChangeLog Thu Oct 23 18:07:45 2008 -0400 +++ b/ChangeLog Fri Oct 24 13:33:32 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-23 Deepak Bhole + + * Makefile.am (clean-pulseaudio): Don't remove source files. Might + not be correct, but doesn't do harm in any build environment. + 2008-10-23 Deepak Bhole * IcedTeaPlugin.cc: Implement proper timeout action. diff -r 1e020b5801bb -r a8f8cb9d58df Makefile.am --- a/Makefile.am Thu Oct 23 18:07:45 2008 -0400 +++ b/Makefile.am Fri Oct 24 13:33:32 2008 +0200 @@ -1528,8 +1528,8 @@ endif clean-pulse-java: if ENABLE_PULSE_JAVA - rm -rf $(PULSE_JAVA_CLASS_DIR)/* - rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + [ -z "$(PULSE_JAVA_CLASS_DIR)" ] || find $(PULSE_JAVA_CLASS_DIR) -name '*.class' | xargs -r rm -f + [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so From dbhole at redhat.com Fri Oct 24 07:08:23 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 24 Oct 2008 14:08:23 +0000 Subject: changeset in /hg/icedtea6: Made the long constructor public. Message-ID: changeset b763518484a6 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=b763518484a6 description: Made the long constructor public. diffstat: 2 files changed, 6 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ plugin/icedtea/netscape/javascript/JSObject.java | 2 +- diffs (24 lines): diff -r a8f8cb9d58df -r b763518484a6 ChangeLog --- a/ChangeLog Fri Oct 24 13:33:32 2008 +0200 +++ b/ChangeLog Fri Oct 24 10:08:18 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-24 Matthias Klose + + * plugin/icedtea/netscape/javascript/JSObject.java: Make long constructor + public. + 2008-10-24 Matthias Klose * Makefile.am (clean-pulseaudio): Don't remove source files. Might diff -r a8f8cb9d58df -r b763518484a6 plugin/icedtea/netscape/javascript/JSObject.java --- a/plugin/icedtea/netscape/javascript/JSObject.java Fri Oct 24 13:33:32 2008 +0200 +++ b/plugin/icedtea/netscape/javascript/JSObject.java Fri Oct 24 10:08:18 2008 -0400 @@ -109,7 +109,7 @@ public final class JSObject { internal = jsobj_addr; } - private JSObject(long jsobj_addr) { + public JSObject(long jsobj_addr) { PluginDebug.debug ("JSObject long CONSTRUCTOR"); long_internal = jsobj_addr; } From omajid at redhat.com Fri Oct 24 07:10:53 2008 From: omajid at redhat.com (Omair Majid) Date: Fri, 24 Oct 2008 14:10:53 +0000 Subject: changeset in /hg/icedtea6: 2008-10-24 Omair Majid changeset ce6a731bd3b9 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ce6a731bd3b9 description: 2008-10-24 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (write): Check for offset being negative. * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java (testMixerKnowsAboutOpenClips): Removed the assumption that mixer had no other lines open. diffstat: 3 files changed, 19 insertions(+), 6 deletions(-) ChangeLog | 8 +++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 6 ++++- pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java | 11 +++++----- diffs (54 lines): diff -r b763518484a6 -r ce6a731bd3b9 ChangeLog --- a/ChangeLog Fri Oct 24 10:08:18 2008 -0400 +++ b/ChangeLog Fri Oct 24 10:10:49 2008 -0400 @@ -1,3 +1,11 @@ 2008-10-24 Deepak Bhole + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (write): Check for offset being negative. + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java + (testMixerKnowsAboutOpenClips): Removed the assumption that mixer had no + other lines open. + 2008-10-24 Deepak Bhole * plugin/icedtea/netscape/javascript/JSObject.java: Make long constructor diff -r b763518484a6 -r ce6a731bd3b9 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 24 10:08:18 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 24 10:10:49 2008 -0400 @@ -153,8 +153,12 @@ public class PulseAudioSourceDataLine ex throw new IllegalArgumentException("length is negative"); } + if (offset < 0) { + throw new ArrayIndexOutOfBoundsException("offset is negative: " + offset); + } + if (length + offset > data.length) { - throw new ArrayIndexOutOfBoundsException(length + offset); + throw new ArrayIndexOutOfBoundsException("writing data beyond the length of the array: " + (length + offset)); } int position = offset; diff -r b763518484a6 -r ce6a731bd3b9 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java --- a/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java Fri Oct 24 10:08:18 2008 -0400 +++ b/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java Fri Oct 24 10:10:49 2008 -0400 @@ -605,12 +605,13 @@ public class PulseAudioClipTest { AudioInputStream audioInputStream1 = AudioSystem .getAudioInputStream(soundFile1); - Assert.assertEquals(0, mixer.getSourceLines().length); + int initiallyOpenClips = mixer.getSourceLines().length; + Assert.assertEquals(initiallyOpenClips, mixer.getSourceLines().length); clip.open(audioInputStream1); - Assert.assertEquals(1, mixer.getSourceLines().length); - Assert.assertEquals(clip, mixer.getSourceLines()[0]); - clip.close(); - Assert.assertEquals(0, mixer.getSourceLines().length); + Assert.assertEquals(initiallyOpenClips + 1, mixer.getSourceLines().length); + Assert.assertEquals(clip, mixer.getSourceLines()[initiallyOpenClips]); + clip.close(); + Assert.assertEquals(initiallyOpenClips, mixer.getSourceLines().length); } From gnu_andrew at member.fsf.org Fri Oct 24 14:29:26 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Fri, 24 Oct 2008 22:29:26 +0100 Subject: IcedTea6 merge (2008/10/23) Message-ID: <17c6771e0810241429u71400ddeo850ed0e491629494@mail.gmail.com> I've just merged another 30 changesets from IcedTea6 to IcedTea. This includes the change to the new LiveConnect plugin, the debug fix and a number of other bug fixes. ChangeLog: 2008-10-24 Andrew John Hughes Merge from IcedTea6. * ChangeLog, * HACKING, * IcedTeaPlugin.cc, * Makefile.am, * README, * THANKYOU, * acinclude.m4, * configure.ac, * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/NetxPanel.java, * overlays/openjdk/jdk/src/share/classes/net/sourceforge/nanoxml/XMLElement.java, * patches/icedtea-cacao-ignore-jdi-tests.patch, * patches/icedtea-cacao-ignore-tests.patch: Merged. * patches/icedtea-ecj.patch: Regenerated. * patches/icedtea-javac-debuginfo.patch: Merged. * patches/icedtea-liveconnect.patch: Regenerated. * patches/icedtea-shark.patch, * patches/icedtea-version.patch, * patches/icedtea-webstart.patch, * patches/icedtea-xjc.patch, * plugin/icedtea/netscape/javascript/JSObject.java, * plugin/icedtea/netscape/javascript/JSRunnable.java, * plugin/icedtea/sun/applet/AppletSecurityContextManager.java, * plugin/icedtea/sun/applet/GetMemberPluginCallRequest.java, * plugin/icedtea/sun/applet/GetWindowPluginCallRequest.java, * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java, * plugin/icedtea/sun/applet/PluginAppletViewer.java, * plugin/icedtea/sun/applet/PluginDebug.java, * plugin/icedtea/sun/applet/PluginMain.java, * plugin/icedtea/sun/applet/PluginMessageConsumer.java, * plugin/icedtea/sun/applet/PluginMessageHandlerWorker.java, * plugin/icedtea/sun/applet/PluginObjectStore.java, * plugin/icedtea/sun/applet/PluginStreamHandler.java, * plugin/icedtea/sun/applet/RequestQueue.java, * plugin/icedtea/sun/applet/TestEnv.java, * plugin/icedtea/sun/applet/VoidPluginCallRequest.java, * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, * ports/hotspot/src/share/vm/shark/sharkState.cpp: Merged. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From Joe.Darcy at Sun.COM Fri Oct 24 14:43:50 2008 From: Joe.Darcy at Sun.COM (Joseph D. Darcy) Date: Fri, 24 Oct 2008 14:43:50 -0700 Subject: On ecj and @Override annotations for interface methods In-Reply-To: <48E5AF02.7060801@sun.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <17c6771e0809180426o5483138cnd801325aa004a7ee@mail.gmail.com> <1221737607.3256.22.camel@dijkstra.wildebeest.org> <20080918113722.GG10250@bamboo.destinee.acro.gen.nz> <1221738084.3256.24.camel@dijkstra.wildebeest.org> <1221739400.3256.34.camel@dijkstra.wildebeest.org> <48D263FD.1080702@sun.com> <1221748518.3256.59.camel@dijkstra.wildebeest.org> <48D2A430.2070903@sun.com> <1222164188.3178.42.camel@dijkstra.wildebeest.org> <48D8F940.40600@sun.com> <1222517020.22140.19.camel@hermans.wildebeest.org> <48E5AF02.7060801@sun.com> Message-ID: <49024196.6090109@sun.com> Joseph D. Darcy wrote: > Hello. > > Mark Wielaard wrote: >> Hi Joe, >> >> On Tue, 2008-09-23 at 07:12 -0700, Joseph D. Darcy wrote: >> >>>> Are these manpages written by hand these days? It has a comment that >>>> says: "Generated by html2man", but it doesn't say what the original >>>> html >>>> file is that it was generated from. >>>> >>> The process used in the past for man pages was that the docs team >>> works with us developers to write the HTML man pages, which are in >>> turn converted to SGML and *roff for Solaris and Linux, >>> respectively. It looks like the last update to the HTML page, >>> 6392810 "javac manpage needs to be updated to include JSR 269 and >>> other Mustang options," did not get converted to the other formats. >>> If the actual *nix man pages, regardless of format, are supposed to >>> be generated in this fashion, it would admittedly be a better >>> architecture to have them as generated files during the build and >>> not track all three versions of the man page under version control. >>> >> >> So if the preferred form of the for making modifications to these >> documents is the HTML or SGML version that the doc team maintains it >> would be good to get those in the openjdk tree. > > Agreed. > >> Does the documentation >> team maintain their own repository for these documents? >> > > Yes; at the moment there is a Sun-internal-only repository for these > documents. IMO, at least the master manpages should be moved to a > public repository for JDK 7 and the build rearranged so that the *roff > and SGML files are generated and not separated tracked under version > control. I'll broach this with the docs team for later in JDK 7. > > For OpenJDK 6, I'll make sure up-to-date manpages are included in the > next build. > > -Joe Hello. Momentarily, I'm going to be sending a large patch to the jdk6-dev list to update and correct the man pages of javac and other tools. I've been working with our internal docs team to improve some of the processes used to create the unix man pages from the HTML source documents. -Joe From bugzilla-daemon at icedtea.classpath.org Sat Oct 25 08:01:59 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Oct 2008 15:01:59 +0000 Subject: [Bug 230] New: GCJ browser plugin (iced tea) 1.2 does not render output Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=230 Summary: GCJ browser plugin (iced tea) 1.2 does not render output Product: IcedTea Version: unspecified Platform: PC URL: http://www.guardian.co.uk/crossword/java/new/0,,- 23625,00.html OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: bugzilla at codnet.co.uk The url above should display a crossword with clues. Instead, a rectangular block of grey appears. O/S: uname -a Linux notebook 2.6.26.5-45.fc9.i686 #1 SMP Sat Sep 20 03:45:00 EDT 2008 i686 i686 i386 GNU/Linux Browser: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.2) Gecko/2008092318 Fedora/3.0.2-1.fc9 Firefox/3.0.2 Addon: GCJ Web Browser Plugin (using Iced Tea) 1.2 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Sat Oct 25 14:01:43 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 25 Oct 2008 21:01:43 +0000 Subject: changeset in /hg/icedtea6: 2008-10-25 Matthias Klose changeset 4b16b588ba42 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=4b16b588ba42 description: 2008-10-25 Matthias Klose * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in PLUGIN_DESCRIPTION. diffstat: 4 files changed, 20 insertions(+), 2 deletions(-) ChangeLog | 6 ++++++ IcedTeaPlugin.cc | 2 +- Makefile.am | 12 ++++++++++++ gcjwebplugin.cc | 2 +- diffs (72 lines): diff -r ce6a731bd3b9 -r 4b16b588ba42 ChangeLog --- a/ChangeLog Fri Oct 24 10:10:49 2008 -0400 +++ b/ChangeLog Sat Oct 25 23:01:28 2008 +0200 @@ -1,3 +1,9 @@ 2008-10-24 Omair Majid + + * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. + * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in + PLUGIN_DESCRIPTION. + 2008-10-24 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java diff -r ce6a731bd3b9 -r 4b16b588ba42 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Fri Oct 24 10:10:49 2008 -0400 +++ b/IcedTeaPlugin.cc Sat Oct 25 23:01:28 2008 +0200 @@ -275,7 +275,7 @@ inline long get_time_in_s() #endif #define PLUGIN_NAME "IcedTea Web Browser Plugin" -#define PLUGIN_DESCRIPTION "The " PLUGIN_NAME " executes Java applets." +#define PLUGIN_DESCRIPTION "The " PLUGIN_NAME PLUGIN_VERSION " executes Java applets." #define PLUGIN_MIME_DESC \ "application/x-java-vm:class,jar:IcedTea;" \ "application/x-java-applet:class,jar:IcedTea;" \ diff -r ce6a731bd3b9 -r 4b16b588ba42 Makefile.am --- a/Makefile.am Fri Oct 24 10:10:49 2008 -0400 +++ b/Makefile.am Sat Oct 25 23:01:28 2008 +0200 @@ -1415,10 +1415,16 @@ if ENABLE_GCJWEBPLUGIN if ENABLE_GCJWEBPLUGIN # gcjwebplugin.so. gcjwebplugin.so: gcjwebplugin.cc + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + if [ -n "$(PKGVERSION)" ]; then plugin_version=" ($(PKGVERSION))"; fi; \ + plugin_version=" $(PACKAGE_VERSION)$$revision$$plugin_version"; \ $(CXX) $(CXXFLAGS) $(MOZILLA_CFLAGS) \ $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ $(GTK_CFLAGS) $(GTK_LIBS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -DPLUGIN_VERSION="\"$$plugin_version\"" \ -fPIC -shared -o $@ $< clean-gcjwebplugin: @@ -1430,8 +1436,14 @@ if ENABLE_PLUGIN # is listed before -l options. See: # http://developer.mozilla.org/en/docs/XPCOM_Glue IcedTeaPlugin.o: IcedTeaPlugin.cc + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + if [ -n "$(PKGVERSION)" ]; then plugin_version=" ($(PKGVERSION))"; fi; \ + plugin_version=" $(PACKAGE_VERSION)$$revision$$plugin_version"; \ $(CXX) $(CXXFLAGS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -DPLUGIN_VERSION="\"$$plugin_version\"" \ $(GTK_CFLAGS) \ $(XULRUNNER_CFLAGS) \ -fPIC -c -o $@ $< diff -r ce6a731bd3b9 -r 4b16b588ba42 gcjwebplugin.cc --- a/gcjwebplugin.cc Fri Oct 24 10:10:49 2008 -0400 +++ b/gcjwebplugin.cc Sat Oct 25 23:01:28 2008 +0200 @@ -84,7 +84,7 @@ exception statement from your version. * // Plugin information passed to about:plugins. #define PLUGIN_NAME "GCJ Web Browser Plugin (using IcedTea)" -#define PLUGIN_DESC "The " PLUGIN_NAME " executes Java applets." +#define PLUGIN_DESC "The " PLUGIN_NAME PLUGIN_VERSION " executes Java applets." #define PLUGIN_MIME_DESC \ "application/x-java-vm:class,jar:IcedTea;" \ "application/x-java-applet:class,jar:IcedTea;" \ From doko at ubuntu.com Sat Oct 25 14:23:28 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Sat, 25 Oct 2008 21:23:28 +0000 Subject: changeset in /hg/icedtea6: 2008-10-25 Matthias Klose changeset 7b4e0145155d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=7b4e0145155d description: 2008-10-25 Matthias Klose * Makefile.am (clean-pulse-java): Remove object files. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 2 +- diffs (23 lines): diff -r 4b16b588ba42 -r 7b4e0145155d ChangeLog --- a/ChangeLog Sat Oct 25 23:01:28 2008 +0200 +++ b/ChangeLog Sat Oct 25 23:23:16 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-25 Matthias Klose + + * Makefile.am (clean-pulse-java): Remove object files. + 2008-10-25 Matthias Klose * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. diff -r 4b16b588ba42 -r 7b4e0145155d Makefile.am --- a/Makefile.am Sat Oct 25 23:01:28 2008 +0200 +++ b/Makefile.am Sat Oct 25 23:23:16 2008 +0200 @@ -1541,7 +1541,7 @@ clean-pulse-java: clean-pulse-java: if ENABLE_PULSE_JAVA [ -z "$(PULSE_JAVA_CLASS_DIR)" ] || find $(PULSE_JAVA_CLASS_DIR) -name '*.class' | xargs -r rm -f - [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h $(PULSE_JAVA_NATIVE_SRCDIR)/*.o rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so From bugzilla-daemon at icedtea.classpath.org Sat Oct 25 14:59:00 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Oct 2008 21:59:00 +0000 Subject: [Bug 230] GCJ browser plugin (iced tea) 1.2 does not render output Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=230 ------- Comment #1 from fitzsim at redhat.com 2008-10-25 21:59 ------- Created an attachment (id=127) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=127&action=view) Patch: don't convert empty string parameter values to null. Here's a patch that fixes this bug. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Oct 25 14:59:20 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Oct 2008 21:59:20 +0000 Subject: [Bug 230] GCJ browser plugin (iced tea) 1.2 does not render output Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=230 fitzsim at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From twisti at complang.tuwien.ac.at Mon Oct 27 02:22:05 2008 From: twisti at complang.tuwien.ac.at (Christian Thalinger) Date: Mon, 27 Oct 2008 10:22:05 +0100 Subject: JCK Distilled In-Reply-To: <49009BFD.9030101@redhat.com> References: <49009BFD.9030101@redhat.com> Message-ID: <1225099325.16933.0.camel@cthalinger.lan> On Thu, 2008-10-23 at 16:45 +0100, Andrew Haley wrote: > I have posted the JCK Distilled document at > http://icedtea.classpath.org/wiki/JCKDistilled > > If you're going to run the JCK on GNU/Linux you will find this page > very helpful; if you're not, it'll be meaningless. :-) > > Please let me know if you use this, and if you find any bugs in the > page. Thanks, this is very helpful. I think there are some small typos, have to reread it. - Christian From gnu_andrew at member.fsf.org Mon Oct 27 03:36:21 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 10:36:21 +0000 Subject: JCK Distilled In-Reply-To: <1225099325.16933.0.camel@cthalinger.lan> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> Message-ID: <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> 2008/10/27 Christian Thalinger : > On Thu, 2008-10-23 at 16:45 +0100, Andrew Haley wrote: >> I have posted the JCK Distilled document at >> http://icedtea.classpath.org/wiki/JCKDistilled >> >> If you're going to run the JCK on GNU/Linux you will find this page >> very helpful; if you're not, it'll be meaningless. :-) >> >> Please let me know if you use this, and if you find any bugs in the >> page. > > Thanks, this is very helpful. I think there are some small typos, have > to reread it. > > - Christian > > It seemed to work okay for me last week with a few minor fixes. I've managed to run the sample JCK tests and most of the real interactive tests against IcedTea6 1.3 on Fedora. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From aph at redhat.com Mon Oct 27 03:38:57 2008 From: aph at redhat.com (Andrew Haley) Date: Mon, 27 Oct 2008 10:38:57 +0000 Subject: JCK Distilled In-Reply-To: <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> Message-ID: <49059A41.8010400@redhat.com> Andrew John Hughes wrote: > 2008/10/27 Christian Thalinger : >> On Thu, 2008-10-23 at 16:45 +0100, Andrew Haley wrote: >>> I have posted the JCK Distilled document at >>> http://icedtea.classpath.org/wiki/JCKDistilled >>> >>> If you're going to run the JCK on GNU/Linux you will find this page >>> very helpful; if you're not, it'll be meaningless. :-) >>> >>> Please let me know if you use this, and if you find any bugs in the >>> page. >> Thanks, this is very helpful. I think there are some small typos, have >> to reread it. > > It seemed to work okay for me last week with a few minor fixes. I've managed > to run the sample JCK tests and most of the real interactive tests > against IcedTea6 1.3 on Fedora. Please make sure you commit any corrections. Let me know what they are. Andrew. From gnu_andrew at member.fsf.org Mon Oct 27 03:41:17 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 10:41:17 +0000 Subject: JCK Distilled In-Reply-To: <49059A41.8010400@redhat.com> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <49059A41.8010400@redhat.com> Message-ID: <17c6771e0810270341r791ba07ep4d0baaad9772edd7@mail.gmail.com> 2008/10/27 Andrew Haley : > Andrew John Hughes wrote: >> 2008/10/27 Christian Thalinger : >>> On Thu, 2008-10-23 at 16:45 +0100, Andrew Haley wrote: >>>> I have posted the JCK Distilled document at >>>> http://icedtea.classpath.org/wiki/JCKDistilled >>>> >>>> If you're going to run the JCK on GNU/Linux you will find this page >>>> very helpful; if you're not, it'll be meaningless. :-) >>>> >>>> Please let me know if you use this, and if you find any bugs in the >>>> page. >>> Thanks, this is very helpful. I think there are some small typos, have >>> to reread it. >> >> It seemed to work okay for me last week with a few minor fixes. I've managed >> to run the sample JCK tests and most of the real interactive tests >> against IcedTea6 1.3 on Fedora. > > Please make sure you commit any corrections. Let me know what they are. > > Andrew. > I have. It was just a few simple things like using the full path for the Kerberos tools, running rmic in the background, etc. Nothing major as far as I could see. I'll be interested to see how twisti gets on running it with cacao/openjdk. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From aph at redhat.com Mon Oct 27 03:44:52 2008 From: aph at redhat.com (Andrew Haley) Date: Mon, 27 Oct 2008 10:44:52 +0000 Subject: JCK Distilled In-Reply-To: <17c6771e0810270341r791ba07ep4d0baaad9772edd7@mail.gmail.com> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <49059A41.8010400@redhat.com> <17c6771e0810270341r791ba07ep4d0baaad9772edd7@mail.gmail.com> Message-ID: <49059BA4.7050807@redhat.com> Andrew John Hughes wrote: > 2008/10/27 Andrew Haley : >> Andrew John Hughes wrote: >>> 2008/10/27 Christian Thalinger : >>>> On Thu, 2008-10-23 at 16:45 +0100, Andrew Haley wrote: >>>>> I have posted the JCK Distilled document at >>>>> http://icedtea.classpath.org/wiki/JCKDistilled >>>>> >>>>> If you're going to run the JCK on GNU/Linux you will find this page >>>>> very helpful; if you're not, it'll be meaningless. :-) >>>>> >>>>> Please let me know if you use this, and if you find any bugs in the >>>>> page. >>>> Thanks, this is very helpful. I think there are some small typos, have >>>> to reread it. >>> It seemed to work okay for me last week with a few minor fixes. I've managed >>> to run the sample JCK tests and most of the real interactive tests >>> against IcedTea6 1.3 on Fedora. >> Please make sure you commit any corrections. Let me know what they are. > I have. It was just a few simple things like using the full path for > the Kerberos tools, > running rmic in the background, etc. Nothing major as far as I could see. > > I'll be interested to see how twisti gets on running it with cacao/openjdk. Oh, I'm on the notification list for that page and I didn't see anything. Software.... Andrew. From twisti at complang.tuwien.ac.at Mon Oct 27 03:59:31 2008 From: twisti at complang.tuwien.ac.at (Christian Thalinger) Date: Mon, 27 Oct 2008 11:59:31 +0100 Subject: JCK Distilled In-Reply-To: <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> Message-ID: <1225105171.16933.3.camel@cthalinger.lan> On Mon, 2008-10-27 at 10:36 +0000, Andrew John Hughes wrote: > > Thanks, this is very helpful. I think there are some small typos, have > > to reread it. Should I create an account myself (but it doesn't seem to work, maybe because of the spamming lately) and fix the typos? - Christian From aph at redhat.com Mon Oct 27 04:00:44 2008 From: aph at redhat.com (Andrew Haley) Date: Mon, 27 Oct 2008 11:00:44 +0000 Subject: JCK Distilled In-Reply-To: <1225105171.16933.3.camel@cthalinger.lan> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <1225105171.16933.3.camel@cthalinger.lan> Message-ID: <49059F5C.4090600@redhat.com> Christian Thalinger wrote: > On Mon, 2008-10-27 at 10:36 +0000, Andrew John Hughes wrote: >>> Thanks, this is very helpful. I think there are some small typos, have >>> to reread it. > > Should I create an account myself (but it doesn't seem to work, maybe > because of the spamming lately) and fix the typos? Yes please. Andrew. From gnu_andrew at member.fsf.org Mon Oct 27 04:01:26 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 11:01:26 +0000 Subject: JCK Distilled In-Reply-To: <1225105171.16933.3.camel@cthalinger.lan> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <1225105171.16933.3.camel@cthalinger.lan> Message-ID: <17c6771e0810270401w27a70cc7o8fadf7cfe1fe5199@mail.gmail.com> 2008/10/27 Christian Thalinger : > On Mon, 2008-10-27 at 10:36 +0000, Andrew John Hughes wrote: >> > Thanks, this is very helpful. I think there are some small typos, have >> > to reread it. > > Should I create an account myself (but it doesn't seem to work, maybe > because of the spamming lately) and fix the typos? > > - Christian > > I think you need mjw to do this for you. -- Andrew :-) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From mark at klomp.org Mon Oct 27 04:03:52 2008 From: mark at klomp.org (Mark Wielaard) Date: Mon, 27 Oct 2008 12:03:52 +0100 Subject: JCK Distilled In-Reply-To: <49059BA4.7050807@redhat.com> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <49059A41.8010400@redhat.com> <17c6771e0810270341r791ba07ep4d0baaad9772edd7@mail.gmail.com> <49059BA4.7050807@redhat.com> Message-ID: <1225105433.3329.9.camel@dijkstra.wildebeest.org> On Mon, 2008-10-27 at 10:44 +0000, Andrew Haley wrote: > Oh, I'm on the notification list for that page and I didn't see anything. > Software.... Make sure that the page is actually on your watchlist and shows changes: http://icedtea.classpath.org/wiki/Special:Watchlist And that you have enabled email notification on changes in your preferences: http://icedtea.classpath.org/wiki/Special:Preferences If it still doesn't work let me know and I'll see if there are any hints in the mail log. Email seems so unreliable these days :( Cheers, Mark From doko at ubuntu.com Mon Oct 27 04:05:44 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Mon, 27 Oct 2008 11:05:44 +0000 Subject: changeset in /hg/icedtea6: 2008-10-27 Matthias Klose changeset 55a7a736bf3d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=55a7a736bf3d description: 2008-10-27 Matthias Klose * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is available. diffstat: 2 files changed, 11 insertions(+), 6 deletions(-) ChangeLog | 5 +++++ patches/icedtea-uname.patch | 12 ++++++------ diffs (46 lines): diff -r 7b4e0145155d -r 55a7a736bf3d ChangeLog --- a/ChangeLog Sat Oct 25 23:23:16 2008 +0200 +++ b/ChangeLog Mon Oct 27 12:05:29 2008 +0100 @@ -1,3 +1,8 @@ 2008-10-25 Matthias Klose + + * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is + available. + 2008-10-25 Matthias Klose * Makefile.am (clean-pulse-java): Remove object files. diff -r 7b4e0145155d -r 55a7a736bf3d patches/icedtea-uname.patch --- a/patches/icedtea-uname.patch Sat Oct 25 23:23:16 2008 +0200 +++ b/patches/icedtea-uname.patch Mon Oct 27 12:05:29 2008 +0100 @@ -1,10 +1,10 @@ ---- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-07-26 17:21:17.441295678 +0200 -+++ openjdk/jdk/make/common/shared/Platform.gmk 2008-07-26 17:30:24.589549285 +0200 +--- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-10-27 11:44:47.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Platform.gmk 2008-10-27 11:52:17.000000000 +0100 @@ -191,6 +191,9 @@ OS_VERSION := $(shell uname -r) # Arch and OS name/version mach := $(shell uname -m) -+ ifneq (,$(filter $(mach),mips s390 s390x)) ++ ifneq (,$(wildcard /usr/bin/dpkg-architecture)) + mach := $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) + endif archExpr = case "$(mach)" in \ @@ -20,13 +20,13 @@ *) \ echo $(mach) \ ;; \ ---- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-07-26 17:21:17.441295678 +0200 -+++ openjdk/corba/make/common/shared/Platform.gmk 2008-07-26 17:30:22.059511120 +0200 +--- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-10-27 11:44:47.000000000 +0100 ++++ openjdk/corba/make/common/shared/Platform.gmk 2008-10-27 11:53:01.000000000 +0100 @@ -181,6 +181,9 @@ OS_VERSION := $(shell uname -r) # Arch and OS name/version mach := $(shell uname -m) -+ ifneq (,$(filter $(mach),mips s390 s390x)) ++ ifneq (,$(wildcard /usr/bin/dpkg-architecture)) + mach := $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) + endif archExpr = case "$(mach)" in \ From mark at klomp.org Mon Oct 27 04:09:08 2008 From: mark at klomp.org (Mark Wielaard) Date: Mon, 27 Oct 2008 12:09:08 +0100 Subject: JCK Distilled In-Reply-To: <1225105171.16933.3.camel@cthalinger.lan> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <1225105171.16933.3.camel@cthalinger.lan> Message-ID: <1225105748.3329.13.camel@dijkstra.wildebeest.org> On Mon, 2008-10-27 at 11:59 +0100, Christian Thalinger wrote: > On Mon, 2008-10-27 at 10:36 +0000, Andrew John Hughes wrote: > > > Thanks, this is very helpful. I think there are some small typos, have > > > to reread it. > > Should I create an account myself (but it doesn't seem to work, maybe > because of the spamming lately) and fix the typos? I created an account for you. You should have received an email from the system about it. Apologies that this is done by hand these days. Indeed, too much spam otherwise :{ If anybody wants/needs an wiki account let me know. Cheers, Mark From twisti at complang.tuwien.ac.at Mon Oct 27 04:12:52 2008 From: twisti at complang.tuwien.ac.at (Christian Thalinger) Date: Mon, 27 Oct 2008 12:12:52 +0100 Subject: JCK Distilled In-Reply-To: <1225105748.3329.13.camel@dijkstra.wildebeest.org> References: <49009BFD.9030101@redhat.com> <1225099325.16933.0.camel@cthalinger.lan> <17c6771e0810270336v42949be6k8b84da6bbcab1d3d@mail.gmail.com> <1225105171.16933.3.camel@cthalinger.lan> <1225105748.3329.13.camel@dijkstra.wildebeest.org> Message-ID: <1225105972.16933.7.camel@cthalinger.lan> On Mon, 2008-10-27 at 12:09 +0100, Mark Wielaard wrote: > I created an account for you. You should have received an email from the > system about it. Apologies that this is done by hand these days. Indeed, > too much spam otherwise :{ Thanks, already got the email. - Christian From twisti at complang.tuwien.ac.at Mon Oct 27 05:26:45 2008 From: twisti at complang.tuwien.ac.at (Christian Thalinger) Date: Mon, 27 Oct 2008 13:26:45 +0100 Subject: forward-port IMPORT_BINARY_PLUGS to OpenJDK7 In-Reply-To: <17c6771e0810231015i42a3bff7se35774b77f0db861@mail.gmail.com> References: <1224601541.27098.8.camel@cthalinger.lan> <17c6771e0810220343i45ca18ubb2663db4bd31cd@mail.gmail.com> <1224672741.30850.12.camel@cthalinger.lan> <17c6771e0810220354k233b831t7212534e1515566a@mail.gmail.com> <1224673380.30850.19.camel@cthalinger.lan> <17c6771e0810220408g4d5c730ewb55eea4642cad85f@mail.gmail.com> <1224673855.30850.21.camel@cthalinger.lan> <17c6771e0810220416j77139573v2f1f0efacbb9b142@mail.gmail.com> <1224766213.3170.14.camel@cthalinger.lan> <4900A981.7000809@sun.com> <17c6771e0810231015i42a3bff7se35774b77f0db861@mail.gmail.com> Message-ID: <1225110405.16933.16.camel@cthalinger.lan> On Thu, 2008-10-23 at 18:15 +0100, Andrew John Hughes wrote: > This isn't Sun's rt-closed.jar, which is proprietary. This is a faked > version which > is part of the IcedTea build. However, on both IcedTea6 and IcedTea7 this only > includes SNMP and sound stubs (and the latter should probably be removed). > On IcedTea6, it also includes JNLP. We should look at enabling > IMPORT_BINARY_PLUGS=false on IcedTea so these stubs are not needed. Correct, sorry for the confusion. It started as an OpenJDK discussion but ended up in an IcedTea one. - Christian From mark at klomp.org Mon Oct 27 05:47:07 2008 From: mark at klomp.org (Mark Wielaard) Date: Mon, 27 Oct 2008 13:47:07 +0100 Subject: changeset in /hg/icedtea6: 2008-10-25 Matthias Klose References: Message-ID: <1225111627.3329.17.camel@dijkstra.wildebeest.org> Hi Matthias, On Sat, 2008-10-25 at 21:01 +0000, doko at ubuntu.com wrote: > changeset 4b16b588ba42 in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=4b16b588ba42 > description: > 2008-10-25 Matthias Klose > > * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. > * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in > PLUGIN_DESCRIPTION. Thanks! This will definitely help getting more accurate bug reports for the plugin. Everybody, if you see anybody reporting bugs against the plugin now please do ask them to type "about:plugins" and report the description line. Which should look something like: IcedTea Web Browser Plugin File name: IcedTeaPlugin.so The IcedTea Web Browser Plugin 1.3.1-r1158 executes Java applets. Cheers, Mark From doko at ubuntu.com Mon Oct 27 05:53:04 2008 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 27 Oct 2008 13:53:04 +0100 Subject: changeset in /hg/icedtea6: 2008-10-25 Matthias Klose References: <1225111627.3329.17.camel@dijkstra.wildebeest.org> Message-ID: <4905B9B0.9080808@ubuntu.com> Mark Wielaard schrieb: > Hi Matthias, > > On Sat, 2008-10-25 at 21:01 +0000, doko at ubuntu.com wrote: >> changeset 4b16b588ba42 in /hg/icedtea6 >> details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=4b16b588ba42 >> description: >> 2008-10-25 Matthias Klose >> >> * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. >> * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in >> PLUGIN_DESCRIPTION. > > Thanks! This will definitely help getting more accurate bug reports for > the plugin. > > Everybody, if you see anybody reporting bugs against the plugin now > please do ask them to type "about:plugins" and report the description > line. Which should look something like: > IcedTea Web Browser Plugin > File name: IcedTeaPlugin.so > The IcedTea Web Browser Plugin 1.3.1-r1158 executes Java > applets. plus distro builds should configure --with-pkgversion=. The Debian and Ubuntu builds are already doing this. Matthias From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 06:41:36 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 13:41:36 +0000 Subject: [Bug 232] New: Shark segfault in DaCapo luindex benchmark Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=232 Summary: Shark segfault in DaCapo luindex benchmark Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: gbenson at redhat.com Shark fails to run the DaCapo luindex benchmark, segfaulting after a while. There are several different places it can crash, but the common factor seems to be a Shark-compiled java.text.DateFormatSymbols.getInstance(Ljava/util/Locale;)Ljava/text/DateFormatSymbols; near the top of the stack. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 06:41:46 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 13:41:46 +0000 Subject: [Bug 232] Shark segfault in DaCapo luindex benchmark Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=232 gbenson at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|gbenson at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From gnu_andrew at member.fsf.org Mon Oct 27 07:15:51 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 14:15:51 +0000 Subject: changeset in /hg/icedtea: Quote checking output. Message-ID: changeset 0c1f4e6469c9 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=0c1f4e6469c9 description: Quote checking output. 2008-10-27 Andrew John Hughes * configure.ac: Quote checking output. diffstat: 2 files changed, 9 insertions(+), 4 deletions(-) ChangeLog | 5 +++++ configure.ac | 8 ++++---- diffs (51 lines): diff -r 18e44bb73935 -r 0c1f4e6469c9 ChangeLog --- a/ChangeLog Fri Oct 24 16:58:12 2008 +0100 +++ b/ChangeLog Mon Oct 27 14:15:38 2008 +0000 @@ -1,3 +1,8 @@ 2008-10-24 Andrew John Hughes + + * configure.ac: + Quote checking output. + 2008-10-24 Andrew John Hughes Merge from IcedTea6. diff -r 18e44bb73935 -r 0c1f4e6469c9 configure.ac --- a/configure.ac Fri Oct 24 16:58:12 2008 +0100 +++ b/configure.ac Mon Oct 27 14:15:38 2008 +0000 @@ -153,7 +153,7 @@ AM_CONDITIONAL(ENABLE_PULSE_JAVA, test " AM_CONDITIONAL(ENABLE_PULSE_JAVA, test "x${enable_pulse_java}" = "xyes") AC_MSG_RESULT(${enable_pulse_java}) -AC_MSG_CHECKING(whether to build documentation) +AC_MSG_CHECKING([whether to build documentation]) AC_ARG_ENABLE([docs], [AS_HELP_STRING([--disable-docs], [Disable generation of documentation])], @@ -161,7 +161,7 @@ AM_CONDITIONAL([ENABLE_DOCS], [test x$EN AM_CONDITIONAL([ENABLE_DOCS], [test x$ENABLE_DOCS = xyes]) AC_MSG_RESULT(${ENABLE_DOCS}) -AC_MSG_CHECKING(whether to build VisualVM) +AC_MSG_CHECKING([whether to build VisualVM]) AC_ARG_ENABLE([visualvm], [AS_HELP_STRING([--enable-visualvm], [Enable compilation of visualvm.])], @@ -192,7 +192,7 @@ AM_CONDITIONAL(WITH_ICEDTEA, test "${wit AM_CONDITIONAL(WITH_ICEDTEA, test "${with_icedtea}" = true) AC_MSG_RESULT(${with_icedtea}) -AC_MSG_CHECKING(whether to build using an existing installation of OpenJDK) +AC_MSG_CHECKING([whether to build using an existing installation of OpenJDK]) AC_ARG_WITH([openjdk], [AS_HELP_STRING([--with-openjdk], [build IcedTea with system-installed OpenJDK])], @@ -210,7 +210,7 @@ AM_CONDITIONAL(WITH_OPENJDK, test "${wit AM_CONDITIONAL(WITH_OPENJDK, test "${with_openjdk}" = true) AC_MSG_RESULT(${with_openjdk}) -AC_MSG_CHECKING(how many parallel build jobs to execute) +AC_MSG_CHECKING([how many parallel build jobs to execute]) AC_ARG_WITH([parallel-jobs], [AS_HELP_STRING([--with-parallel-jobs], [build IcedTea using the specified number of parallel jobs])], From mark at klomp.org Mon Oct 27 07:52:46 2008 From: mark at klomp.org (Mark Wielaard) Date: Mon, 27 Oct 2008 14:52:46 +0000 Subject: changeset in /hg/icedtea6: * patches/icedtea-renderer-crossing.p... Message-ID: changeset fda32eba4b37 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=fda32eba4b37 description: * patches/icedtea-renderer-crossing.patch: New patch. * Makefile.am (ICEDTEA_PATCHES): Add new patch. * HACKING: Document new patch. diffstat: 4 files changed, 25 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ HACKING | 2 ++ Makefile.am | 3 ++- patches/icedtea-renderer-crossing.patch | 15 +++++++++++++++ diffs (57 lines): diff -r 55a7a736bf3d -r fda32eba4b37 ChangeLog --- a/ChangeLog Mon Oct 27 12:05:29 2008 +0100 +++ b/ChangeLog Mon Oct 27 15:52:37 2008 +0100 @@ -1,3 +1,9 @@ 2008-10-27 Matthias Klose + + * patches/icedtea-renderer-crossing.patch: New patch. + * Makefile.am (ICEDTEA_PATCHES): Add new patch. + * HACKING: Document new patch. + 2008-10-27 Matthias Klose * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is diff -r 55a7a736bf3d -r fda32eba4b37 HACKING --- a/HACKING Mon Oct 27 12:05:29 2008 +0100 +++ b/HACKING Mon Oct 27 15:52:37 2008 +0100 @@ -62,6 +62,8 @@ The following patches are currently appl * icedtea-arch.patch: Add support for additional architectures. * icedtea-alt-jar.patch: Add support for using an alternate jar tool in JDK building. * icedtea-hotspot7-tests.patch: Adds hotspot compiler tests from jdk7 tree. +* patches/icedtea-renderer-crossing.patch: Check whether crossing is + initialized in Pisces Renderer. The following patches are only applied to OpenJDK6 in IcedTea6: diff -r 55a7a736bf3d -r fda32eba4b37 Makefile.am --- a/Makefile.am Mon Oct 27 12:05:29 2008 +0100 +++ b/Makefile.am Mon Oct 27 15:52:37 2008 +0100 @@ -533,7 +533,8 @@ ICEDTEA_PATCHES = \ patches/icedtea-6open-6756202.patch \ $(VISUALVM_PATCH) \ patches/icedtea-javac-debuginfo.patch \ - patches/icedtea-xjc.patch + patches/icedtea-xjc.patch \ + patches/icedtea-renderer-crossing.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 55a7a736bf3d -r fda32eba4b37 patches/icedtea-renderer-crossing.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-renderer-crossing.patch Mon Oct 27 15:52:37 2008 +0100 @@ -0,0 +1,15 @@ +--- openjdk6/jdk/src/share/classes/sun/java2d/pisces/Renderer.java 2008-08-28 10:14:15.000000000 +0200 ++++ openjdk/jdk/src/share/classes/sun/java2d/pisces/Renderer.java 2008-10-27 13:54:25.000000000 +0100 +@@ -775,10 +775,10 @@ + + // Free sorting arrays if larger than maximum size + private void crossingListFinished() { +- if (crossings.length > DEFAULT_CROSSINGS_SIZE) { ++ if (crossings != null && crossings.length > DEFAULT_CROSSINGS_SIZE) { + crossings = new int[DEFAULT_CROSSINGS_SIZE]; + } +- if (crossingIndices.length > DEFAULT_INDICES_SIZE) { ++ if (crossingIndices != null && crossingIndices.length > DEFAULT_INDICES_SIZE) { + crossingIndices = new int[DEFAULT_INDICES_SIZE]; + } + } From mark at klomp.org Mon Oct 27 07:53:32 2008 From: mark at klomp.org (Mark Wielaard) Date: Mon, 27 Oct 2008 15:53:32 +0100 Subject: Bug in pisces Renderer (uninitialized crossings) Message-ID: <1225119212.3329.29.camel@dijkstra.wildebeest.org> Hi, There is a bug in the pisces Renderer in crossingListFinished(). Both crossings and crossingIndices might not have been initialized, so have to be checked for being null. They only get initialized if setCrossingsExtents() was called earlier, which might not always be the case when crossingListFinished() is called from _endRendering(). You can see this with for example this applet (you will need to have the IcedTeaPlugin installed): http://www.jroller.com/dgilbert/entry/jfreechart_and_jxlayer The magnifying glass will not work, and you will get an exception: Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at sun.java2d.pisces.Renderer.crossingListFinished(Renderer.java:778) at sun.java2d.pisces.Renderer._endRendering(Renderer.java:466) at sun.java2d.pisces.Renderer.endRendering(Renderer.java:478) at sun.java2d.pisces.PiscesRenderingEngine.getAATileGenerator(PiscesRenderingEngine.java:327) at sun.java2d.pipe.AAShapePipe.renderPath(AAShapePipe.java:93) at sun.java2d.pipe.AAShapePipe.fill(AAShapePipe.java:65) at sun.java2d.pipe.ValidatePipe.fill(ValidatePipe.java:160) at sun.java2d.SunGraphics2D.fill(SunGraphics2D.java:2422) at org.jfree.chart.plot.Plot.fillBackground(Plot.java:1021) [...] Attached is the workaround that I checked into IcedTea to make this work reliably: 2008-10-27 Mark Wielaard * patches/icedtea-renderer-crossing.patch: New patch. * Makefile.am (ICEDTEA_PATCHES): Add new patch. * HACKING: Document new patch. Cheers, Mark -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-renderer-crossing.patch Type: text/x-patch Size: 765 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081027/671623c5/icedtea-renderer-crossing.patch From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 08:22:14 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 15:22:14 +0000 Subject: [Bug 194] ClassNotFoundException loading applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=194 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- BugsThisDependsOn| |233 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 08:22:45 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 15:22:45 +0000 Subject: [Bug 194] ClassNotFoundException loading applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=194 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- BugsThisDependsOn|233 | Status|NEW |ASSIGNED ------- Comment #2 from dbhole at redhat.com 2008-10-27 15:22 ------- This issue is due to a missing feature in the new plugin. I have created a new bug for this, and this bug depends on that one: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=233 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 08:46:01 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 15:46:01 +0000 Subject: [Bug 228] Since I have installed Mandriva 2009, brutal breakdown of my eclipse 3.3.2 platform with JDK 1.6. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=228 ------- Comment #1 from matthew.flaschen at gatech.edu 2008-10-27 15:46 ------- You're not using JDK 1.6. You're using OpenJDK 1.6, otherwise known as IcedTea6. This bug report isn't that helpful, since you haven't said what code produces the error. Is it just launching Eclipse, or what? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Mon Oct 27 12:25:52 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Mon, 27 Oct 2008 19:25:52 +0000 Subject: changeset in /hg/icedtea6: - Fix address pointer integer overflo... Message-ID: changeset 1eb6a720a6be in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1eb6a720a6be description: - Fix address pointer integer overflow on 64-bit systems. - Set cache dir to be local to each user (~/.icedteaplugin/cache). - Apply patch from Tom Fitzsimmons for Bug# 230. diffstat: 4 files changed, 20 insertions(+), 13 deletions(-) ChangeLog | 9 +++++++++ IcedTeaPlugin.cc | 8 ++++---- plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 12 ++++++------ plugin/icedtea/sun/applet/PluginAppletViewer.java | 4 +--- diffs (116 lines): diff -r fda32eba4b37 -r 1eb6a720a6be ChangeLog --- a/ChangeLog Mon Oct 27 15:52:37 2008 +0100 +++ b/ChangeLog Mon Oct 27 12:13:21 2008 -0400 @@ -1,3 +1,12 @@ 2008-10-27 Mark Wielaard + + * IcedTeaPlugin.cc: Fix address pointer integer overflow on 64-bit + systems. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Set cache + dir to be local to each user (~/.icedteaplugin/cache). + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Apply patch from Tom + Fitzsimmons for Bug# 230. + 2008-10-27 Mark Wielaard * patches/icedtea-renderer-crossing.patch: New patch. diff -r fda32eba4b37 -r 1eb6a720a6be IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Oct 27 15:52:37 2008 +0100 +++ b/IcedTeaPlugin.cc Mon Oct 27 12:13:21 2008 -0400 @@ -448,7 +448,7 @@ char const* TYPES[10] = { "Object", #define MESSAGE_ADD_SIZE(size) \ message += " "; \ - message.AppendInt (size); + message.AppendInt ((PRUintn) size); // Pass character value through socket as an integer. #define MESSAGE_ADD_TYPE(type) \ @@ -3888,7 +3888,7 @@ IcedTeaPluginInstance::GetWindow () message += " "; message += "JavaScriptGetWindow"; message += " "; - message.AppendInt (liveconnect_window); + message.AppendInt ((PRUintn) liveconnect_window); factory->SendMessageToAppletViewer (message); } @@ -4606,7 +4606,7 @@ IcedTeaJNIEnv::ValueString (jni_type typ retstr.AppendInt (value.i); break; case jlong_type: - retstr.AppendInt (value.j); + retstr.AppendInt ((PRUintn) value.j); break; case jfloat_type: retstr += IcedTeaPrintfCString ("%f", value.f); @@ -4735,7 +4735,7 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv retstr.AppendInt (args[arg].i); break; case 'J': - retstr.AppendInt (args[arg].j); + retstr.AppendInt ((PRUintn) args[arg].j); break; case 'F': retstr += IcedTeaPrintfCString ("%f", args[arg].f); diff -r fda32eba4b37 -r 1eb6a720a6be plugin/icedtea/sun/applet/PluginAppletSecurityContext.java --- a/plugin/icedtea/sun/applet/PluginAppletSecurityContext.java Mon Oct 27 15:52:37 2008 +0100 +++ b/plugin/icedtea/sun/applet/PluginAppletSecurityContext.java Mon Oct 27 12:13:21 2008 -0400 @@ -37,14 +37,12 @@ exception statement from your version. * package sun.applet; -import java.awt.AWTPermission; -import java.io.FilePermission; +import java.io.File; import java.lang.reflect.Array; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.net.MalformedURLException; -import java.net.SocketPermission; import java.net.URL; import java.security.AccessControlContext; import java.security.AccessControlException; @@ -52,15 +50,12 @@ import java.security.AllPermission; import java.security.AllPermission; import java.security.BasicPermission; import java.security.CodeSource; -import java.security.PermissionCollection; import java.security.Permissions; -import java.security.Policy; import java.security.PrivilegedAction; import java.security.ProtectionDomain; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.PropertyPermission; import net.sourceforge.jnlp.runtime.JNLPRuntime; @@ -244,6 +239,11 @@ public class PluginAppletSecurityContext public PluginAppletSecurityContext(int identifier) { this.identifier = identifier; + // also, override the basedir, use a different one for the plugin + File f = new File(System.getProperty("user.home") + "/.icedteaplugin/"); + f.mkdir(); + JNLPRuntime.setBaseDir(f); + // We need a security manager.. and since there is a good chance that // an applet will be loaded at some point, we should make it the SM // that JNLPRuntime will try to install diff -r fda32eba4b37 -r 1eb6a720a6be plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Mon Oct 27 15:52:37 2008 +0100 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Mon Oct 27 12:13:21 2008 -0400 @@ -1266,9 +1266,7 @@ import sun.misc.Ref; val = buf.toString(); } PluginDebug.debug("PUT " + att + " = '" + val + "'"); - if (! val.equals("")) { - atts.put(att.toLowerCase(java.util.Locale.ENGLISH), val); - } + atts.put(att.toLowerCase(java.util.Locale.ENGLISH), val); while (true) { if ((c == '>') || (c < 0) || ((c >= 'a') && (c <= 'z')) || From dbhole at redhat.com Mon Oct 27 12:29:52 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Mon, 27 Oct 2008 15:29:52 -0400 Subject: changeset in /hg/icedtea6: 2008-10-25 Matthias Klose References: <1225111627.3329.17.camel@dijkstra.wildebeest.org> Message-ID: <20081027192952.GB32344@redhat.com> * Mark Wielaard [2008-10-27 08:47]: > Hi Matthias, > > On Sat, 2008-10-25 at 21:01 +0000, doko at ubuntu.com wrote: > > changeset 4b16b588ba42 in /hg/icedtea6 > > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=4b16b588ba42 > > description: > > 2008-10-25 Matthias Klose > > > > * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. > > * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in > > PLUGIN_DESCRIPTION. > > Thanks! This will definitely help getting more accurate bug reports for > the plugin. > Seconded. Especially helpful when people are testing out the trunk ... Thanks! Deepak > Everybody, if you see anybody reporting bugs against the plugin now > please do ask them to type "about:plugins" and report the description > line. Which should look something like: > IcedTea Web Browser Plugin > File name: IcedTeaPlugin.so > The IcedTea Web Browser Plugin 1.3.1-r1158 executes Java > applets. > > Cheers, > > Mark > From langel at redhat.com Mon Oct 27 12:34:08 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 27 Oct 2008 15:34:08 -0400 Subject: changeset in /hg/icedtea6: 2008-10-25 Matthias Klose References: <1225111627.3329.17.camel@dijkstra.wildebeest.org> <4905B9B0.9080808@ubuntu.com> Message-ID: <490617B0.1070209@redhat.com> Matthias Klose wrote: > Mark Wielaard schrieb: > >> Hi Matthias, >> >> On Sat, 2008-10-25 at 21:01 +0000, doko at ubuntu.com wrote: >> >>> changeset 4b16b588ba42 in /hg/icedtea6 >>> details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=4b16b588ba42 >>> description: >>> 2008-10-25 Matthias Klose >>> >>> * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. >>> * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in >>> PLUGIN_DESCRIPTION. >>> >> Thanks! This will definitely help getting more accurate bug reports for >> the plugin. >> >> Everybody, if you see anybody reporting bugs against the plugin now >> please do ask them to type "about:plugins" and report the description >> line. Which should look something like: >> IcedTea Web Browser Plugin >> File name: IcedTeaPlugin.so >> The IcedTea Web Browser Plugin 1.3.1-r1158 executes Java >> applets. >> > > plus distro builds should configure --with-pkgversion=. The Debian and > Ubuntu builds are already doing this. > I am going to add this into the build right now. Thanks! Lillian From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 12:44:10 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 19:44:10 +0000 Subject: [Bug 234] New: HotSpot version should be shown in java -version invocation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=234 Summary: HotSpot version should be shown in java -version invocation Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: mlists at juma.me.uk mjw asked me to file this, so here it goes. The output of java -version for java-1.6.0-openjdk-1.6.0.0-0.18.b09.fc9.x86_64 in Fedora 9 is: java version "1.6.0" OpenJDK Runtime Environment (build 1.6.0-b09) OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode) The output of java -version for JDK6 Update 10 (proprietary) is: java version "1.6.0_10" Java(TM) SE Runtime Environment (build 1.6.0_10-b33) Java HotSpot(TM) Server VM (build 11.0-b15, mixed mode) The HotSpot version (11.0-b15) is missing from the IcedTea/OpenJDK output and that information is quite useful to have. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 12:46:20 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 19:46:20 +0000 Subject: [Bug 234] HotSpot version should be shown in java -version invocation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=234 ------- Comment #1 from mlists at juma.me.uk 2008-10-27 19:46 ------- It doesn't really change anything, but just to avoid confusion, the output for JDK6 Update 10 64-bit is: java version "1.6.0_10" Java(TM) SE Runtime Environment (build 1.6.0_10-b33) Java HotSpot(TM) 64-Bit Server VM (build 11.0-b15, mixed mode) In the original description, the 32-bit version had been used. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From langel at redhat.com Mon Oct 27 12:53:29 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 27 Oct 2008 19:53:29 +0000 Subject: changeset in /hg/icedtea6: 2008-10-27 Lillian Angel changeset be368b1e3c7d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=be368b1e3c7d description: 2008-10-27 Lillian Angel * NEWS: Updated for 1.3.1 release. diffstat: 2 files changed, 13 insertions(+) ChangeLog | 4 ++++ NEWS | 9 +++++++++ diffs (27 lines): diff -r 1eb6a720a6be -r be368b1e3c7d ChangeLog --- a/ChangeLog Mon Oct 27 12:13:21 2008 -0400 +++ b/ChangeLog Mon Oct 27 15:53:21 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-27 Deepak Bhole + + * NEWS: Updated for 1.3.1 release. + 2008-10-27 Deepak Bhole * IcedTeaPlugin.cc: Fix address pointer integer overflow on 64-bit diff -r 1eb6a720a6be -r be368b1e3c7d NEWS --- a/NEWS Mon Oct 27 12:13:21 2008 -0400 +++ b/NEWS Mon Oct 27 15:53:21 2008 -0400 @@ -1,3 +1,12 @@ New in release 1.3 (2008-10-15) +New in release 1.3.1 (2008-10-27) + +- Plugin including LiveConnect support built as default. +- Various bugs fixed: renderer patch, version string updated, +chinese fonts filename fix for Fedora etc. +- More progress on Shark and Cacao. +- Several plugin bug fixes. +- Several build fixes. + New in release 1.3 (2008-10-15) - Updated to b12 build. From langel at redhat.com Mon Oct 27 12:53:43 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 27 Oct 2008 19:53:43 +0000 Subject: changeset in /hg/icedtea6: Added tag icedtea6-1.3.1 for changese... Message-ID: changeset f31cffd9e5c8 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f31cffd9e5c8 description: Added tag icedtea6-1.3.1 for changeset be368b1e3c7d diffstat: 1 file changed, 1 insertion(+) .hgtags | 1 + diffs (8 lines): diff -r be368b1e3c7d -r f31cffd9e5c8 .hgtags --- a/.hgtags Mon Oct 27 15:53:21 2008 -0400 +++ b/.hgtags Mon Oct 27 15:53:39 2008 -0400 @@ -9,3 +9,4 @@ a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 a5c32475a2e87f0f3bd7af28e632e6bd4f724b04 icedtea6-1.1 871b70407a139c6bd42c200762ee1d302b31168f icedtea6-1.2 3ef9c9c4e70b8204b73fa9b88243f49f59c2a23f icedtea6-1.3 +be368b1e3c7dca9b4dfe8e8f40be794ecfbef22e icedtea6-1.3.1 From langel at redhat.com Mon Oct 27 12:56:09 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 27 Oct 2008 19:56:09 +0000 Subject: changeset in /hg/icedtea6: 2008-10-27 Lillian Angel changeset ecfb2532387c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ecfb2532387c description: 2008-10-27 Lillian Angel * configure.ac: Updated version to 1.4. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ configure.ac | 2 +- diffs (21 lines): diff -r f31cffd9e5c8 -r ecfb2532387c ChangeLog --- a/ChangeLog Mon Oct 27 15:53:39 2008 -0400 +++ b/ChangeLog Mon Oct 27 15:56:05 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-27 Lillian Angel + + * configure.ac: Updated version to 1.4. + 2008-10-27 Lillian Angel * NEWS: Updated for 1.3.1 release. diff -r f31cffd9e5c8 -r ecfb2532387c configure.ac --- a/configure.ac Mon Oct 27 15:53:39 2008 -0400 +++ b/configure.ac Mon Oct 27 15:56:05 2008 -0400 @@ -1,5 +1,5 @@ AC_PREREQ([2.61]) AC_PREREQ([2.61]) -AC_INIT([icedtea6], [1.3.1], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6], [1.4], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.10 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) AC_CANONICAL_HOST From gnu_andrew at member.fsf.org Mon Oct 27 13:09:53 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 20:09:53 +0000 Subject: changeset in /hg/icedtea: Bump to b38. Message-ID: changeset 7ff57d37137f in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=7ff57d37137f description: Bump to b38. 2008-10-27 Andrew John Hughes * patches/icedtea-license-headers.patch, * patches/icedtea-timerqueue.patch: Removed, now obsolete for IcedTea7. * HACKING: Updated. * Makefile.am: Bump to b38. diffstat: 5 files changed, 13 insertions(+), 106 deletions(-) ChangeLog | 8 +++ HACKING | 4 - Makefile.am | 8 +-- patches/icedtea-license-headers.patch | 81 --------------------------------- patches/icedtea-timerqueue.patch | 18 ------- diffs (183 lines): diff -r 0c1f4e6469c9 -r 7ff57d37137f ChangeLog --- a/ChangeLog Mon Oct 27 14:15:38 2008 +0000 +++ b/ChangeLog Mon Oct 27 20:09:41 2008 +0000 @@ -1,3 +1,11 @@ 2008-10-27 Andrew John Hughes + + * patches/icedtea-license-headers.patch, + * patches/icedtea-timerqueue.patch: + Removed, now obsolete for IcedTea7. + * HACKING: Updated. + * Makefile.am: Bump to b38. + 2008-10-27 Andrew John Hughes * configure.ac: diff -r 0c1f4e6469c9 -r 7ff57d37137f HACKING --- a/HACKING Mon Oct 27 14:15:38 2008 +0000 +++ b/HACKING Mon Oct 27 20:09:41 2008 +0000 @@ -9,7 +9,6 @@ included in the tarball resulting from t * icedtea-idl.patch: Fix IDL licenses (PR141/S6695776). * icedtea-jscheme.patch: Replace use of jscheme.jar with Java alternative (PR140/S6695776). -* icedtea-license-headers.patch: Generate GPL header from automulti tool (PR148/S6713083). The fsg.sh script is also run to delete certain files with dubious licensing and/or only occuring in binary format. @@ -53,7 +52,6 @@ The following patches are currently appl * icedtea-static-libstdc++.patch: Don't use static C++ on PPC64. * icedtea-sunsrc.patch: Remove service property files from TOOLS list. * icedtea-text-relocations.patch: Use correct -fPIC/-fpic flag on all platforms. -* icedtea-timerqueue.patch: Fix setting of running variable (PR87). * icedtea-tools.patch: Remove DebugHelperHelper and add sources in make/java/awt/Makefile to fix build of jvmti. * icedtea-use-system-tzdata.patch: Use timezone data from the system (PR70/S6593486). * icedtea-version.patch: Replace name and bug URL with IcedTea versions. @@ -78,6 +76,7 @@ The following patches are only applied t * icedtea-lucene-crash.patch: Fix lucene bad code generation bug #6707044. * icedtea-6700047-loopopts.patch: Fix partial peeling issue, bug #6700047. * icedtea-6712835-ifnode.patch: Fix infinite loop in PhaseIterGVN::transform. +* icedtea-timerqueue.patch: Fix setting of running variable (PR87/S6623943). The following patches are only applied to OpenJDK in IcedTea: @@ -159,3 +158,4 @@ XSL file (S6707485): Included upstream i XSL file (S6707485): Included upstream in OpenJDK7 b29/hs13. * openjdk-color.patch: Include Free java.awt.color and java.awt.image (S6662775): Included upstream in OpenJDK6 b06 and OpenJDK7 b28. +* icedtea-license-headers.patch: Generate GPL header from automulti tool (PR148/S6713083). diff -r 0c1f4e6469c9 -r 7ff57d37137f Makefile.am --- a/Makefile.am Mon Oct 27 14:15:38 2008 +0000 +++ b/Makefile.am Mon Oct 27 20:09:41 2008 +0000 @@ -1,6 +1,6 @@ OPENJDK_DATE = 09_oct_2008 -OPENJDK_DATE = 09_oct_2008 -OPENJDK_MD5SUM = 979a7f60de588f1f416657d41ad5e63c -OPENJDK_VERSION = b37 +OPENJDK_DATE = 23_oct_2008 +OPENJDK_MD5SUM = 2893ceeae804ce4f7e268388afed3449 +OPENJDK_VERSION = b38 CACAO_VERSION = 0.99.3 CACAO_MD5SUM = 80de3ad344c1a20c086ec5f1390bd1b8 @@ -521,7 +521,6 @@ endif endif ICEDTEA_FSG_PATCHES = \ - patches/icedtea-license-headers.patch \ patches/icedtea-idl.patch \ patches/icedtea-jscheme.patch @@ -551,7 +550,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-core-build.patch \ patches/icedtea-linker-options.patch \ patches/icedtea-static-libstdc++.patch \ - patches/icedtea-timerqueue.patch \ patches/icedtea-lib64.patch \ patches/icedtea-zero-build.patch \ patches/icedtea-print-lsb-release.patch \ diff -r 0c1f4e6469c9 -r 7ff57d37137f patches/icedtea-license-headers.patch --- a/patches/icedtea-license-headers.patch Mon Oct 27 14:15:38 2008 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ ---- ../opienjdkb23/openjdk/jdk/make/tools/src/build/tools/automulti/AutoMulti.java 2007-10-30 04:39:58.000000000 -0400 -+++ openjdk/jdk/make/tools/src/build/tools/automulti/AutoMulti.java 2007-11-13 13:09:08.000000000 -0500 -@@ -99,15 +99,30 @@ - */ - public static StringBuffer createPreamble(String prefixName) { - StringBuffer s = new StringBuffer(); -- s.append("/*\n"); -+ s.append("/* Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved.\n"); -+ s.append(" * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.\n"); - s.append(" *\n"); -- s.append(" * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved.\n"); -- s.append(" * \n"); -- s.append(" * This software is the proprietary information of Sun Microsystems, Inc. \n"); -- s.append(" * Use is subject to license terms.\n"); -- s.append(" * \n"); -+ s.append(" * This code is free software; you can redistribute it and/or modify it\n"); -+ s.append(" * under the terms of the GNU General Public License version 2 only, as\n"); -+ s.append(" * published by the Free Software Foundation. Sun designates this\n"); -+ s.append(" * particular file as subject to the \"Classpath\" exception as provided\n"); -+ s.append(" * by Sun in the LICENSE file that accompanied this code.\n"); -+ s.append(" *\n"); -+ s.append(" * This code is distributed in the hope that it will be useful, but WITHOUT\n"); -+ s.append(" * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n"); -+ s.append(" * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License\n"); -+ s.append(" * version 2 for more details (a copy is included in the LICENSE file that\n"); -+ s.append(" * accompanied this code).\n"); -+ s.append(" *\n"); -+ s.append(" * You should have received a copy of the GNU General Public License version\n"); -+ s.append(" * 2 along with this work; if not, write to the Free Software Foundation,\n"); -+ s.append(" * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.\n"); -+ s.append(" *\n"); -+ s.append(" * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,\n"); -+ s.append(" * CA 95054 USA or visit www.sun.com if you need additional information or\n"); -+ s.append(" * have any questions.\n"); - s.append(" */\n"); -- s.append("package " + prefixName + ".swing.plaf.multi;\n"); -+ s.append("package " + prefixName + ".swing.plaf.multi;\n"); - s.append("\n"); - return s; - } ---- ../opeiinjdkb23/openjdk/jdk/make/tools/src/build/tools/automulti/TestALFGenerator.java 2007-10-30 04:39:58.000000000 -0400 -+++ openjdk/jdk/make/tools/src/build/tools/automulti/TestALFGenerator.java 2007-11-13 13:10:19.000000000 -0500 -@@ -102,15 +102,29 @@ - */ - public static StringBuffer createPreamble(String prefixName) { - StringBuffer s = new StringBuffer(); -- s.append("/*\n"); -- s.append(" *\n"); -- s.append(" * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved.\n"); -- s.append(" * \n"); -- s.append(" * This software is the proprietary information of Sun Microsystems, Inc. \n"); -- s.append(" * Use is subject to license terms.\n"); -- s.append(" * \n"); -- s.append(" */\n"); -- if (packageName != null) { -+ s.append("/* Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved.\n"); -+ s.append(" * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.\n"); -+ s.append(" *\n"); -+ s.append(" * under the terms of the GNU General Public License version 2 only, as\n"); -+ s.append(" * published by the Free Software Foundation. Sun designates this\n"); -+ s.append(" * particular file as subject to the \"Classpath\" exception as provided\n"); -+ s.append(" * by Sun in the LICENSE file that accompanied this code.\n"); -+ s.append(" *\n"); -+ s.append(" * This code is distributed in the hope that it will be useful, but WITHOUT\n"); -+ s.append(" * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n"); -+ s.append(" * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License\n"); -+ s.append(" * version 2 for more details (a copy is included in the LICENSE file that\n"); -+ s.append(" * accompanied this code).\n"); -+ s.append(" *\n"); -+ s.append(" * You should have received a copy of the GNU General Public License version\n"); -+ s.append(" * 2 along with this work; if not, write to the Free Software Foundation,\n"); -+ s.append(" * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.\n"); -+ s.append(" *\n"); -+ s.append(" * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,\n"); -+ s.append(" * CA 95054 USA or visit www.sun.com if you need additional information or\n"); -+ s.append(" * have any questions.\n"); -+ s.append(" */\n"); -+ if (packageName != null) { - s.append("package " + packageName + ";\n"); - s.append("\n"); - } diff -r 0c1f4e6469c9 -r 7ff57d37137f patches/icedtea-timerqueue.patch --- a/patches/icedtea-timerqueue.patch Mon Oct 27 14:15:38 2008 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ ---- TimerQueue.java.orig 2007-12-13 14:08:33.000000000 -0500 -+++ openjdk/jdk/src/share/classes/javax/swing/TimerQueue.java 2007-12-13 14:08:52.000000000 -0500 -@@ -106,7 +106,6 @@ - return null; - } - }); -- running = true; - } - } - -@@ -164,6 +163,7 @@ - - - public void run() { -+ running = true; - try { - while (running) { - try { From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 13:12:46 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 20:12:46 +0000 Subject: [Bug 234] HotSpot version should be shown in java -version invocation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=234 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED ------- Comment #2 from gnu_andrew at member.fsf.org 2008-10-27 20:12 ------- This is because for some reason we are setting HOTSPOT_RELEASE_VERSION and overridding the HotSpot version (which is HS_MAJOR_VER.HS_MINOR_VER etc.) Testing a patch on IcedTea7. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 13:21:05 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 20:21:05 +0000 Subject: [Bug 235] New: Zero/Shark doesn't correctly replace HotSpot in IcedTea6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=235 Summary: Zero/Shark doesn't correctly replace HotSpot in IcedTea6 Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: gnu_andrew at member.fsf.org Our patch to bump HotSpot to the OpenJDK7 b24 version only changes the src. This means that it doesn't replace the makefiles and thus we keep the old version number (10.0 b19) rather than reporting the correct one. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From langel at redhat.com Mon Oct 27 13:21:42 2008 From: langel at redhat.com (Lillian Angel) Date: Mon, 27 Oct 2008 16:21:42 -0400 Subject: IcedTea 1.3.1 Released! Message-ID: <490622D6.5030700@redhat.com> We are proud to announce the release of IcedTea6 1.3.1. The IcedTea6 project provides a harness to build the source code from OpenJDK6 (http://openjdk.java.net) using Free Software build tools. 1.3.1 marks the first stable release of the new IcedTea Web Browser Plugin. The most prominent feature of the new plugin is Liveconnect support, which enables JavaScript from the browser to access the Java Virtual Machine. What's New? ----------------- - Updated to b12 build. - Plugin including LiveConnect support built as default. - Various bugs fixed: renderer patch, version string updated, chinese fonts filename fix for Fedora etc. - More progress on Shark and Cacao. - Several plugin bug and build fixes: (http://icedtea.classpath.org/bugzilla/ and https://bugzilla.redhat.com/). ----------------- The tarball and nosrc RPM can be downloaded here: http://icedtea.classpath.org/download/fedora/java-1.6.0-openjdk-1.6.0.0-2b12.fc10.nosrc.rpm http://icedtea.classpath.org/download/source/icedtea6-1.3.1.tar.gz The following people helped with this release: Gary Benson, Deepak Bhole, Alon Bar-Lev, Thomas Fitzsimmons, Andrew Haley, Andrew John Hughes, Ioana Ivan, Matthias Klose, Omair Majid, Xerxes Ranby, Christian Thalinger, Mark Wielaard, Lillian Angel We would also like to thank the bug reporters and testers! To get started: $ hg clone http://icedtea.classpath.org/hg/icedtea6 $ cd icedtea6 Full build requirements and instructions are in INSTALL: $ ./configure $ make The new package has been built into Fedora 10 (rawhide) and should appear in the yum repositories in a couple of days. From gnu_andrew at member.fsf.org Mon Oct 27 13:42:06 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 20:42:06 +0000 Subject: changeset in /hg/icedtea: Fix hiding of HotSpot versioning. Message-ID: changeset 8b55dca31ecb in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8b55dca31ecb description: Fix hiding of HotSpot versioning. 2008-10-27 Andrew John Hughes PR icedtea/234: * Makefile.am: Don't force the HotSpot release version to be the JDK release version so the HotSpot versioning is revealed. diffstat: 2 files changed, 8 insertions(+), 2 deletions(-) ChangeLog | 8 ++++++++ Makefile.am | 2 -- diffs (34 lines): diff -r 7ff57d37137f -r 8b55dca31ecb ChangeLog --- a/ChangeLog Mon Oct 27 20:09:41 2008 +0000 +++ b/ChangeLog Mon Oct 27 20:41:55 2008 +0000 @@ -1,3 +1,11 @@ 2008-10-27 Andrew John Hughes + + PR icedtea/234: + * Makefile.am: + Don't force the HotSpot release version + to be the JDK release version so the HotSpot + versioning is revealed. + 2008-10-27 Andrew John Hughes * patches/icedtea-license-headers.patch, diff -r 7ff57d37137f -r 8b55dca31ecb Makefile.am --- a/Makefile.am Mon Oct 27 20:09:41 2008 +0000 +++ b/Makefile.am Mon Oct 27 20:41:55 2008 +0000 @@ -140,7 +140,6 @@ ICEDTEA_ENV = \ "BUILD_NUMBER=$(OPENJDK_VERSION)" \ "JDK_UPDATE_VERSION=$(JDK_UPDATE_VERSION)" \ "JRE_RELEASE_VERSION=1.7.0_$(COMBINED_VERSION)" \ - "HOTSPOT_RELEASE_VERSION=1.7.0_$(COMBINED_VERSION)" \ "LANG=C" \ "PATH=$(abs_top_builddir)/bootstrap/jdk1.6.0/bin:/usr/bin:/bin:/usr/sbin:/sbin" \ "ALT_BOOTDIR=$(ICEDTEA_BOOT_DIR)" \ @@ -210,7 +209,6 @@ ICEDTEA_ENV_ECJ = \ "BUILD_NUMBER=$(OPENJDK_VERSION)" \ "JDK_UPDATE_VERSION=$(JDK_UPDATE_VERSION)" \ "JRE_RELEASE_VERSION=1.7.0_$(COMBINED_VERSION)" \ - "HOTSPOT_RELEASE_VERSION=1.7.0_$(COMBINED_VERSION)" \ "LANG=C" \ "PATH=$(abs_top_builddir)/bootstrap/jdk1.6.0/bin:/usr/bin:/bin:/usr/sbin:/sbin" \ "ALT_BOOTDIR=$(ICEDTEA_BOOT_DIR)" \ From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 13:53:14 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 20:53:14 +0000 Subject: [Bug 87] Icedtea 1.7.0 and SwingWorker problem Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=87 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED | ------- Comment #9 from gnu_andrew at member.fsf.org 2008-10-27 20:53 ------- A (related) fix seems to have been applied to OpenJDK7: http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/fc09152d5cf6 Should we backport this? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 14:18:18 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 21:18:18 +0000 Subject: [Bug 234] HotSpot version should be shown in java -version invocation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=234 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED ------- Comment #3 from gnu_andrew at member.fsf.org 2008-10-27 21:18 ------- changeset 8b55dca31ecb in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8b55dca31ecb description: Fix hiding of HotSpot versioning. 2008-10-27 Andrew John Hughes PR icedtea/234: * Makefile.am: Don't force the HotSpot release version to be the JDK release version so the HotSpot versioning is revealed. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gnu_andrew at member.fsf.org Mon Oct 27 14:17:31 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 21:17:31 +0000 Subject: changeset in /hg/icedtea6: Fix hiding of HotSpot version number. Message-ID: changeset 6816e84bfc28 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=6816e84bfc28 description: Fix hiding of HotSpot version number. 2008-10-27 Andrew John Hughes PR icedtea/234: * Makefile.am: Don't force the HotSpot release version to be the JDK release version so the HotSpot versioning is revealed. diffstat: 2 files changed, 8 insertions(+), 2 deletions(-) ChangeLog | 8 ++++++++ Makefile.am | 2 -- diffs (34 lines): diff -r ecfb2532387c -r 6816e84bfc28 ChangeLog --- a/ChangeLog Mon Oct 27 15:56:05 2008 -0400 +++ b/ChangeLog Mon Oct 27 21:17:19 2008 +0000 @@ -1,3 +1,11 @@ 2008-10-27 Lillian Angel + + PR icedtea/234: + * Makefile.am: + Don't force the HotSpot release version + to be the JDK release version so the HotSpot + versioning is revealed. + 2008-10-27 Lillian Angel * configure.ac: Updated version to 1.4. diff -r ecfb2532387c -r 6816e84bfc28 Makefile.am --- a/Makefile.am Mon Oct 27 15:56:05 2008 -0400 +++ b/Makefile.am Mon Oct 27 21:17:19 2008 +0000 @@ -140,7 +140,6 @@ ICEDTEA_ENV = \ "BUILD_NUMBER=$(OPENJDK_VERSION)" \ "JDK_UPDATE_VERSION=$(JDK_UPDATE_VERSION)" \ "JRE_RELEASE_VERSION=1.6.0_$(COMBINED_VERSION)" \ - "HOTSPOT_RELEASE_VERSION=1.6.0_$(COMBINED_VERSION)" \ "LANG=C" \ "PATH=$(abs_top_builddir)/bootstrap/jdk1.6.0/bin:/usr/bin:/bin:/usr/sbin:/sbin" \ "ALT_BOOTDIR=$(ICEDTEA_BOOT_DIR)" \ @@ -210,7 +209,6 @@ ICEDTEA_ENV_ECJ = \ "BUILD_NUMBER=$(OPENJDK_VERSION)" \ "JDK_UPDATE_VERSION=$(JDK_UPDATE_VERSION)" \ "JRE_RELEASE_VERSION=1.6.0_$(COMBINED_VERSION)" \ - "HOTSPOT_RELEASE_VERSION=1.6.0_$(COMBINED_VERSION)" \ "LANG=C" \ "PATH=$(abs_top_builddir)/bootstrap/jdk1.6.0/bin:/usr/bin:/bin:/usr/sbin:/sbin" \ "ALT_BOOTDIR=$(ICEDTEA_BOOT_DIR)" \ From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 14:24:24 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 21:24:24 +0000 Subject: [Bug 234] HotSpot version should be shown in java -version invocation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=234 ------- Comment #4 from gnu_andrew at member.fsf.org 2008-10-27 21:24 ------- changeset 6816e84bfc28 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=6816e84bfc28 description: Fix hiding of HotSpot version number. 2008-10-27 Andrew John Hughes PR icedtea/234: * Makefile.am: Don't force the HotSpot release version to be the JDK release version so the HotSpot versioning is revealed. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 16:10:33 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Oct 2008 23:10:33 +0000 Subject: [Bug 200] java-1.6.0-openjdk-plugin fails to render radar time loop animation Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=200 orion at cora.nwra.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #3 from orion at cora.nwra.com 2008-10-27 23:10 ------- Works for me. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gnu_andrew at member.fsf.org Mon Oct 27 16:39:47 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 27 Oct 2008 23:39:47 +0000 Subject: changeset in /hg/icedtea: Fix Rhino on IcedTea7 build. Message-ID: changeset ec3687cb7d51 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ec3687cb7d51 description: Fix Rhino on IcedTea7 build. 2008-10-27 Andrew John Hughes * acinclude.m4: Add path of Gentoo rhino JAR file. * configure.ac: Remove extra ant home output. * patches/icedtea-rhino.patch: Regenerated. diffstat: 4 files changed, 138 insertions(+), 115 deletions(-) ChangeLog | 9 + acinclude.m4 | 2 configure.ac | 1 patches/icedtea-rhino.patch | 241 ++++++++++++++++++++++--------------------- diffs (309 lines): diff -r 8b55dca31ecb -r ec3687cb7d51 ChangeLog --- a/ChangeLog Mon Oct 27 20:41:55 2008 +0000 +++ b/ChangeLog Mon Oct 27 23:39:36 2008 +0000 @@ -1,3 +1,12 @@ 2008-10-27 Andrew John Hughes + + * acinclude.m4: + Add path of Gentoo rhino JAR file. + * configure.ac: + Remove extra ant home output. + * patches/icedtea-rhino.patch: + Regenerated. + 2008-10-27 Andrew John Hughes PR icedtea/234: diff -r 8b55dca31ecb -r ec3687cb7d51 acinclude.m4 --- a/acinclude.m4 Mon Oct 27 20:41:55 2008 +0000 +++ b/acinclude.m4 Mon Oct 27 23:39:36 2008 +0000 @@ -670,6 +670,8 @@ AC_DEFUN([FIND_RHINO_JAR], RHINO_JAR=/usr/share/java/rhino.jar elif test -e "/usr/share/java/js.jar"; then RHINO_JAR=/usr/share/java/js.jar + elif test -e "/usr/share/rhino-1.6/lib/js.jar"; then + RHINO_JAR=/usr/share/rhino-1.6/lib/js.jar fi if test x"${RHINO_JAR}" = "xyes"; then AC_MSG_RESULT([not found]) diff -r 8b55dca31ecb -r ec3687cb7d51 configure.ac --- a/configure.ac Mon Oct 27 20:41:55 2008 +0000 +++ b/configure.ac Mon Oct 27 23:39:36 2008 +0000 @@ -127,7 +127,6 @@ AC_ARG_WITH([ant-home], ]) AC_MSG_RESULT(${SYSTEM_ANT_DIR}) AC_SUBST(SYSTEM_ANT_DIR) -AC_MSG_RESULT(${SYSTEM_ANT_DIR}) AC_MSG_CHECKING([whether to build the LiveConnect plugin]) AC_ARG_ENABLE([liveconnect], diff -r 8b55dca31ecb -r ec3687cb7d51 patches/icedtea-rhino.patch --- a/patches/icedtea-rhino.patch Mon Oct 27 20:41:55 2008 +0000 +++ b/patches/icedtea-rhino.patch Mon Oct 27 23:39:36 2008 +0000 @@ -1,92 +1,17 @@ ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoClassShutter.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoClassShutter.java 2008-06-22 19:03:00.000000000 +0200 -@@ -26,7 +26,7 @@ - package com.sun.script.javascript; - - import java.util.*; --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - - /** - * This class prevents script access to certain sensitive classes. ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java 2008-06-22 19:03:10.000000000 +0200 -@@ -26,7 +26,7 @@ - package com.sun.script.javascript; - import javax.script.*; - import java.util.*; --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - import com.sun.script.util.*; - - /** ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoCompiledScript.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoCompiledScript.java 2008-06-22 19:03:25.000000000 +0200 -@@ -25,7 +25,7 @@ - - package com.sun.script.javascript; - import javax.script.*; --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - - /** - * Represents compiled JavaScript code. ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java 2008-06-22 19:03:35.000000000 +0200 -@@ -25,7 +25,7 @@ - - package com.sun.script.javascript; - --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - import javax.script.*; - - /** ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoWrapFactory.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoWrapFactory.java 2008-06-22 19:03:48.000000000 +0200 -@@ -27,7 +27,7 @@ - - import java.lang.reflect.*; - import static sun.security.util.SecurityConstants.*; --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - - /** - * This wrap factory is used for security reasons. JSR 223 script ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/JavaAdapter.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/JavaAdapter.java 2008-06-22 19:05:17.000000000 +0200 -@@ -26,7 +26,7 @@ - package com.sun.script.javascript; - - import javax.script.Invocable; --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - - /** - * This class implements Rhino-like JavaAdapter to help implement a Java ---- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/ExternalScriptable.java 2008-06-22 18:52:46.000000000 +0200 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/ExternalScriptable.java 2008-06-22 19:05:31.000000000 +0200 -@@ -24,7 +24,7 @@ - */ - - package com.sun.script.javascript; --import sun.org.mozilla.javascript.internal.*; -+import org.mozilla.javascript.*; - import javax.script.*; - import java.util.*; - ---- openjdk.orig/jdk/make/common/Release.gmk 2008-06-22 18:53:02.000000000 +0200 -+++ openjdk/jdk/make/common/Release.gmk 2008-06-23 00:14:02.000000000 +0200 -@@ -772,6 +772,7 @@ - $(CP) $(RT_JAR) $(JRE_IMAGE_DIR)/lib/rt.jar - $(CP) $(RESOURCES_JAR) $(JRE_IMAGE_DIR)/lib/resources.jar - $(CP) $(JSSE_JAR) $(JRE_IMAGE_DIR)/lib/jsse.jar -+ $(LN) -sf $(RHINO_JAR) $(JRE_IMAGE_DIR)/lib/rhino.jar - @# Generate meta-index to make boot and extension class loaders lazier - $(CD) $(JRE_IMAGE_DIR)/lib && \ - $(BOOT_JAVA_CMD) -jar $(BUILDMETAINDEX_JARFILE) \ ---- /old/openjdk/jdk/make/com/sun/Makefile 2008-07-17 03:43:07.000000000 -0400 -+++ openjdk/jdk/make/com/sun/Makefile 2008-07-23 11:19:02.000000000 -0400 +diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/os.cpp openjdk/hotspot/src/share/vm/runtime/os.cpp +--- openjdk.orig/hotspot/src/share/vm/runtime/os.cpp 2008-10-23 08:41:05.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/runtime/os.cpp 2008-10-27 23:00:47.000000000 +0000 +@@ -886,6 +886,7 @@ + "%/lib/jsse.jar:" + "%/lib/jce.jar:" + "%/lib/charsets.jar:" ++ "%/lib/rhino.jar:" + "%/classes"; + char* sysclasspath = format_boot_path(classpath_format, home, home_len, fileSep, pathSep); + if (sysclasspath == NULL) return false; +diff -Nru openjdk.orig/jdk/make/com/sun/Makefile openjdk/jdk/make/com/sun/Makefile +--- openjdk.orig/jdk/make/com/sun/Makefile 2008-10-23 08:44:04.000000000 +0100 ++++ openjdk/jdk/make/com/sun/Makefile 2008-10-27 23:00:47.000000000 +0000 @@ -31,15 +31,8 @@ PRODUCT = sun include $(BUILDDIR)/common/Defs.gmk @@ -102,10 +27,106 @@ -SUBDIRS = $(SCRIPT_SUBDIR) image security crypto/provider jndi jmx \ +SUBDIRS = script image security crypto/provider jndi jmx \ java inputmethods org xml rowset net/httpserver net/ssl demo \ - tools jarsigner tracing + tools jarsigner tracing servicetag ---- /old/openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java 2008-07-17 03:43:16.000000000 -0400 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java 2008-07-23 11:19:56.000000000 -0400 +diff -Nru openjdk.orig/jdk/make/com/sun/script/Makefile openjdk/jdk/make/com/sun/script/Makefile +--- openjdk.orig/jdk/make/com/sun/script/Makefile 2008-10-23 08:44:04.000000000 +0100 ++++ openjdk/jdk/make/com/sun/script/Makefile 2008-10-27 23:00:47.000000000 +0000 +@@ -31,6 +31,8 @@ + + AUTO_FILES_JAVA_DIRS = com/sun/script + ++OTHER_JAVACFLAGS = -classpath $(RHINO_JAR) ++ + # + # Files that need to be copied + # +diff -Nru openjdk.orig/jdk/make/common/Release.gmk openjdk/jdk/make/common/Release.gmk +--- openjdk.orig/jdk/make/common/Release.gmk 2008-10-27 23:00:09.000000000 +0000 ++++ openjdk/jdk/make/common/Release.gmk 2008-10-27 23:00:47.000000000 +0000 +@@ -774,6 +774,7 @@ + $(CP) $(RT_JAR) $(JRE_IMAGE_DIR)/lib/rt.jar + $(CP) $(RESOURCES_JAR) $(JRE_IMAGE_DIR)/lib/resources.jar + $(CP) $(JSSE_JAR) $(JRE_IMAGE_DIR)/lib/jsse.jar ++ $(LN) -sf $(RHINO_JAR) $(JRE_IMAGE_DIR)/lib/rhino.jar + @# Generate meta-index to make boot and extension class loaders lazier + $(CD) $(JRE_IMAGE_DIR)/lib && \ + $(BOOT_JAVA_CMD) -jar $(BUILDMETAINDEX_JARFILE) \ +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/ExternalScriptable.java openjdk/jdk/src/share/classes/com/sun/script/javascript/ExternalScriptable.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/ExternalScriptable.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/ExternalScriptable.java 2008-10-27 23:00:47.000000000 +0000 +@@ -24,7 +24,7 @@ + */ + + package com.sun.script.javascript; +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; + import javax.script.*; + import java.util.*; + +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/JavaAdapter.java openjdk/jdk/src/share/classes/com/sun/script/javascript/JavaAdapter.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/JavaAdapter.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/JavaAdapter.java 2008-10-27 23:00:47.000000000 +0000 +@@ -26,7 +26,7 @@ + package com.sun.script.javascript; + + import javax.script.Invocable; +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; + + /** + * This class implements Rhino-like JavaAdapter to help implement a Java +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/JSAdapter.java openjdk/jdk/src/share/classes/com/sun/script/javascript/JSAdapter.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/JSAdapter.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/JSAdapter.java 2008-10-27 23:00:47.000000000 +0000 +@@ -25,7 +25,7 @@ + + package com.sun.script.javascript; + +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; + import java.util.*; + + /** +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoClassShutter.java openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoClassShutter.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoClassShutter.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoClassShutter.java 2008-10-27 23:00:47.000000000 +0000 +@@ -26,7 +26,7 @@ + package com.sun.script.javascript; + + import java.util.*; +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; + + /** + * This class prevents script access to certain sensitive classes. +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoCompiledScript.java openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoCompiledScript.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoCompiledScript.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoCompiledScript.java 2008-10-27 23:00:47.000000000 +0000 +@@ -25,7 +25,7 @@ + + package com.sun.script.javascript; + import javax.script.*; +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; + + /** + * Represents compiled JavaScript code. +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java 2008-10-27 23:00:47.000000000 +0000 +@@ -26,7 +26,7 @@ + package com.sun.script.javascript; + import javax.script.*; + import java.util.*; +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; + import com.sun.script.util.*; + + /** +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java 2008-10-27 23:00:47.000000000 +0000 @@ -26,7 +26,7 @@ package com.sun.script.javascript; import com.sun.script.util.*; @@ -115,35 +136,27 @@ import java.lang.reflect.Method; import java.io.*; import java.util.*; ---- /old/openjdk/jdk/src/share/classes/com/sun/script/javascript/JSAdapter.java 2008-07-17 03:43:16.000000000 -0400 -+++ openjdk/jdk/src/share/classes/com/sun/script/javascript/JSAdapter.java 2008-07-23 11:20:49.000000000 -0400 +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java 2008-10-27 23:00:47.000000000 +0000 @@ -25,7 +25,7 @@ package com.sun.script.javascript; -import sun.org.mozilla.javascript.internal.*; +import org.mozilla.javascript.*; - import java.util.*; + import javax.script.*; /** ---- /old/openjdk/jdk/make/com/sun/script/Makefile 2008-07-17 03:43:08.000000000 -0400 -+++ openjdk/jdk/make/com/sun/script/Makefile 2008-07-23 11:22:03.000000000 -0400 -@@ -31,6 +31,8 @@ +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoWrapFactory.java openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoWrapFactory.java +--- openjdk.orig/jdk/src/share/classes/com/sun/script/javascript/RhinoWrapFactory.java 2008-10-23 08:44:13.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/script/javascript/RhinoWrapFactory.java 2008-10-27 23:00:47.000000000 +0000 +@@ -27,7 +27,7 @@ - AUTO_FILES_JAVA_DIRS = com/sun/script + import java.lang.reflect.*; + import static sun.security.util.SecurityConstants.*; +-import sun.org.mozilla.javascript.internal.*; ++import org.mozilla.javascript.*; -+OTHER_JAVACFLAGS = -classpath $(RHINO_JAR) -+ - # - # Files that need to be copied - # ---- /old/openjdk/hotspot/src/share/vm/runtime/os.cpp 2008-07-17 03:40:34.000000000 -0400 -+++ openjdk/hotspot/src/share/vm/runtime/os.cpp 2008-07-23 11:22:42.000000000 -0400 -@@ -877,6 +877,7 @@ - "%/lib/jsse.jar:" - "%/lib/jce.jar:" - "%/lib/charsets.jar:" -+ "%/lib/rhino.jar:" - "%/classes"; - char* sysclasspath = format_boot_path(classpath_format, home, home_len, fileSep, pathSep); - if (sysclasspath == NULL) return false; + /** + * This wrap factory is used for security reasons. JSR 223 script From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 17:10:19 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 00:10:19 +0000 Subject: [Bug 236] New: gcjwebplugin broken Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=236 Summary: gcjwebplugin broken Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: gnu_andrew at member.fsf.org gcjwebplugin tries to invoke pluginappletviewer from jre/bin which is only used and installed by liveconnect. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 17:30:37 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 00:30:37 +0000 Subject: [Bug 233] Missing features in IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=233 bbaetz at acm.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bbaetz at acm.org AssignedTo|dbhole at redhat.com |unassigned at icedtea.classpath | |.org -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Oct 27 17:30:59 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 00:30:59 +0000 Subject: [Bug 233] Missing features in IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=233 bbaetz at acm.org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 02:46:14 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 09:46:14 +0000 Subject: [Bug 235] Zero/Shark doesn't correctly replace HotSpot in IcedTea6 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=235 ------- Comment #1 from gbenson at redhat.com 2008-10-28 09:46 ------- Not replacing the Makefiles is what I'd intended (last time I looked loads of things were in different places). Where is the version number defined? Can we just patch that? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 12:42:35 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 19:42:35 +0000 Subject: [Bug 166] icedtea6 1.2 plugin and afs does not work Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=166 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | ------- Comment #1 from dbhole at redhat.com 2008-10-28 19:42 ------- Why would the user's own home directory not be writable? Firefox itself expects the users home dir to be writable, so does NetX. I don't think it is wrong for the plugin to make that kind of assumption... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 12:50:39 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 19:50:39 +0000 Subject: [Bug 208] icedteaplugin error on https://www.netbank.nordea.dk/netbank/ Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=208 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #1 from dbhole at redhat.com 2008-10-28 19:50 ------- This issue should be fixed -- applet now works for me with the latest release (1.3.1). Closing issue. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 12:51:16 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 19:51:16 +0000 Subject: [Bug 212] [plugin] applet at jigzone.com not working Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=212 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #1 from dbhole at redhat.com 2008-10-28 19:51 ------- This applet now works with the new plugin (release 1.3.1). Closing. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 12:52:46 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 19:52:46 +0000 Subject: [Bug 236] gcjwebplugin broken Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=236 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 12:55:02 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 19:55:02 +0000 Subject: [Bug 111] Please make gcjwebplugin name and description configurable Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=111 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | ------- Comment #1 from dbhole at redhat.com 2008-10-28 19:55 ------- Do you still the issue on your bank's website with the new IcedTea Plugin (release 1.3.1+) ? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 13:08:53 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 20:08:53 +0000 Subject: [Bug 194] ClassNotFoundException loading applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=194 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | Status|ASSIGNED |NEW -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 13:12:40 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 20:12:40 +0000 Subject: [Bug 195] Webex dies with NullPointerException Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=195 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | ------- Comment #13 from dbhole at redhat.com 2008-10-28 20:12 ------- There is still a nagging issue with Webex, but it should be working now (with the new plugin, Icedtea release 1.3.1+). Try clearing ~/.netx and ~/.netxrc Navigate to the webex page, wait for it to load. Eventually it will fail. Then restart the browser, and navigate to the page again. This time it should work. The problem is that Webex downloads a .so into ~/.mozilla/plugins/ and then loads it. With the Sun plugin, this .so is loaded immediately, whereas with Iced Tea, it requires a browser restart. After you restart the browser for the first time when using Webex, you won't have to do it again. I will look into why a restart is needed at all. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 13:15:03 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 20:15:03 +0000 Subject: [Bug 211] lines and points are not shown in the icedtea applet Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=211 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | ------- Comment #3 from dbhole at redhat.com 2008-10-28 20:15 ------- Everything is working for now with the new plugin (IcedTea release 1.3.1). Can you please try with that and let me know if you are still experiencing the issue? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 13:15:34 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 20:15:34 +0000 Subject: [Bug 215] Java Applet Window cannot be closed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=215 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Tue Oct 28 14:28:59 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Tue, 28 Oct 2008 21:28:59 +0000 Subject: changeset in /hg/icedtea6: Act on window close events (Bug# 215) Message-ID: changeset 27198ae52677 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=27198ae52677 description: Act on window close events (Bug# 215) diffstat: 2 files changed, 9 insertions(+) ChangeLog | 5 +++++ rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java | 4 ++++ diffs (26 lines): diff -r 6816e84bfc28 -r 27198ae52677 ChangeLog --- a/ChangeLog Mon Oct 27 21:17:19 2008 +0000 +++ b/ChangeLog Tue Oct 28 17:27:18 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-27 Andrew John Hughes + + * rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java: Act on window + close events (Bug# 215) + 2008-10-27 Andrew John Hughes PR icedtea/234: diff -r 6816e84bfc28 -r 27198ae52677 rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java --- a/rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java Mon Oct 27 21:17:19 2008 +0000 +++ b/rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java Tue Oct 28 17:27:18 2008 -0400 @@ -121,6 +121,10 @@ class JNLPSecurityManager extends Securi public void windowDeactivated(WindowEvent e) { activeApplication = null; + } + + public void windowClosing(WindowEvent e) { + e.getWindow().dispose(); } }; From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 15:10:37 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 22:10:37 +0000 Subject: [Bug 237] New: hg head icedtea fails to build (libjsoundalsa.so link failure). Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=237 Summary: hg head icedtea fails to build (libjsoundalsa.so link failure). Product: IcedTea Version: unspecified Platform: Other OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: nix at esperi.org.uk (This is definitely true of 1.3.1, too.) The cause is simple: -lasound precedes the object files that reference it, rather than following them. Hence linkage of libjsoundalsa.so fails. (This may only happen if you're using --as-needed, but several distros are doing this by default by now and putting libs before object files is definitely wrong in any case, so...) Patch attached suitable for the icedtea patches/ directory, also fixing another instance of the same bug in the ALSA_VERSION_CHECK code. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 15:11:15 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 22:11:15 +0000 Subject: [Bug 237] hg head icedtea fails to build (libjsoundalsa.so link failure). Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=237 ------- Comment #1 from nix at esperi.org.uk 2008-10-28 22:11 ------- Created an attachment (id=128) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=128&action=view) Fix for -lasound ordering bug -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Tue Oct 28 15:14:49 2008 From: doko at ubuntu.com (Matthias Klose) Date: Tue, 28 Oct 2008 23:14:49 +0100 Subject: IcedTeaPlugin on powerpc (both Zero port and Cacao) Message-ID: <49078ED9.3040704@ubuntu.com> This was just a quick test, with revision 1154: - the classpath.org applet bounces, but firefox shows 100% CPU all the time - the (fixed) ColorBlockApplet intializes (yellow box), but doesn't react to anything, the browser again at 100% CPU. all on a Powerbook 1.3Ghz, 768MB RAM. Matthias From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 16:07:16 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 23:07:16 +0000 Subject: [Bug 237] hg head icedtea fails to build (libjsoundalsa.so link failure). Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=237 ------- Comment #2 from nix at esperi.org.uk 2008-10-28 23:07 ------- The same bug exists elsewhere (-lz ordering in libunpack.so, for instance). I'm collating the lot into a single fix, coming soon. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Oct 28 16:49:54 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 28 Oct 2008 23:49:54 +0000 Subject: [Bug 237] hg head icedtea fails to build (libjsoundalsa.so link failure). Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=237 ------- Comment #3 from nix at esperi.org.uk 2008-10-28 23:49 ------- Created an attachment (id=129) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=129&action=view) Fix -lz in the wrong place in unpack200 linkage On second thoughts, they don't intersect much. One -lz fix, works for me but may well contain wrong bits. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From gbenson at redhat.com Wed Oct 29 01:44:08 2008 From: gbenson at redhat.com (Gary Benson) Date: Wed, 29 Oct 2008 08:44:08 +0000 Subject: LLVM and Shark compile errors In-Reply-To: <40C664BC8DEC2A4F8E8DD6B78C9C6D1205225DBB@ct11exm63.ds.mot.com> References: <40C664BC8DEC2A4F8E8DD6B78C9C6D12051D874C@ct11exm63.ds.mot.com> <20081028094306.GA4490@redhat.com> <40C664BC8DEC2A4F8E8DD6B78C9C6D1205225DBB@ct11exm63.ds.mot.com> Message-ID: <20081029084408.GA4099@redhat.com> Hi, You can check out 54012 using: svn co -r54012 http://llvm.org/svn/llvm-project/llvm/trunk llvm You can probably update an existing tree with svn up -r54012 too. I don't use any extra flags. I use gcc 4.1.2, but I've used 4.3.2 as well. Could you please subscribe to distro-pkg-dev at openjdk.java.net and direct future questions there? That way others can respond if appropriate, and answers will remain archived where Google can see them. Thanks, Gary Gordienko Evgueni-XPNG76 wrote: > The trunk points to Revision 58332 > > There is no pointer to 54012. Do you have a pointer? > > Few more things: > Which gcc versions do you use to build llvm and openJDK? > Do you use any extra flags for make (like -Wno-sign-conversion > -Wno-deprecated -Wno-sign-compare)? > > BTW - they (llvm) are going to have new release on Nov. 5. > > -----Original Message----- > From: Gary Benson [mailto:gbenson at redhat.com] > Sent: Tuesday, October 28, 2008 2:43 AM > To: Gordienko Evgueni-XPNG76 > Subject: Re: LLVM and Shark compile errors > > I think some release of LLVM had broken headers; twisti had a similar > problem. I'm using LLVM 54012 which should work. > > Cheers, > Gary > > PS join #openjdk on OFTC; there's more people there who can help than > just me ;) > > Gordienko Evgueni-XPNG76 wrote: > > My gcc is 4.3.2 on fedora 7 PowerPC. I'm building latest OpenJDK with > > shark and I have: > > > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark/sha > > rk > > Value.hpp: At global scope: > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark/sha > > rk > > Value.hpp:249: error: 'intptr_value' declared as a 'virtual' field > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark/sha > > rk > > Value.hpp:249: error: expected ';' before '(' token > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/compiler/ > > co > > mpileBroker.cpp:1865: error: expected `;' at end of input > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/compiler/ > > co > > mpileBroker.cpp:1865: error: expected `}' at end of input > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark/sha > > rk > > Value.hpp:248: error: expected unqualified-id at end of input > > /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark/sha > > rk > > Value.hpp:244: warning: inline function 'static SharkValue* > > SharkValue::create_generic(ciType*, llvm::Value*)' used but never > > defined > > make[6]: *** [compileBroker.o] Error 1 > > make[6]: *** Waiting for unfinished jobs.... > > make[6]: Leaving directory > > `/opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotsp > > ot > > /outputdir/linux_zero_shark/product' > > make[5]: *** [the_vm] Error 2 > > make[5]: Leaving directory > > `/opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotsp > > ot > > /outputdir/linux_zero_shark/product' > > make[4]: *** [productshark] Error 2 > > make[4]: Leaving directory > > `/opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotsp > > ot > > /outputdir' > > make[3]: *** [generic_buildshark] Error 2 > > make[3]: Leaving directory > > `/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/make' > > make[2]: *** [productshark] Error 2 > > make[2]: Leaving directory > > `/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/make' > > make[1]: *** [hotspot-build] Error 2 > > make[1]: Leaving directory > > `/opt/build-icedtea/icedtea6/openjdk-ecj/control/make' > > make: *** [stamps/icedtea-ecj.stamp] Error 2 > > > > What could be wrong? > > > > Thanks > > Evgueni > > > > I also have: > > cc1plus: warnings being treated as errors > > /opt/build-icedtea/llvm/include/llvm/Attributes.h:50: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Attributes.h: In member function > > 'llvm::Attributes llvm::AttrListPtr::getFnAttributes() const': > > /opt/build-icedtea/llvm/include/llvm/Attributes.h:164: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::CallInst::doesNotAccessMemory() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1100: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::CallInst::setDoesNotAccessMemory(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1103: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1104: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::CallInst::onlyReadsMemory() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1109: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::CallInst::setOnlyReadsMemory(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1112: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1113: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::CallInst::doesNotReturn() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1118: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::CallInst::setDoesNotReturn(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1121: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1122: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::CallInst::doesNotThrow() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1127: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::CallInst::setDoesNotThrow(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1130: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:1131: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::InvokeInst::setDoesNotAccessMemory(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2462: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2463: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::InvokeInst::onlyReadsMemory() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2468: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::InvokeInst::setOnlyReadsMemory(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2471: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2472: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::InvokeInst::doesNotReturn() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2477: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::InvokeInst::setDoesNotReturn(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2480: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2481: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'bool llvm::InvokeInst::doesNotThrow() const': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2486: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h: In member > > function 'void llvm::InvokeInst::setDoesNotThrow(bool)': > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2489: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Instructions.h:2490: warning: > > negative integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'bool llvm::Function::doesNotAccessMemory() const': > > /opt/build-icedtea/llvm/include/llvm/Function.h:189: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'void llvm::Function::setDoesNotAccessMemory(bool)': > > /opt/build-icedtea/llvm/include/llvm/Function.h:192: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h:193: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'bool llvm::Function::onlyReadsMemory() const': > > /opt/build-icedtea/llvm/include/llvm/Function.h:198: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'void llvm::Function::setOnlyReadsMemory(bool)': > > /opt/build-icedtea/llvm/include/llvm/Function.h:201: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h:202: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'bool llvm::Function::doesNotReturn() const': > > /opt/build-icedtea/llvm/include/llvm/Function.h:207: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'void llvm::Function::setDoesNotReturn(bool)': > > /opt/build-icedtea/llvm/include/llvm/Function.h:210: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h:211: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'bool llvm::Function::doesNotThrow() const': > > /opt/build-icedtea/llvm/include/llvm/Function.h:216: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h: In member function > > 'void llvm::Function::setDoesNotThrow(bool)': > > /opt/build-icedtea/llvm/include/llvm/Function.h:219: warning: negative > > > integer implicitly converted to unsigned type > > /opt/build-icedtea/llvm/include/llvm/Function.h:220: warning: negative > > > integer implicitly converted to unsigned type > > > > -- > http://gbenson.net/ > > -- http://gbenson.net/ From mark at klomp.org Wed Oct 29 02:17:43 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 29 Oct 2008 10:17:43 +0100 Subject: IcedTeaPlugin on powerpc (both Zero port and Cacao) In-Reply-To: <49078ED9.3040704@ubuntu.com> References: <49078ED9.3040704@ubuntu.com> Message-ID: <1225271863.3503.32.camel@dijkstra.wildebeest.org> Hi Matthias, On Tue, 2008-10-28 at 23:14 +0100, Matthias Klose wrote: > This was just a quick test, with revision 1154: > > - the classpath.org applet bounces, but firefox shows 100% CPU all the time > - the (fixed) ColorBlockApplet intializes (yellow box), but doesn't react > to anything, the browser again at 100% CPU. Do you know where the plugin/vm is stuck spinning at 100%? I couldn't easily replicate it on x86_64 (hotspot) but I have seen the IcedTeaPlugin stuck on 100% once or twice in something like: while (initialized == PR_FALSE) PROCESS_PENDING_EVENTS; Where PROCESS_PENDING_EVENTS is defined as: #define PROCESS_PENDING_EVENTS \ PRBool hasPending; \ factory->current->HasPendingEvents(&hasPending); \ if (hasPending == PR_TRUE) { \ PRBool processed = PR_FALSE; \ factory->current->ProcessNextEvent(PR_TRUE, &processed); \ } \ if (g_main_context_pending (NULL)) { \ g_main_context_iteration(NULL, false); \ } else \ { \ PR_Sleep(PR_INTERVAL_NO_WAIT); \ } Since PR_Sleep(PR_INTERVAL_NO_WAIR) is basically a PR_Yield() this is essentially a busy wait if both hasPending and initialized are false. I don't know what can cause that though. And I don't have any reliable reproducer. [... little sanity check later ...] This code seems to have been cleaned up a bit with explicit timeouts, so it might be my issue already been fixed. Still would be interesting to know if you could pin-point the busy-wait/100% cpu load with something like a debugger if possible. And I am still a little suspicious of the usage of PR_Sleep(PR_INTERVAL_NO_WAIT). Cheers, Mark From bugzilla-daemon at icedtea.classpath.org Wed Oct 29 07:01:44 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 29 Oct 2008 14:01:44 +0000 Subject: [Bug 237] hg head icedtea fails to build (libjsoundalsa.so link failure). Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=237 langel at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|omajid at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From gbenson at redhat.com Wed Oct 29 08:29:28 2008 From: gbenson at redhat.com (Gary Benson) Date: Wed, 29 Oct 2008 15:29:28 +0000 Subject: changeset in /hg/icedtea6: 2008-10-29 Gary Benson changeset 5176cf42d236 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5176cf42d236 description: 2008-10-29 Gary Benson PR icedtea/238: * ports/hotspot/src/share/vm/shark/sharkBlock.cpp (SharkBlock::parse): Fix copy-and-paste error in f2l. diffstat: 2 files changed, 7 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 2 +- diffs (25 lines): diff -r 27198ae52677 -r 5176cf42d236 ChangeLog --- a/ChangeLog Tue Oct 28 17:27:18 2008 -0400 +++ b/ChangeLog Wed Oct 29 11:29:20 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-27 Deepak Bhole + + PR icedtea/238: + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp + (SharkBlock::parse): Fix copy-and-paste error in f2l. + 2008-10-27 Deepak Bhole * rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java: Act on window diff -r 27198ae52677 -r 5176cf42d236 ports/hotspot/src/share/vm/shark/sharkBlock.cpp --- a/ports/hotspot/src/share/vm/shark/sharkBlock.cpp Tue Oct 28 17:27:18 2008 -0400 +++ b/ports/hotspot/src/share/vm/shark/sharkBlock.cpp Wed Oct 29 11:29:20 2008 -0400 @@ -731,7 +731,7 @@ void SharkBlock::parse() pop()->jfloat_value(), SharkType::jint_type()))); break; case Bytecodes::_f2l: - push(SharkValue::create_jint( + push(SharkValue::create_jlong( builder()->CreateFPToSI( pop()->jfloat_value(), SharkType::jlong_type()))); break; From dbhole at redhat.com Wed Oct 29 09:15:14 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Oct 2008 12:15:14 -0400 Subject: IcedTeaPlugin on powerpc (both Zero port and Cacao) In-Reply-To: <1225271863.3503.32.camel@dijkstra.wildebeest.org> References: <49078ED9.3040704@ubuntu.com> <1225271863.3503.32.camel@dijkstra.wildebeest.org> Message-ID: <20081029161512.GA1643@redhat.com> * Mark Wielaard [2008-10-29 05:20]: > Hi Matthias, > > > On Tue, 2008-10-28 at 23:14 +0100, Matthias Klose wrote: > > This was just a quick test, with revision 1154: > > > > - the classpath.org applet bounces, but firefox shows 100% CPU all the time > > - the (fixed) ColorBlockApplet intializes (yellow box), but doesn't react > > to anything, the browser again at 100% CPU. > > Do you know where the plugin/vm is stuck spinning at 100%? > > I couldn't easily replicate it on x86_64 (hotspot) but I have seen the > IcedTeaPlugin stuck on 100% once or twice in something like: > > while (initialized == PR_FALSE) > PROCESS_PENDING_EVENTS; > > Where PROCESS_PENDING_EVENTS is defined as: > > #define PROCESS_PENDING_EVENTS \ > PRBool hasPending; \ > factory->current->HasPendingEvents(&hasPending); \ > if (hasPending == PR_TRUE) { \ > PRBool processed = PR_FALSE; \ > factory->current->ProcessNextEvent(PR_TRUE, &processed); \ > } \ > if (g_main_context_pending (NULL)) { \ > g_main_context_iteration(NULL, false); \ > } else \ > { \ > PR_Sleep(PR_INTERVAL_NO_WAIT); \ > } > > Since PR_Sleep(PR_INTERVAL_NO_WAIR) is basically a PR_Yield() this is > essentially a busy wait if both hasPending and initialized are false. I > don't know what can cause that though. And I don't have any reliable > reproducer. > > [... little sanity check later ...] > Right. So everytime we send a message to Java, we enter the PROCESS_PENDING_EVENTS macro, which processes any mozilla events for that thread, and then any glib events. The mozilla events needs to be processed for UI responsiveness, and glib events needs to be processed so that the C++ <-> Java message pipe callbacks are activated. > This code seems to have been cleaned up a bit with explicit timeouts, so > it might be my issue already been fixed. > Yeah, I added timeouts in the parts where it was waiting for VM initialization, so that if the VM failed to come up, mozilla wouldn't hang. > Still would be interesting to know if you could pin-point the > busy-wait/100% cpu load with something like a debugger if possible. > > And I am still a little suspicious of the usage of > PR_Sleep(PR_INTERVAL_NO_WAIT). > I agree, and will be refactoring once all the main issues/features are done. Not sure if we should get rid of PR_INTERVAL_NO_WAIT though. AFAIK, the smallest interval that can be waited for is 1ms. When an initial JS->Java call happens, over 6000 messages are passed back and forth. That is 6 seconds of forced wait. That is why I made it yield :/ I am welcome to suggestions though! Deepak > Cheers, > > Mark > From dbhole at redhat.com Wed Oct 29 11:29:41 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Oct 2008 18:29:41 +0000 Subject: changeset in /hg/icedtea: On second thought, do exit on netx fai... Message-ID: changeset 1e020b5801bb in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=1e020b5801bb description: On second thought, do exit on netx failure. JVM respawning code is far more robust than the initialization timeout code, which may put the browser in an unknown state. Remove classpath when initialiazing the jvm -- it is not needed. diffstat: 3 files changed, 45 insertions(+), 31 deletions(-) ChangeLog | 6 - IcedTeaPlugin.cc | 68 ++++++++++++--------- plugin/icedtea/sun/applet/PluginAppletViewer.java | 2 diffs (177 lines): diff -r 93f0928ec0ed -r 1e020b5801bb ChangeLog --- a/ChangeLog Thu Oct 23 12:27:23 2008 -0400 +++ b/ChangeLog Thu Oct 23 18:07:45 2008 -0400 @@ -1,8 +1,8 @@ 2008-10-23 Deepak Bhole - * IcedTeaPlugin.cc: Supply classpath to rt.jar when starting java. - * plugin/icedtea/sun/applet/PluginAppletViewer.java: Tell Netx to exit VM - on error. + * IcedTeaPlugin.cc: Implement proper timeout action. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Supply new + exitOnFailure argument to Netx. * rt/net/sourceforge/jnlp/Launcher.java: Implement an option for not exiting VM on error. * rt/net/sourceforge/jnlp/NetxPanel.java: Same. diff -r 93f0928ec0ed -r 1e020b5801bb IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 23 12:27:23 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 23 18:07:45 2008 -0400 @@ -192,6 +192,12 @@ inline suseconds_t get_time_in_ms() gettimeofday(&tv, &tz); return tv.tv_usec; +} + +inline long get_time_in_s() +{ + time_t t; + return time(&t); } // __func__ is a variable, not a string literal, so it cannot be @@ -315,7 +321,6 @@ static GError* channel_error = NULL; // Fully-qualified appletviewer executable. gchar* data_directory = NULL; static char* appletviewer_executable = NULL; -static char* appletviewer_classpath = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -2391,14 +2396,14 @@ IcedTeaPluginInstance::SetWindow (nsPlug PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - suseconds_t startTime = get_time_in_ms(); + long startTime = get_time_in_s(); PRBool timedOut = PR_FALSE; while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) { PROCESS_PENDING_EVENTS; - if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + if ((get_time_in_s() - startTime) > TIMEOUT) { timedOut = PR_TRUE; break; @@ -2407,7 +2412,11 @@ IcedTeaPluginInstance::SetWindow (nsPlug // we timed out if (timedOut == PR_TRUE) - return NS_ERROR_FAILURE; + { + PLUGIN_DEBUG_1ARG ("Initialization for instance %d has timed out. Marking it void\n", instance_identifier); + this->fatalErrorOccurred = PR_TRUE; + return NS_ERROR_FAILURE; + } // did we bail because there is no jvm? if (this->fatalErrorOccurred == PR_TRUE) @@ -2549,12 +2558,28 @@ IcedTeaPluginInstance::GetJavaObject (jo if (initialized == PR_FALSE) { - PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - - while (initialized == PR_FALSE) { - PROCESS_PENDING_EVENTS; -// printf("waiting for java object\n"); + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::GetJavaObject: Instance %p waiting for initialization...\n", this); + + long startTime = get_time_in_s(); + PRBool timedOut = PR_FALSE; + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) + { + PROCESS_PENDING_EVENTS; + + if ((get_time_in_s() - startTime) > TIMEOUT) + { + timedOut = PR_TRUE; + break; + } } + + // we timed out + if (timedOut == PR_TRUE) + { + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::GetJavaObject: Initialization for instance %d has timed out. Marking it void\n", instance_identifier); + this->fatalErrorOccurred = PR_TRUE; + return NS_ERROR_FAILURE; + } PLUGIN_DEBUG_1ARG ("Instance %p initialization complete...\n", this); } @@ -2590,12 +2615,12 @@ IcedTeaPluginFactory::GetJavaObject (PRU nsresult result = NS_OK; // wait for result - suseconds_t startTime = get_time_in_ms(); + long startTime = get_time_in_s(); while (object_identifier_return == 0) { current->ProcessNextEvent(PR_TRUE, &processed); // If we have been waiting for more than 20 seconds, something is wrong - if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + if ((get_time_in_ms() - startTime) > TIMEOUT) break; } @@ -3574,17 +3599,15 @@ IcedTeaPluginFactory::StartAppletviewer if (getenv("ICEDTEAPLUGIN_DEBUG")) { - numArgs = 6; - char const* javaArgs[6] = { "-cp", appletviewer_classpath, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; + numArgs = 4; + char const* javaArgs[4] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; args = javaArgs; } else { - numArgs = 3; - char const* javaArgs[3] = { "-cp", appletviewer_classpath, "sun.applet.PluginMain" }; + numArgs = 1; + char const* javaArgs[1] = { "sun.applet.PluginMain" }; args = javaArgs; } - - printf("Executing: %s %s\n", appletviewer_executable, args); // start processing thread nsCOMPtr processMessageEvent = @@ -5561,7 +5584,7 @@ NSGetFactory (nsISupports* aServMgr, nsC return NS_ERROR_OUT_OF_MEMORY; } nsCString executable (dirname (filename)); - nsCString classpath(dirname (filename)); + free (filename); filename = NULL; @@ -5574,15 +5597,6 @@ NSGetFactory (nsISupports* aServMgr, nsC PLUGIN_ERROR ("Failed to create java executable name."); return NS_ERROR_OUT_OF_MEMORY; } - - classpath += nsCString ("/rt.jar"); - appletviewer_classpath = strdup (classpath.get ()); - if (!appletviewer_classpath) - { - PLUGIN_ERROR ("Failed to create java classpath string."); - return NS_ERROR_OUT_OF_MEMORY; - } - // Make sure the plugin data directory exists, creating it if // necessary. diff -r 93f0928ec0ed -r 1e020b5801bb plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 12:27:23 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 18:07:45 2008 -0400 @@ -175,7 +175,7 @@ import sun.misc.Ref; AccessController.doPrivileged(new PrivilegedAction() { public Object run() { try { - panel = new NetxPanel(doc, atts, false); + panel = new NetxPanel(doc, atts, true); AppletViewerPanel.debug("Using NetX panel"); } catch (Exception ex) { AppletViewerPanel.debug("Unable to start NetX applet - defaulting to Sun applet", ex); From langel at redhat.com Wed Oct 29 11:29:40 2008 From: langel at redhat.com (Lillian Angel) Date: Wed, 29 Oct 2008 18:29:40 +0000 Subject: changeset in /hg/icedtea: 2008-10-23 Lillian Angel changeset 19ff33216eaf in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=19ff33216eaf description: 2008-10-23 Lillian Angel PR redhat/468193: * patches/icedtea-fonts.patch: Updated for filename change. diffstat: 2 files changed, 7 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ patches/icedtea-fonts.patch | 4 ++-- diffs (26 lines): diff -r 6ce8e4006dd4 -r 19ff33216eaf ChangeLog --- a/ChangeLog Thu Oct 23 10:31:07 2008 -0400 +++ b/ChangeLog Thu Oct 23 12:17:26 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-23 Gary Benson + + PR redhat/468193: + * patches/icedtea-fonts.patch: Updated for filename change. + 2008-10-23 Gary Benson PR icedtea/229: diff -r 6ce8e4006dd4 -r 19ff33216eaf patches/icedtea-fonts.patch --- a/patches/icedtea-fonts.patch Thu Oct 23 10:31:07 2008 -0400 +++ b/patches/icedtea-fonts.patch Thu Oct 23 12:17:26 2008 -0400 @@ -383,8 +383,8 @@ + +filename.Sazanami_Gothic=/usr/share/fonts/sazanami-fonts-gothic/sazanami-gothic.ttf +filename.Sazanami_Mincho=/usr/share/fonts/sazanami-fonts-mincho/sazanami-mincho.ttf -+filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/cjkunifonts-uming/uming.ttf -+filename.AR_PL_ZenKai_Uni=/usr/share/fonts/cjkunifonts-ukai/ukai.ttf ++filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/cjkunifonts-uming/uming.ttc ++filename.AR_PL_ZenKai_Uni=/usr/share/fonts/cjkunifonts-ukai/ukai.ttc +filename.Baekmuk_Gulim=/usr/share/fonts/baekmuk-ttf-gulim/gulim.ttf +filename.Baekmuk_Batang=/usr/share/fonts/baekmuk-ttf-batang/batang.ttf + From mark at klomp.org Wed Oct 29 11:29:40 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 29 Oct 2008 18:29:40 +0000 Subject: changeset in /hg/icedtea: * Makefile.am (stamps/patch.stamp): Ma... Message-ID: changeset 0fafece1a73c in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=0fafece1a73c description: * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when ENABLE_PLUGIN is true. diffstat: 2 files changed, 9 insertions(+), 3 deletions(-) ChangeLog | 11 ++++++++--- Makefile.am | 1 + diffs (36 lines): diff -r 77b03084ebd0 -r 0fafece1a73c ChangeLog --- a/ChangeLog Thu Oct 23 04:58:23 2008 -0400 +++ b/ChangeLog Thu Oct 23 12:17:21 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-23 Gary Benson + + * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when + ENABLE_PLUGIN is true. + 2008-10-23 Gary Benson PR icedtea/204: @@ -10,9 +15,9 @@ 2008-10-23 Gary Benson - * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID - instead. - * configure.ac: Make DIST_ID more precise. Some implementations of the + * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID + instead. + * configure.ac: Make DIST_ID more precise. Some implementations of the lsb_release command quote the output; ignore it. 2008-10-22 Omair Majid diff -r 77b03084ebd0 -r 0fafece1a73c Makefile.am --- a/Makefile.am Thu Oct 23 04:58:23 2008 -0400 +++ b/Makefile.am Thu Oct 23 12:17:21 2008 +0200 @@ -648,6 +648,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta if ENABLE_PLUGIN cp -a $(abs_top_srcdir)/plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + mkdir -p rt cp -a $(abs_top_srcdir)/plugin/icedtea/netscape rt/ endif From doko at ubuntu.com Wed Oct 29 11:29:41 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 29 Oct 2008 18:29:41 +0000 Subject: changeset in /hg/icedtea: 2008-10-24 Matthias Klose changeset a8f8cb9d58df in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=a8f8cb9d58df description: 2008-10-24 Matthias Klose * Makefile.am (clean-pulseaudio): Don't remove source files. Might not be correct, but doesn't do harm in any build environment. diffstat: 2 files changed, 7 insertions(+), 2 deletions(-) ChangeLog | 5 +++++ Makefile.am | 4 ++-- diffs (26 lines): diff -r 1e020b5801bb -r a8f8cb9d58df ChangeLog --- a/ChangeLog Thu Oct 23 18:07:45 2008 -0400 +++ b/ChangeLog Fri Oct 24 13:33:32 2008 +0200 @@ -1,3 +1,8 @@ 2008-10-23 Deepak Bhole + + * Makefile.am (clean-pulseaudio): Don't remove source files. Might + not be correct, but doesn't do harm in any build environment. + 2008-10-23 Deepak Bhole * IcedTeaPlugin.cc: Implement proper timeout action. diff -r 1e020b5801bb -r a8f8cb9d58df Makefile.am --- a/Makefile.am Thu Oct 23 18:07:45 2008 -0400 +++ b/Makefile.am Fri Oct 24 13:33:32 2008 +0200 @@ -1528,8 +1528,8 @@ endif clean-pulse-java: if ENABLE_PULSE_JAVA - rm -rf $(PULSE_JAVA_CLASS_DIR)/* - rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + [ -z "$(PULSE_JAVA_CLASS_DIR)" ] || find $(PULSE_JAVA_CLASS_DIR) -name '*.class' | xargs -r rm -f + [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so From doko at ubuntu.com Wed Oct 29 11:29:42 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 29 Oct 2008 18:29:42 +0000 Subject: changeset in /hg/icedtea: 2008-10-25 Matthias Klose changeset 7b4e0145155d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=7b4e0145155d description: 2008-10-25 Matthias Klose * Makefile.am (clean-pulse-java): Remove object files. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 2 +- diffs (23 lines): diff -r 4b16b588ba42 -r 7b4e0145155d ChangeLog --- a/ChangeLog Sat Oct 25 23:01:28 2008 +0200 +++ b/ChangeLog Sat Oct 25 23:23:16 2008 +0200 @@ -1,3 +1,7 @@ 2008-10-25 Matthias Klose + + * Makefile.am (clean-pulse-java): Remove object files. + 2008-10-25 Matthias Klose * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. diff -r 4b16b588ba42 -r 7b4e0145155d Makefile.am --- a/Makefile.am Sat Oct 25 23:01:28 2008 +0200 +++ b/Makefile.am Sat Oct 25 23:23:16 2008 +0200 @@ -1541,7 +1541,7 @@ clean-pulse-java: clean-pulse-java: if ENABLE_PULSE_JAVA [ -z "$(PULSE_JAVA_CLASS_DIR)" ] || find $(PULSE_JAVA_CLASS_DIR) -name '*.class' | xargs -r rm -f - [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h $(PULSE_JAVA_NATIVE_SRCDIR)/*.o rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so From doko at ubuntu.com Wed Oct 29 11:29:42 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 29 Oct 2008 18:29:42 +0000 Subject: changeset in /hg/icedtea: 2008-10-27 Matthias Klose changeset 55a7a736bf3d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=55a7a736bf3d description: 2008-10-27 Matthias Klose * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is available. diffstat: 2 files changed, 11 insertions(+), 6 deletions(-) ChangeLog | 5 +++++ patches/icedtea-uname.patch | 12 ++++++------ diffs (46 lines): diff -r 7b4e0145155d -r 55a7a736bf3d ChangeLog --- a/ChangeLog Sat Oct 25 23:23:16 2008 +0200 +++ b/ChangeLog Mon Oct 27 12:05:29 2008 +0100 @@ -1,3 +1,8 @@ 2008-10-25 Matthias Klose + + * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is + available. + 2008-10-25 Matthias Klose * Makefile.am (clean-pulse-java): Remove object files. diff -r 7b4e0145155d -r 55a7a736bf3d patches/icedtea-uname.patch --- a/patches/icedtea-uname.patch Sat Oct 25 23:23:16 2008 +0200 +++ b/patches/icedtea-uname.patch Mon Oct 27 12:05:29 2008 +0100 @@ -1,10 +1,10 @@ ---- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-07-26 17:21:17.441295678 +0200 -+++ openjdk/jdk/make/common/shared/Platform.gmk 2008-07-26 17:30:24.589549285 +0200 +--- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-10-27 11:44:47.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Platform.gmk 2008-10-27 11:52:17.000000000 +0100 @@ -191,6 +191,9 @@ OS_VERSION := $(shell uname -r) # Arch and OS name/version mach := $(shell uname -m) -+ ifneq (,$(filter $(mach),mips s390 s390x)) ++ ifneq (,$(wildcard /usr/bin/dpkg-architecture)) + mach := $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) + endif archExpr = case "$(mach)" in \ @@ -20,13 +20,13 @@ *) \ echo $(mach) \ ;; \ ---- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-07-26 17:21:17.441295678 +0200 -+++ openjdk/corba/make/common/shared/Platform.gmk 2008-07-26 17:30:22.059511120 +0200 +--- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-10-27 11:44:47.000000000 +0100 ++++ openjdk/corba/make/common/shared/Platform.gmk 2008-10-27 11:53:01.000000000 +0100 @@ -181,6 +181,9 @@ OS_VERSION := $(shell uname -r) # Arch and OS name/version mach := $(shell uname -m) -+ ifneq (,$(filter $(mach),mips s390 s390x)) ++ ifneq (,$(wildcard /usr/bin/dpkg-architecture)) + mach := $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) + endif archExpr = case "$(mach)" in \ From doko at ubuntu.com Wed Oct 29 11:29:42 2008 From: doko at ubuntu.com (doko at ubuntu.com) Date: Wed, 29 Oct 2008 18:29:42 +0000 Subject: changeset in /hg/icedtea: 2008-10-25 Matthias Klose changeset 4b16b588ba42 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=4b16b588ba42 description: 2008-10-25 Matthias Klose * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in PLUGIN_DESCRIPTION. diffstat: 4 files changed, 20 insertions(+), 2 deletions(-) ChangeLog | 6 ++++++ IcedTeaPlugin.cc | 2 +- Makefile.am | 12 ++++++++++++ gcjwebplugin.cc | 2 +- diffs (72 lines): diff -r ce6a731bd3b9 -r 4b16b588ba42 ChangeLog --- a/ChangeLog Fri Oct 24 10:10:49 2008 -0400 +++ b/ChangeLog Sat Oct 25 23:01:28 2008 +0200 @@ -1,3 +1,9 @@ 2008-10-24 Omair Majid + + * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. + * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in + PLUGIN_DESCRIPTION. + 2008-10-24 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java diff -r ce6a731bd3b9 -r 4b16b588ba42 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Fri Oct 24 10:10:49 2008 -0400 +++ b/IcedTeaPlugin.cc Sat Oct 25 23:01:28 2008 +0200 @@ -275,7 +275,7 @@ inline long get_time_in_s() #endif #define PLUGIN_NAME "IcedTea Web Browser Plugin" -#define PLUGIN_DESCRIPTION "The " PLUGIN_NAME " executes Java applets." +#define PLUGIN_DESCRIPTION "The " PLUGIN_NAME PLUGIN_VERSION " executes Java applets." #define PLUGIN_MIME_DESC \ "application/x-java-vm:class,jar:IcedTea;" \ "application/x-java-applet:class,jar:IcedTea;" \ diff -r ce6a731bd3b9 -r 4b16b588ba42 Makefile.am --- a/Makefile.am Fri Oct 24 10:10:49 2008 -0400 +++ b/Makefile.am Sat Oct 25 23:01:28 2008 +0200 @@ -1415,10 +1415,16 @@ if ENABLE_GCJWEBPLUGIN if ENABLE_GCJWEBPLUGIN # gcjwebplugin.so. gcjwebplugin.so: gcjwebplugin.cc + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + if [ -n "$(PKGVERSION)" ]; then plugin_version=" ($(PKGVERSION))"; fi; \ + plugin_version=" $(PACKAGE_VERSION)$$revision$$plugin_version"; \ $(CXX) $(CXXFLAGS) $(MOZILLA_CFLAGS) \ $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ $(GTK_CFLAGS) $(GTK_LIBS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -DPLUGIN_VERSION="\"$$plugin_version\"" \ -fPIC -shared -o $@ $< clean-gcjwebplugin: @@ -1430,8 +1436,14 @@ if ENABLE_PLUGIN # is listed before -l options. See: # http://developer.mozilla.org/en/docs/XPCOM_Glue IcedTeaPlugin.o: IcedTeaPlugin.cc + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + if [ -n "$(PKGVERSION)" ]; then plugin_version=" ($(PKGVERSION))"; fi; \ + plugin_version=" $(PACKAGE_VERSION)$$revision$$plugin_version"; \ $(CXX) $(CXXFLAGS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -DPLUGIN_VERSION="\"$$plugin_version\"" \ $(GTK_CFLAGS) \ $(XULRUNNER_CFLAGS) \ -fPIC -c -o $@ $< diff -r ce6a731bd3b9 -r 4b16b588ba42 gcjwebplugin.cc --- a/gcjwebplugin.cc Fri Oct 24 10:10:49 2008 -0400 +++ b/gcjwebplugin.cc Sat Oct 25 23:01:28 2008 +0200 @@ -84,7 +84,7 @@ exception statement from your version. * // Plugin information passed to about:plugins. #define PLUGIN_NAME "GCJ Web Browser Plugin (using IcedTea)" -#define PLUGIN_DESC "The " PLUGIN_NAME " executes Java applets." +#define PLUGIN_DESC "The " PLUGIN_NAME PLUGIN_VERSION " executes Java applets." #define PLUGIN_MIME_DESC \ "application/x-java-vm:class,jar:IcedTea;" \ "application/x-java-applet:class,jar:IcedTea;" \ From dbhole at redhat.com Wed Oct 29 11:29:43 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Oct 2008 18:29:43 +0000 Subject: changeset in /hg/icedtea: - Fix address pointer integer overflow... Message-ID: changeset 1eb6a720a6be in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=1eb6a720a6be description: - Fix address pointer integer overflow on 64-bit systems. - Set cache dir to be local to each user (~/.icedteaplugin/cache). - Apply patch from Tom Fitzsimmons for Bug# 230. diffstat: 4 files changed, 20 insertions(+), 13 deletions(-) ChangeLog | 9 +++++++++ IcedTeaPlugin.cc | 8 ++++---- plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 12 ++++++------ plugin/icedtea/sun/applet/PluginAppletViewer.java | 4 +--- diffs (116 lines): diff -r fda32eba4b37 -r 1eb6a720a6be ChangeLog --- a/ChangeLog Mon Oct 27 15:52:37 2008 +0100 +++ b/ChangeLog Mon Oct 27 12:13:21 2008 -0400 @@ -1,3 +1,12 @@ 2008-10-27 Mark Wielaard + + * IcedTeaPlugin.cc: Fix address pointer integer overflow on 64-bit + systems. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Set cache + dir to be local to each user (~/.icedteaplugin/cache). + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Apply patch from Tom + Fitzsimmons for Bug# 230. + 2008-10-27 Mark Wielaard * patches/icedtea-renderer-crossing.patch: New patch. diff -r fda32eba4b37 -r 1eb6a720a6be IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Oct 27 15:52:37 2008 +0100 +++ b/IcedTeaPlugin.cc Mon Oct 27 12:13:21 2008 -0400 @@ -448,7 +448,7 @@ char const* TYPES[10] = { "Object", #define MESSAGE_ADD_SIZE(size) \ message += " "; \ - message.AppendInt (size); + message.AppendInt ((PRUintn) size); // Pass character value through socket as an integer. #define MESSAGE_ADD_TYPE(type) \ @@ -3888,7 +3888,7 @@ IcedTeaPluginInstance::GetWindow () message += " "; message += "JavaScriptGetWindow"; message += " "; - message.AppendInt (liveconnect_window); + message.AppendInt ((PRUintn) liveconnect_window); factory->SendMessageToAppletViewer (message); } @@ -4606,7 +4606,7 @@ IcedTeaJNIEnv::ValueString (jni_type typ retstr.AppendInt (value.i); break; case jlong_type: - retstr.AppendInt (value.j); + retstr.AppendInt ((PRUintn) value.j); break; case jfloat_type: retstr += IcedTeaPrintfCString ("%f", value.f); @@ -4735,7 +4735,7 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv retstr.AppendInt (args[arg].i); break; case 'J': - retstr.AppendInt (args[arg].j); + retstr.AppendInt ((PRUintn) args[arg].j); break; case 'F': retstr += IcedTeaPrintfCString ("%f", args[arg].f); diff -r fda32eba4b37 -r 1eb6a720a6be plugin/icedtea/sun/applet/PluginAppletSecurityContext.java --- a/plugin/icedtea/sun/applet/PluginAppletSecurityContext.java Mon Oct 27 15:52:37 2008 +0100 +++ b/plugin/icedtea/sun/applet/PluginAppletSecurityContext.java Mon Oct 27 12:13:21 2008 -0400 @@ -37,14 +37,12 @@ exception statement from your version. * package sun.applet; -import java.awt.AWTPermission; -import java.io.FilePermission; +import java.io.File; import java.lang.reflect.Array; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.net.MalformedURLException; -import java.net.SocketPermission; import java.net.URL; import java.security.AccessControlContext; import java.security.AccessControlException; @@ -52,15 +50,12 @@ import java.security.AllPermission; import java.security.AllPermission; import java.security.BasicPermission; import java.security.CodeSource; -import java.security.PermissionCollection; import java.security.Permissions; -import java.security.Policy; import java.security.PrivilegedAction; import java.security.ProtectionDomain; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.PropertyPermission; import net.sourceforge.jnlp.runtime.JNLPRuntime; @@ -244,6 +239,11 @@ public class PluginAppletSecurityContext public PluginAppletSecurityContext(int identifier) { this.identifier = identifier; + // also, override the basedir, use a different one for the plugin + File f = new File(System.getProperty("user.home") + "/.icedteaplugin/"); + f.mkdir(); + JNLPRuntime.setBaseDir(f); + // We need a security manager.. and since there is a good chance that // an applet will be loaded at some point, we should make it the SM // that JNLPRuntime will try to install diff -r fda32eba4b37 -r 1eb6a720a6be plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Mon Oct 27 15:52:37 2008 +0100 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Mon Oct 27 12:13:21 2008 -0400 @@ -1266,9 +1266,7 @@ import sun.misc.Ref; val = buf.toString(); } PluginDebug.debug("PUT " + att + " = '" + val + "'"); - if (! val.equals("")) { - atts.put(att.toLowerCase(java.util.Locale.ENGLISH), val); - } + atts.put(att.toLowerCase(java.util.Locale.ENGLISH), val); while (true) { if ((c == '>') || (c < 0) || ((c >= 'a') && (c <= 'z')) || From langel at redhat.com Wed Oct 29 11:29:43 2008 From: langel at redhat.com (Lillian Angel) Date: Wed, 29 Oct 2008 18:29:43 +0000 Subject: changeset in /hg/icedtea: 2008-10-27 Lillian Angel changeset be368b1e3c7d in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=be368b1e3c7d description: 2008-10-27 Lillian Angel * NEWS: Updated for 1.3.1 release. diffstat: 2 files changed, 13 insertions(+) ChangeLog | 4 ++++ NEWS | 9 +++++++++ diffs (27 lines): diff -r 1eb6a720a6be -r be368b1e3c7d ChangeLog --- a/ChangeLog Mon Oct 27 12:13:21 2008 -0400 +++ b/ChangeLog Mon Oct 27 15:53:21 2008 -0400 @@ -1,3 +1,7 @@ 2008-10-27 Deepak Bhole + + * NEWS: Updated for 1.3.1 release. + 2008-10-27 Deepak Bhole * IcedTeaPlugin.cc: Fix address pointer integer overflow on 64-bit diff -r 1eb6a720a6be -r be368b1e3c7d NEWS --- a/NEWS Mon Oct 27 12:13:21 2008 -0400 +++ b/NEWS Mon Oct 27 15:53:21 2008 -0400 @@ -1,3 +1,12 @@ New in release 1.3 (2008-10-15) +New in release 1.3.1 (2008-10-27) + +- Plugin including LiveConnect support built as default. +- Various bugs fixed: renderer patch, version string updated, +chinese fonts filename fix for Fedora etc. +- More progress on Shark and Cacao. +- Several plugin bug fixes. +- Several build fixes. + New in release 1.3 (2008-10-15) - Updated to b12 build. From omajid at redhat.com Wed Oct 29 11:29:42 2008 From: omajid at redhat.com (Omair Majid) Date: Wed, 29 Oct 2008 18:29:42 +0000 Subject: changeset in /hg/icedtea: 2008-10-24 Omair Majid changeset ce6a731bd3b9 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ce6a731bd3b9 description: 2008-10-24 Omair Majid * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java (write): Check for offset being negative. * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java (testMixerKnowsAboutOpenClips): Removed the assumption that mixer had no other lines open. diffstat: 3 files changed, 19 insertions(+), 6 deletions(-) ChangeLog | 8 +++++++ pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 6 ++++- pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java | 11 +++++----- diffs (54 lines): diff -r b763518484a6 -r ce6a731bd3b9 ChangeLog --- a/ChangeLog Fri Oct 24 10:08:18 2008 -0400 +++ b/ChangeLog Fri Oct 24 10:10:49 2008 -0400 @@ -1,3 +1,11 @@ 2008-10-24 Deepak Bhole + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (write): Check for offset being negative. + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java + (testMixerKnowsAboutOpenClips): Removed the assumption that mixer had no + other lines open. + 2008-10-24 Deepak Bhole * plugin/icedtea/netscape/javascript/JSObject.java: Make long constructor diff -r b763518484a6 -r ce6a731bd3b9 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java --- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 24 10:08:18 2008 -0400 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java Fri Oct 24 10:10:49 2008 -0400 @@ -153,8 +153,12 @@ public class PulseAudioSourceDataLine ex throw new IllegalArgumentException("length is negative"); } + if (offset < 0) { + throw new ArrayIndexOutOfBoundsException("offset is negative: " + offset); + } + if (length + offset > data.length) { - throw new ArrayIndexOutOfBoundsException(length + offset); + throw new ArrayIndexOutOfBoundsException("writing data beyond the length of the array: " + (length + offset)); } int position = offset; diff -r b763518484a6 -r ce6a731bd3b9 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java --- a/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java Fri Oct 24 10:08:18 2008 -0400 +++ b/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java Fri Oct 24 10:10:49 2008 -0400 @@ -605,12 +605,13 @@ public class PulseAudioClipTest { AudioInputStream audioInputStream1 = AudioSystem .getAudioInputStream(soundFile1); - Assert.assertEquals(0, mixer.getSourceLines().length); + int initiallyOpenClips = mixer.getSourceLines().length; + Assert.assertEquals(initiallyOpenClips, mixer.getSourceLines().length); clip.open(audioInputStream1); - Assert.assertEquals(1, mixer.getSourceLines().length); - Assert.assertEquals(clip, mixer.getSourceLines()[0]); - clip.close(); - Assert.assertEquals(0, mixer.getSourceLines().length); + Assert.assertEquals(initiallyOpenClips + 1, mixer.getSourceLines().length); + Assert.assertEquals(clip, mixer.getSourceLines()[initiallyOpenClips]); + clip.close(); + Assert.assertEquals(initiallyOpenClips, mixer.getSourceLines().length); } From gnu_andrew at member.fsf.org Wed Oct 29 11:29:44 2008 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Wed, 29 Oct 2008 18:29:44 +0000 Subject: changeset in /hg/icedtea: Merge IcedTea6 1.3.1. Message-ID: changeset c3e121763e20 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=c3e121763e20 description: Merge IcedTea6 1.3.1. 2008-10-29 Andrew John Hughes Merge from IcedTea6 1.3.1. * ChangeLog, * HACKING, * IcedTeaPlugin.cc, * Makefile.am, * NEWS, * gcjwebplugin.cc, * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/Launcher.java, * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/NetxPanel.java, * patches/icedtea-fonts.patch, * patches/icedtea-renderer-crossing.patch, * patches/icedtea-uname.patch, * plugin/icedtea/netscape/javascript/JSObject.java, * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java, * plugin/icedtea/sun/applet/PluginAppletViewer.java, * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java, * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java: Merged. diffstat: 17 files changed, 280 insertions(+), 67 deletions(-) ChangeLog | 105 +++++++++- HACKING | 2 IcedTeaPlugin.cc | 103 ++++++--- Makefile.am | 20 + NEWS | 8 gcjwebplugin.cc | 2 overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/Launcher.java | 20 + overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/NetxPanel.java | 13 + patches/icedtea-fonts.patch | 4 patches/icedtea-renderer-crossing.patch | 15 + patches/icedtea-uname.patch | 12 - plugin/icedtea/netscape/javascript/JSObject.java | 2 plugin/icedtea/sun/applet/PluginAppletSecurityContext.java | 12 - plugin/icedtea/sun/applet/PluginAppletViewer.java | 6 ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 6 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java | 6 pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java | 11 - diffs (truncated from 798 to 500 lines): diff -r ec3687cb7d51 -r c3e121763e20 ChangeLog --- a/ChangeLog Mon Oct 27 23:39:36 2008 +0000 +++ b/ChangeLog Wed Oct 29 18:29:19 2008 +0000 @@ -1,3 +1,25 @@ 2008-10-27 Andrew John Hughes + + Merge from IcedTea6 1.3.1. + * ChangeLog, + * HACKING, + * IcedTeaPlugin.cc, + * Makefile.am, + * NEWS, + * gcjwebplugin.cc, + * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/Launcher.java, + * overlays/openjdk/jdk/src/share/classes/net/sourceforge/jnlp/NetxPanel.java, + * patches/icedtea-fonts.patch, + * patches/icedtea-renderer-crossing.patch, + * patches/icedtea-uname.patch, + * plugin/icedtea/netscape/javascript/JSObject.java, + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java, + * plugin/icedtea/sun/applet/PluginAppletViewer.java, + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java, + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java: + Merged. + 2008-10-27 Andrew John Hughes * acinclude.m4: @@ -7,6 +29,10 @@ 2008-10-27 Andrew John Hughes + + * NEWS: Updated for 1.3.1 release. + 2008-10-27 Andrew John Hughes PR icedtea/234: @@ -15,6 +41,21 @@ 2008-10-27 Andrew John Hughes + + * IcedTeaPlugin.cc: Fix address pointer integer overflow on 64-bit + systems. + * plugin/icedtea/sun/applet/PluginAppletSecurityContext.java: Set cache + dir to be local to each user (~/.icedteaplugin/cache). + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Apply patch from Tom + Fitzsimmons for Bug# 230. + +2008-10-27 Mark Wielaard + + * patches/icedtea-renderer-crossing.patch: New patch. + * Makefile.am (ICEDTEA_PATCHES): Add new patch. + * HACKING: Document new patch. + 2008-10-27 Andrew John Hughes * patches/icedtea-license-headers.patch, @@ -27,6 +68,11 @@ 2008-10-27 Andrew John Hughes + + * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is + available. 2008-10-24 Andrew John Hughes @@ -72,6 +118,10 @@ 2008-10-24 Andrew John Hughes + + * Makefile.am (clean-pulse-java): Remove object files. + 2008-10-22 Andrew John Hughes * patches/icedtea-constructor-properties.patch: @@ -83,6 +133,55 @@ 2008-10-22 Andrew John Hughes + + * Makefile.am (gcjwebplugin.so, IcedTeaPlugin.o): Pass PLUGIN_VERSION. + * gcjwebplugin.cc, IcedTeaPlugin.cc: Encode PLUGIN_VERSION in + PLUGIN_DESCRIPTION. + +2008-10-24 Omair Majid + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourceDataLine.java + (write): Check for offset being negative. + * pulseaudio/unittests/org/classpath/icedtea/pulseaudio/PulseAudioClipTest.java + (testMixerKnowsAboutOpenClips): Removed the assumption that mixer had no + other lines open. + +2008-10-24 Deepak Bhole + + * plugin/icedtea/netscape/javascript/JSObject.java: Make long constructor + public. + +2008-10-24 Matthias Klose + + * Makefile.am (clean-pulseaudio): Don't remove source files. Might + not be correct, but doesn't do harm in any build environment. + +2008-10-23 Deepak Bhole + + * IcedTeaPlugin.cc: Implement proper timeout action. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Supply new + exitOnFailure argument to Netx. + * rt/net/sourceforge/jnlp/Launcher.java: Implement an option for not + exiting VM on error. + * rt/net/sourceforge/jnlp/NetxPanel.java: Same. + +2008-10-23 Lillian Angel + + PR redhat/468193: + * patches/icedtea-fonts.patch: Updated for filename change. + +2008-10-23 Gary Benson + + PR icedtea/229: + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp + (SharkBlock::parse): Parse goto_w correctly. + +2008-10-23 Mark Wielaard + + * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when + ENABLE_PLUGIN is true. + 2008-10-23 Gary Benson PR icedtea/204: @@ -95,9 +194,9 @@ 2008-10-23 Gary Benson - * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID - instead. - * configure.ac: Make DIST_ID more precise. Some implementations of the + * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID + instead. + * configure.ac: Make DIST_ID more precise. Some implementations of the lsb_release command quote the output; ignore it. 2008-10-22 Omair Majid diff -r ec3687cb7d51 -r c3e121763e20 HACKING --- a/HACKING Mon Oct 27 23:39:36 2008 +0000 +++ b/HACKING Wed Oct 29 18:29:19 2008 +0000 @@ -63,6 +63,8 @@ The following patches are currently appl * icedtea-arch.patch: Add support for additional architectures. * icedtea-alt-jar.patch: Add support for using an alternate jar tool in JDK building. * icedtea-hotspot7-tests.patch: Adds hotspot compiler tests from jdk7 tree. +* patches/icedtea-renderer-crossing.patch: Check whether crossing is + initialized in Pisces Renderer. The following patches are only applied to OpenJDK6 in IcedTea6: diff -r ec3687cb7d51 -r c3e121763e20 IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Mon Oct 27 23:39:36 2008 +0000 +++ b/IcedTeaPlugin.cc Wed Oct 29 18:29:19 2008 +0000 @@ -84,6 +84,9 @@ PRThread* current_thread (); // #13 0x0153f91c in ProxyJNIEnv::InvokeMethod (env=0xa8b8040, obj=0x9dad690, method=0xa0ed070, args=0xbff3065c "\235\225$") at ProxyJNI.cpp:580 // #14 0x0153fdbf in ProxyJNIEnv::CallObjectMethod (env=0xa8b8040, obj=0x9dad690, methodID=0xa0ed070) at ProxyJNI.cpp:641 +// timeout (in seconds) for various calls to java side +#define TIMEOUT 20 + #define NOT_IMPLEMENTED() \ printf ("NOT IMPLEMENTED: %s\n", __PRETTY_FUNCTION__) @@ -189,6 +192,12 @@ inline suseconds_t get_time_in_ms() gettimeofday(&tv, &tz); return tv.tv_usec; +} + +inline long get_time_in_s() +{ + time_t t; + return time(&t); } // __func__ is a variable, not a string literal, so it cannot be @@ -266,7 +275,7 @@ inline suseconds_t get_time_in_ms() #endif #define PLUGIN_NAME "IcedTea Web Browser Plugin" -#define PLUGIN_DESCRIPTION "The " PLUGIN_NAME " executes Java applets." +#define PLUGIN_DESCRIPTION "The " PLUGIN_NAME PLUGIN_VERSION " executes Java applets." #define PLUGIN_MIME_DESC \ "application/x-java-vm:class,jar:IcedTea;" \ "application/x-java-applet:class,jar:IcedTea;" \ @@ -439,7 +448,7 @@ char const* TYPES[10] = { "Object", #define MESSAGE_ADD_SIZE(size) \ message += " "; \ - message.AppendInt (size); + message.AppendInt ((PRUintn) size); // Pass character value through socket as an integer. #define MESSAGE_ADD_TYPE(type) \ @@ -2383,13 +2392,31 @@ IcedTeaPluginInstance::SetWindow (nsPlug { if (initialized == PR_FALSE) - { - - PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - - while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) { - PROCESS_PENDING_EVENTS; + { + + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); + + long startTime = get_time_in_s(); + PRBool timedOut = PR_FALSE; + + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) + { + PROCESS_PENDING_EVENTS; + + if ((get_time_in_s() - startTime) > TIMEOUT) + { + timedOut = PR_TRUE; + break; + } } + + // we timed out + if (timedOut == PR_TRUE) + { + PLUGIN_DEBUG_1ARG ("Initialization for instance %d has timed out. Marking it void\n", instance_identifier); + this->fatalErrorOccurred = PR_TRUE; + return NS_ERROR_FAILURE; + } // did we bail because there is no jvm? if (this->fatalErrorOccurred == PR_TRUE) @@ -2531,12 +2558,28 @@ IcedTeaPluginInstance::GetJavaObject (jo if (initialized == PR_FALSE) { - PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - - while (initialized == PR_FALSE) { - PROCESS_PENDING_EVENTS; -// printf("waiting for java object\n"); + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::GetJavaObject: Instance %p waiting for initialization...\n", this); + + long startTime = get_time_in_s(); + PRBool timedOut = PR_FALSE; + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) + { + PROCESS_PENDING_EVENTS; + + if ((get_time_in_s() - startTime) > TIMEOUT) + { + timedOut = PR_TRUE; + break; + } } + + // we timed out + if (timedOut == PR_TRUE) + { + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::GetJavaObject: Initialization for instance %d has timed out. Marking it void\n", instance_identifier); + this->fatalErrorOccurred = PR_TRUE; + return NS_ERROR_FAILURE; + } PLUGIN_DEBUG_1ARG ("Instance %p initialization complete...\n", this); } @@ -2572,8 +2615,13 @@ IcedTeaPluginFactory::GetJavaObject (PRU nsresult result = NS_OK; // wait for result + long startTime = get_time_in_s(); while (object_identifier_return == 0) { current->ProcessNextEvent(PR_TRUE, &processed); + + // If we have been waiting for more than 20 seconds, something is wrong + if ((get_time_in_ms() - startTime) > TIMEOUT) + break; } PLUGIN_DEBUG_1ARG ("GOT JAVA OBJECT IDENTIFIER: %d\n", object_identifier_return); @@ -3585,14 +3633,14 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_DEBUG_TWO ("clearing old input fifo (if any):", in_pipe_name); g_remove(in_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: creating input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("creating input fifo:", in_pipe_name); if (mkfifo (in_pipe_name, 0700) == -1 && errno != EEXIST) { PLUGIN_ERROR_TWO ("Failed to create input pipe", strerror (errno)); result = NS_ERROR_OUT_OF_MEMORY; goto cleanup_in_pipe_name; } - PLUGIN_DEBUG_TWO ("GCJ_New: created input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("created input fifo:", in_pipe_name); // Create plugin-to-appletviewer pipe which we refer to as the // output pipe. @@ -3614,14 +3662,14 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_DEBUG_TWO ("clearing old output fifo (if any):", out_pipe_name); g_remove(out_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: creating output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("creating output fifo:", out_pipe_name); if (mkfifo (out_pipe_name, 0700) == -1 && errno != EEXIST) { PLUGIN_ERROR_TWO ("Failed to create output pipe", strerror (errno)); result = NS_ERROR_OUT_OF_MEMORY; goto cleanup_out_pipe_name; } - PLUGIN_DEBUG_TWO ("GCJ_New: created output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("created output fifo:", out_pipe_name); result = applet_viewer_process->Run (PR_FALSE, args, numArgs, nsnull); PLUGIN_CHECK_RETURN ("run process", result); @@ -3696,9 +3744,9 @@ IcedTeaPluginFactory::StartAppletviewer // cleanup_out_pipe: // Delete output pipe. - PLUGIN_DEBUG_TWO ("GCJ_New: deleting input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("deleting input fifo:", in_pipe_name); unlink (out_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: deleted input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("deleted input fifo:", in_pipe_name); cleanup_out_pipe_name: g_free (out_pipe_name); @@ -3706,9 +3754,9 @@ IcedTeaPluginFactory::StartAppletviewer // cleanup_in_pipe: // Delete input pipe. - PLUGIN_DEBUG_TWO ("GCJ_New: deleting output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("deleting output fifo:", out_pipe_name); unlink (in_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: deleted output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("deleted output fifo:", out_pipe_name); cleanup_in_pipe_name: g_free (in_pipe_name); @@ -3840,7 +3888,7 @@ IcedTeaPluginInstance::GetWindow () message += " "; message += "JavaScriptGetWindow"; message += " "; - message.AppendInt (liveconnect_window); + message.AppendInt ((PRUintn) liveconnect_window); factory->SendMessageToAppletViewer (message); } @@ -4558,7 +4606,7 @@ IcedTeaJNIEnv::ValueString (jni_type typ retstr.AppendInt (value.i); break; case jlong_type: - retstr.AppendInt (value.j); + retstr.AppendInt ((PRUintn) value.j); break; case jfloat_type: retstr += IcedTeaPrintfCString ("%f", value.f); @@ -4687,7 +4735,7 @@ IcedTeaJNIEnv::ExpandArgs (JNIID* id, jv retstr.AppendInt (args[arg].i); break; case 'J': - retstr.AppendInt (args[arg].j); + retstr.AppendInt ((PRUintn) args[arg].j); break; case 'F': retstr += IcedTeaPrintfCString ("%f", args[arg].f); @@ -5536,19 +5584,14 @@ NSGetFactory (nsISupports* aServMgr, nsC return NS_ERROR_OUT_OF_MEMORY; } nsCString executable (dirname (filename)); - nsCString jar(dirname (filename)); - nsCString extrajars(""); + free (filename); filename = NULL; - //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - - //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); diff -r ec3687cb7d51 -r c3e121763e20 Makefile.am --- a/Makefile.am Mon Oct 27 23:39:36 2008 +0000 +++ b/Makefile.am Wed Oct 29 18:29:19 2008 +0000 @@ -585,7 +585,8 @@ ICEDTEA_PATCHES = \ patches/icedtea-messageutils.patch \ $(VISUALVM_PATCH) \ patches/icedtea-javac-debuginfo.patch \ - patches/icedtea-xjc.patch + patches/icedtea-xjc.patch \ + patches/icedtea-renderer-crossing.patch if WITH_RHINO ICEDTEA_PATCHES += \ @@ -729,6 +730,7 @@ stamps/patch.stamp: stamps/patch-fsg.sta if ENABLE_PLUGIN cp -a $(abs_top_srcdir)/plugin/icedtea/sun/applet/*java openjdk/jdk/src/share/classes/sun/applet/ + mkdir -p rt cp -a $(abs_top_srcdir)/plugin/icedtea/netscape rt/ endif @@ -1532,10 +1534,16 @@ if ENABLE_GCJWEBPLUGIN if ENABLE_GCJWEBPLUGIN # gcjwebplugin.so. gcjwebplugin.so: gcjwebplugin.cc + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + if [ -n "$(PKGVERSION)" ]; then plugin_version=" ($(PKGVERSION))"; fi; \ + plugin_version=" $(PACKAGE_VERSION)$$revision$$plugin_version"; \ $(CXX) $(CXXFLAGS) $(MOZILLA_CFLAGS) \ $(MOZILLA_LIBS) $(GLIB_CFLAGS) $(GLIB_LIBS) \ $(GTK_CFLAGS) $(GTK_LIBS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -DPLUGIN_VERSION="\"$$plugin_version\"" \ -fPIC -shared -o $@ $< clean-gcjwebplugin: @@ -1547,8 +1555,14 @@ if ENABLE_PLUGIN # is listed before -l options. See: # http://developer.mozilla.org/en/docs/XPCOM_Glue IcedTeaPlugin.o: IcedTeaPlugin.cc + if [ -e $(abs_top_srcdir)/.hg ] && which $(HG) >/dev/null; then \ + revision="-r`(cd $(abs_top_srcdir); $(HG) tip --template '{rev}')`" ; \ + fi ; \ + if [ -n "$(PKGVERSION)" ]; then plugin_version=" ($(PKGVERSION))"; fi; \ + plugin_version=" $(PACKAGE_VERSION)$$revision$$plugin_version"; \ $(CXX) $(CXXFLAGS) \ -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" \ + -DPLUGIN_VERSION="\"$$plugin_version\"" \ $(GTK_CFLAGS) \ $(XULRUNNER_CFLAGS) \ -fPIC -c -o $@ $< @@ -1645,8 +1659,8 @@ endif clean-pulse-java: if ENABLE_PULSE_JAVA - rm -rf $(PULSE_JAVA_CLASS_DIR)/* - rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h + [ -z "$(PULSE_JAVA_CLASS_DIR)" ] || find $(PULSE_JAVA_CLASS_DIR) -name '*.class' | xargs -r rm -f + [ -z "$(PULSE_JAVA_NATIVE_SRCDIR)" ] || rm -f $(PULSE_JAVA_NATIVE_SRCDIR)/org_*.h $(PULSE_JAVA_NATIVE_SRCDIR)/*.o rm -f stamps/pulse-java*.stamp rm -f pulse-java.jar rm -f libpulse-java.so diff -r ec3687cb7d51 -r c3e121763e20 NEWS --- a/NEWS Mon Oct 27 23:39:36 2008 +0000 +++ b/NEWS Wed Oct 29 18:29:19 2008 +0000 @@ -4,7 +4,7 @@ New in release 1.8 (XXXX-XX-XX) IcedTea6 and OpenJDK. The following noteworthy changes were added in this release: -- Updated to b36 build. +- Updated to b38 build. - Fixed to use new sound service, Gervill. - Many Netx fixes and now built by default. - LiveConnect support (--enable-liveconnect). @@ -22,6 +22,12 @@ New in release 1.8 (XXXX-XX-XX) - Add support for Zero builds on alpha, arm, mips, mipsel, m68k, s390. - Various build fixes. - Several bug and security fixes. +- Plugin including LiveConnect support built as default. +- Various bugs fixed: renderer patch, version string updated, +chinese fonts filename fix for Fedora etc. +- More progress on Shark and Cacao. +- Several plugin bug fixes. +- Several build fixes. New in release 1.7 (2008-06-02) diff -r ec3687cb7d51 -r c3e121763e20 gcjwebplugin.cc --- a/gcjwebplugin.cc Mon Oct 27 23:39:36 2008 +0000 +++ b/gcjwebplugin.cc Wed Oct 29 18:29:19 2008 +0000 @@ -84,7 +84,7 @@ exception statement from your version. * // Plugin information passed to about:plugins. #define PLUGIN_NAME "GCJ Web Browser Plugin (using IcedTea)" -#define PLUGIN_DESC "The " PLUGIN_NAME " executes Java applets." +#define PLUGIN_DESC "The " PLUGIN_NAME PLUGIN_VERSION " executes Java applets." From dbhole at redhat.com Wed Oct 29 11:29:41 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Oct 2008 18:29:41 +0000 Subject: changeset in /hg/icedtea: - Supply classpath to vm when initiali... Message-ID: changeset 93f0928ec0ed in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=93f0928ec0ed description: - Supply classpath to vm when initializing - Do not exit java on error - Don't wait forever (c++ side) for java to respond diffstat: 5 files changed, 93 insertions(+), 28 deletions(-) ChangeLog | 9 ++ IcedTeaPlugin.cc | 77 ++++++++++++++------- plugin/icedtea/sun/applet/PluginAppletViewer.java | 2 rt/net/sourceforge/jnlp/Launcher.java | 20 +++++ rt/net/sourceforge/jnlp/NetxPanel.java | 13 +++ diffs (296 lines): diff -r 19ff33216eaf -r 93f0928ec0ed ChangeLog --- a/ChangeLog Thu Oct 23 12:17:26 2008 -0400 +++ b/ChangeLog Thu Oct 23 12:27:23 2008 -0400 @@ -1,3 +1,12 @@ 2008-10-23 Lillian Angel + + * IcedTeaPlugin.cc: Supply classpath to rt.jar when starting java. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Tell Netx to exit VM + on error. + * rt/net/sourceforge/jnlp/Launcher.java: Implement an option for not + exiting VM on error. + * rt/net/sourceforge/jnlp/NetxPanel.java: Same. + 2008-10-23 Lillian Angel PR redhat/468193: diff -r 19ff33216eaf -r 93f0928ec0ed IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Thu Oct 23 12:17:26 2008 -0400 +++ b/IcedTeaPlugin.cc Thu Oct 23 12:27:23 2008 -0400 @@ -83,6 +83,9 @@ PRThread* current_thread (); // #12 0x0153e62f in ProxyJNIEnv::InvokeMethod (env=0xa8b8040, obj=0x9dad690, method=0xa0ed070, args=0x0) at ProxyJNI.cpp:571 // #13 0x0153f91c in ProxyJNIEnv::InvokeMethod (env=0xa8b8040, obj=0x9dad690, method=0xa0ed070, args=0xbff3065c "\235\225$") at ProxyJNI.cpp:580 // #14 0x0153fdbf in ProxyJNIEnv::CallObjectMethod (env=0xa8b8040, obj=0x9dad690, methodID=0xa0ed070) at ProxyJNI.cpp:641 + +// timeout (in seconds) for various calls to java side +#define TIMEOUT 20 #define NOT_IMPLEMENTED() \ printf ("NOT IMPLEMENTED: %s\n", __PRETTY_FUNCTION__) @@ -312,6 +315,7 @@ static GError* channel_error = NULL; // Fully-qualified appletviewer executable. gchar* data_directory = NULL; static char* appletviewer_executable = NULL; +static char* appletviewer_classpath = NULL; static char* libjvm_so = NULL; class IcedTeaPluginFactory; @@ -2383,13 +2387,27 @@ IcedTeaPluginInstance::SetWindow (nsPlug { if (initialized == PR_FALSE) - { - - PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); - - while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) { - PROCESS_PENDING_EVENTS; + { + + PLUGIN_DEBUG_1ARG ("IcedTeaPluginInstance::SetWindow: Instance %p waiting for initialization...\n", this); + + suseconds_t startTime = get_time_in_ms(); + PRBool timedOut = PR_FALSE; + + while (initialized == PR_FALSE && this->fatalErrorOccurred == PR_FALSE) + { + PROCESS_PENDING_EVENTS; + + if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + { + timedOut = PR_TRUE; + break; + } } + + // we timed out + if (timedOut == PR_TRUE) + return NS_ERROR_FAILURE; // did we bail because there is no jvm? if (this->fatalErrorOccurred == PR_TRUE) @@ -2572,8 +2590,13 @@ IcedTeaPluginFactory::GetJavaObject (PRU nsresult result = NS_OK; // wait for result + suseconds_t startTime = get_time_in_ms(); while (object_identifier_return == 0) { current->ProcessNextEvent(PR_TRUE, &processed); + + // If we have been waiting for more than 20 seconds, something is wrong + if ((get_time_in_ms() - startTime) > TIMEOUT*1000) + break; } PLUGIN_DEBUG_1ARG ("GOT JAVA OBJECT IDENTIFIER: %d\n", object_identifier_return); @@ -3551,15 +3574,17 @@ IcedTeaPluginFactory::StartAppletviewer if (getenv("ICEDTEAPLUGIN_DEBUG")) { - numArgs = 4; - char const* javaArgs[4] = { "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; + numArgs = 6; + char const* javaArgs[6] = { "-cp", appletviewer_classpath, "-Xdebug", "-Xnoagent", "-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n", "sun.applet.PluginMain" }; args = javaArgs; } else { - numArgs = 1; - char const* javaArgs[1] = { "sun.applet.PluginMain" }; + numArgs = 3; + char const* javaArgs[3] = { "-cp", appletviewer_classpath, "sun.applet.PluginMain" }; args = javaArgs; } + + printf("Executing: %s %s\n", appletviewer_executable, args); // start processing thread nsCOMPtr processMessageEvent = @@ -3585,14 +3610,14 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_DEBUG_TWO ("clearing old input fifo (if any):", in_pipe_name); g_remove(in_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: creating input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("creating input fifo:", in_pipe_name); if (mkfifo (in_pipe_name, 0700) == -1 && errno != EEXIST) { PLUGIN_ERROR_TWO ("Failed to create input pipe", strerror (errno)); result = NS_ERROR_OUT_OF_MEMORY; goto cleanup_in_pipe_name; } - PLUGIN_DEBUG_TWO ("GCJ_New: created input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("created input fifo:", in_pipe_name); // Create plugin-to-appletviewer pipe which we refer to as the // output pipe. @@ -3614,14 +3639,14 @@ IcedTeaPluginFactory::StartAppletviewer PLUGIN_DEBUG_TWO ("clearing old output fifo (if any):", out_pipe_name); g_remove(out_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: creating output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("creating output fifo:", out_pipe_name); if (mkfifo (out_pipe_name, 0700) == -1 && errno != EEXIST) { PLUGIN_ERROR_TWO ("Failed to create output pipe", strerror (errno)); result = NS_ERROR_OUT_OF_MEMORY; goto cleanup_out_pipe_name; } - PLUGIN_DEBUG_TWO ("GCJ_New: created output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("created output fifo:", out_pipe_name); result = applet_viewer_process->Run (PR_FALSE, args, numArgs, nsnull); PLUGIN_CHECK_RETURN ("run process", result); @@ -3696,9 +3721,9 @@ IcedTeaPluginFactory::StartAppletviewer // cleanup_out_pipe: // Delete output pipe. - PLUGIN_DEBUG_TWO ("GCJ_New: deleting input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("deleting input fifo:", in_pipe_name); unlink (out_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: deleted input fifo:", in_pipe_name); + PLUGIN_DEBUG_TWO ("deleted input fifo:", in_pipe_name); cleanup_out_pipe_name: g_free (out_pipe_name); @@ -3706,9 +3731,9 @@ IcedTeaPluginFactory::StartAppletviewer // cleanup_in_pipe: // Delete input pipe. - PLUGIN_DEBUG_TWO ("GCJ_New: deleting output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("deleting output fifo:", out_pipe_name); unlink (in_pipe_name); - PLUGIN_DEBUG_TWO ("GCJ_New: deleted output fifo:", out_pipe_name); + PLUGIN_DEBUG_TWO ("deleted output fifo:", out_pipe_name); cleanup_in_pipe_name: g_free (in_pipe_name); @@ -5536,24 +5561,28 @@ NSGetFactory (nsISupports* aServMgr, nsC return NS_ERROR_OUT_OF_MEMORY; } nsCString executable (dirname (filename)); - nsCString jar(dirname (filename)); - nsCString extrajars(""); + nsCString classpath(dirname (filename)); free (filename); filename = NULL; - //executableString += nsCString ("/../../bin/pluginappletviewer"); executable += nsCString ("/../../bin/java"); - - //executable += nsCString ("/client/libjvm.so"); // Never freed. appletviewer_executable = strdup (executable.get ()); - //libjvm_so = strdup (executable.get ()); if (!appletviewer_executable) { PLUGIN_ERROR ("Failed to create java executable name."); return NS_ERROR_OUT_OF_MEMORY; } + + classpath += nsCString ("/rt.jar"); + appletviewer_classpath = strdup (classpath.get ()); + if (!appletviewer_classpath) + { + PLUGIN_ERROR ("Failed to create java classpath string."); + return NS_ERROR_OUT_OF_MEMORY; + } + // Make sure the plugin data directory exists, creating it if // necessary. diff -r 19ff33216eaf -r 93f0928ec0ed plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 12:17:26 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Thu Oct 23 12:27:23 2008 -0400 @@ -175,7 +175,7 @@ import sun.misc.Ref; AccessController.doPrivileged(new PrivilegedAction() { public Object run() { try { - panel = new NetxPanel(doc, atts); + panel = new NetxPanel(doc, atts, false); AppletViewerPanel.debug("Using NetX panel"); } catch (Exception ex) { AppletViewerPanel.debug("Unable to start NetX applet - defaulting to Sun applet", ex); diff -r 19ff33216eaf -r 93f0928ec0ed rt/net/sourceforge/jnlp/Launcher.java --- a/rt/net/sourceforge/jnlp/Launcher.java Thu Oct 23 12:17:26 2008 -0400 +++ b/rt/net/sourceforge/jnlp/Launcher.java Thu Oct 23 12:27:23 2008 -0400 @@ -59,6 +59,8 @@ public class Launcher { /** whether to create an AppContext (if possible) */ private boolean context = true; + /** If the application should call System.exit on fatal errors */ + private boolean exitOnFailure = true; /** * Create a launcher with the runtime's default update policy @@ -69,6 +71,21 @@ public class Launcher { if (handler == null) handler = JNLPRuntime.getDefaultLaunchHandler(); + } + + /** + * Create a launcher with the runtime's default update policy + * and launch handler. + * + * @param exitOnError Exit if there is an error (usually default, but false when being used from the plugin) + */ + public Launcher(boolean exitOnFailure) { + this(null, null); + + if (handler == null) + handler = JNLPRuntime.getDefaultLaunchHandler(); + + this.exitOnFailure = exitOnFailure; } /** @@ -595,7 +612,8 @@ public class Launcher { ex.printStackTrace(); exception = ex; // Exit if we can't launch the application. - System.exit(0); + if (exitOnFailure) + System.exit(0); } } diff -r 19ff33216eaf -r 93f0928ec0ed rt/net/sourceforge/jnlp/NetxPanel.java --- a/rt/net/sourceforge/jnlp/NetxPanel.java Thu Oct 23 12:17:26 2008 -0400 +++ b/rt/net/sourceforge/jnlp/NetxPanel.java Thu Oct 23 12:27:23 2008 -0400 @@ -39,10 +39,18 @@ public class NetxPanel extends AppletVie public class NetxPanel extends AppletViewerPanel { private PluginBridge bridge = null; + private boolean exitOnFailure = true; public NetxPanel(URL documentURL, Hashtable atts) { super(documentURL, atts); + } + + // overloaded constructor, called when initialized via plugin + public NetxPanel(URL documentURL, Hashtable atts, boolean exitOnFailure) + { + this(documentURL, atts); + this.exitOnFailure = exitOnFailure; } //Overriding to use Netx classloader. You might need to relax visibility @@ -72,14 +80,15 @@ public class NetxPanel extends AppletVie dispatchAppletEvent(APPLET_LOADING, null); status = APPLET_LOAD; - Launcher l = new Launcher(); + Launcher l = new Launcher(exitOnFailure); AppletInstance appInst = null; try { appInst = (AppletInstance) l.launch(bridge, this); } catch (LaunchException e) { // Assume user has indicated he does not trust the // applet. - System.exit(0); + if (exitOnFailure) + System.exit(0); } applet = appInst.getApplet(); From dbhole at redhat.com Wed Oct 29 11:29:41 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Oct 2008 18:29:41 +0000 Subject: changeset in /hg/icedtea: Made the long constructor public. Message-ID: changeset b763518484a6 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=b763518484a6 description: Made the long constructor public. diffstat: 2 files changed, 6 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ plugin/icedtea/netscape/javascript/JSObject.java | 2 +- diffs (24 lines): diff -r a8f8cb9d58df -r b763518484a6 ChangeLog --- a/ChangeLog Fri Oct 24 13:33:32 2008 +0200 +++ b/ChangeLog Fri Oct 24 10:08:18 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-24 Matthias Klose + + * plugin/icedtea/netscape/javascript/JSObject.java: Make long constructor + public. + 2008-10-24 Matthias Klose * Makefile.am (clean-pulseaudio): Don't remove source files. Might diff -r a8f8cb9d58df -r b763518484a6 plugin/icedtea/netscape/javascript/JSObject.java --- a/plugin/icedtea/netscape/javascript/JSObject.java Fri Oct 24 13:33:32 2008 +0200 +++ b/plugin/icedtea/netscape/javascript/JSObject.java Fri Oct 24 10:08:18 2008 -0400 @@ -109,7 +109,7 @@ public final class JSObject { internal = jsobj_addr; } - private JSObject(long jsobj_addr) { + public JSObject(long jsobj_addr) { PluginDebug.debug ("JSObject long CONSTRUCTOR"); long_internal = jsobj_addr; } From mark at klomp.org Wed Oct 29 11:29:43 2008 From: mark at klomp.org (Mark Wielaard) Date: Wed, 29 Oct 2008 18:29:43 +0000 Subject: changeset in /hg/icedtea: * patches/icedtea-renderer-crossing.pa... Message-ID: changeset fda32eba4b37 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=fda32eba4b37 description: * patches/icedtea-renderer-crossing.patch: New patch. * Makefile.am (ICEDTEA_PATCHES): Add new patch. * HACKING: Document new patch. diffstat: 4 files changed, 25 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ HACKING | 2 ++ Makefile.am | 3 ++- patches/icedtea-renderer-crossing.patch | 15 +++++++++++++++ diffs (57 lines): diff -r 55a7a736bf3d -r fda32eba4b37 ChangeLog --- a/ChangeLog Mon Oct 27 12:05:29 2008 +0100 +++ b/ChangeLog Mon Oct 27 15:52:37 2008 +0100 @@ -1,3 +1,9 @@ 2008-10-27 Matthias Klose + + * patches/icedtea-renderer-crossing.patch: New patch. + * Makefile.am (ICEDTEA_PATCHES): Add new patch. + * HACKING: Document new patch. + 2008-10-27 Matthias Klose * patches/icedtea-uname.dpatch: Only call dpkg-architecture if it is diff -r 55a7a736bf3d -r fda32eba4b37 HACKING --- a/HACKING Mon Oct 27 12:05:29 2008 +0100 +++ b/HACKING Mon Oct 27 15:52:37 2008 +0100 @@ -62,6 +62,8 @@ The following patches are currently appl * icedtea-arch.patch: Add support for additional architectures. * icedtea-alt-jar.patch: Add support for using an alternate jar tool in JDK building. * icedtea-hotspot7-tests.patch: Adds hotspot compiler tests from jdk7 tree. +* patches/icedtea-renderer-crossing.patch: Check whether crossing is + initialized in Pisces Renderer. The following patches are only applied to OpenJDK6 in IcedTea6: diff -r 55a7a736bf3d -r fda32eba4b37 Makefile.am --- a/Makefile.am Mon Oct 27 12:05:29 2008 +0100 +++ b/Makefile.am Mon Oct 27 15:52:37 2008 +0100 @@ -533,7 +533,8 @@ ICEDTEA_PATCHES = \ patches/icedtea-6open-6756202.patch \ $(VISUALVM_PATCH) \ patches/icedtea-javac-debuginfo.patch \ - patches/icedtea-xjc.patch + patches/icedtea-xjc.patch \ + patches/icedtea-renderer-crossing.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 55a7a736bf3d -r fda32eba4b37 patches/icedtea-renderer-crossing.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-renderer-crossing.patch Mon Oct 27 15:52:37 2008 +0100 @@ -0,0 +1,15 @@ +--- openjdk6/jdk/src/share/classes/sun/java2d/pisces/Renderer.java 2008-08-28 10:14:15.000000000 +0200 ++++ openjdk/jdk/src/share/classes/sun/java2d/pisces/Renderer.java 2008-10-27 13:54:25.000000000 +0100 +@@ -775,10 +775,10 @@ + + // Free sorting arrays if larger than maximum size + private void crossingListFinished() { +- if (crossings.length > DEFAULT_CROSSINGS_SIZE) { ++ if (crossings != null && crossings.length > DEFAULT_CROSSINGS_SIZE) { + crossings = new int[DEFAULT_CROSSINGS_SIZE]; + } +- if (crossingIndices.length > DEFAULT_INDICES_SIZE) { ++ if (crossingIndices != null && crossingIndices.length > DEFAULT_INDICES_SIZE) { + crossingIndices = new int[DEFAULT_INDICES_SIZE]; + } + } From gbenson at redhat.com Wed Oct 29 11:29:40 2008 From: gbenson at redhat.com (Gary Benson) Date: Wed, 29 Oct 2008 18:29:40 +0000 Subject: changeset in /hg/icedtea: 2008-10-23 Gary Benson changeset 6ce8e4006dd4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=6ce8e4006dd4 description: 2008-10-23 Gary Benson PR icedtea/229: * ports/hotspot/src/share/vm/shark/sharkBlock.cpp (SharkBlock::parse): Parse goto_w correctly. diffstat: 2 files changed, 11 insertions(+), 1 deletion(-) ChangeLog | 6 ++++++ ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 6 +++++- diffs (36 lines): diff -r 0fafece1a73c -r 6ce8e4006dd4 ChangeLog --- a/ChangeLog Thu Oct 23 12:17:21 2008 +0200 +++ b/ChangeLog Thu Oct 23 10:31:07 2008 -0400 @@ -1,3 +1,9 @@ 2008-10-23 Mark Wielaard + + PR icedtea/229: + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp + (SharkBlock::parse): Parse goto_w correctly. + 2008-10-23 Mark Wielaard * Makefile.am (stamps/patch.stamp): Make sure rt dir exists when diff -r 0fafece1a73c -r 6ce8e4006dd4 ports/hotspot/src/share/vm/shark/sharkBlock.cpp --- a/ports/hotspot/src/share/vm/shark/sharkBlock.cpp Thu Oct 23 12:17:21 2008 +0200 +++ b/ports/hotspot/src/share/vm/shark/sharkBlock.cpp Thu Oct 23 10:31:07 2008 -0400 @@ -140,7 +140,6 @@ void SharkBlock::parse() switch (bc()) { case Bytecodes::_goto: - case Bytecodes::_goto_w: case Bytecodes::_ifnull: case Bytecodes::_ifnonnull: case Bytecodes::_if_acmpeq: @@ -158,6 +157,11 @@ void SharkBlock::parse() case Bytecodes::_if_icmpgt: case Bytecodes::_if_icmpge: if (iter()->get_dest() <= bci()) + add_safepoint(); + break; + + case Bytecodes::_goto_w: + if (iter()->get_far_dest() <= bci()) add_safepoint(); break; From mark at klomp.org Thu Oct 30 03:12:14 2008 From: mark at klomp.org (Mark Wielaard) Date: Thu, 30 Oct 2008 11:12:14 +0100 Subject: Public open specs In-Reply-To: <1224616572.3700.22.camel@hermans.wildebeest.org> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <48D25FA3.1010101@sun.com> <1221748023.3256.55.camel@dijkstra.wildebeest.org> <48D3779C.4090503@sun.com> <1221819427.3288.2.camel@dijkstra.wildebeest.org> <48D38203.8040609@sun.com> <1221821605.3288.10.camel@dijkstra.wildebeest.org> <48D38A0B.8070305@sun.com> <1222347445.3266.72.camel@dijkstra.wildebeest.org> <48DB92FC.3060100@sun.com> <1222940811.3265.12.camel@dijkstra.wildebeest.org> <1223541805.3958.3.camel@dijkstra.wildebeest.org> <48F4BD78.1060704@sun.com> <1223999173.3470.11.camel@hermans.wildebeest.org> <48F4DD1E.6000106@sun.com> <1224616572.3700.22.camel@hermans.wildebeest.org> Message-ID: <1225361534.3289.11.camel@dijkstra.wildebeest.org> Hi Dalibor, On Tue, 2008-10-21 at 21:16 +0200, Mark Wielaard wrote: > On Tue, 2008-10-14 at 19:55 +0200, Dalibor Topic wrote: > > Not yet (outside the JSR spec document). The process bottleneck is > > identified, working on a fix. > > That is great! Any timelines for these process fixes to be cleared up? > It has been a little funny that Sun is now producing GPLed code for the > various JSRs they lead, but still publish the JSR specs themselves under > terms that conflict (through the 2a-c restrictions) with the liberties > granted by the GPL. I came up with the following list of JSRs that have > a Sun lead and for which OpenJDK provides (prototype) GPL code, but > which are published under non-free terms preventing others to also > publish (independent) implementations or extend the OpenJDK provided > ones: > > JSR 105: XML Digital Signature APIs > JSR 199: Java Compiler API > JSR 202: JavaTM Class File Specification Update > JSR 203: More New I/O APIs for the JavaTM Platform ("NIO.2") > JSR 221: JDBC 4.0 API Specification > JSR 222: Java Architecture for XML Binding (JAXB) 2.0 > JSR 223: Scripting for the Java Platform > JSR 224: Java API for XML-Based Web Services (JAX-WS) 2.0 > JSR 250: Common Annotations for the Java Platform > JSR 255: Java Management Extensions (JMX) Specification, version 2.0 > JSR 269: Pluggable Annotation Processing API > JSR 270: Java SE 6 Release Contents > JSR 277: Java Module System > JSR 292: Supporting Dynamically Typed Languages on the Java Platform > JSR 294: Improved Modularity Support in the Java Programming Language > > Would be great to see all these specs finally liberated. Any progress on the fix to the process bottlenecks so these Sun controlled specs that are essential for OpenJDK can be freely and openly published? Thanks, Mark From bugzilla-daemon at icedtea.classpath.org Thu Oct 30 10:40:23 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 30 Oct 2008 17:40:23 +0000 Subject: [Bug 220] missing netscape/javascript classes if configuring --with-alt-jar=/usr/bin/fastjar Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=220 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Thu Oct 30 11:07:29 2008 From: doko at ubuntu.com (Matthias Klose) Date: Thu, 30 Oct 2008 19:07:29 +0100 Subject: IcedTeaPlugin in konqueror? Message-ID: <4909F7E1.1030504@ubuntu.com> While testing release DVD's I found about the IcedTeaPlugin not working in konqueror. Documented in https://launchpad.net/bugs/290707 Apparently konquereor has it's own plugin not supporting LiveConnect which cannot be replaced by the IcedTeaPlugin. But I'm pretty ignorant to KDE ... Matthias From evgueni.gordienko at motorola.com Thu Oct 30 16:36:31 2008 From: evgueni.gordienko at motorola.com (Gordienko Evgueni-XPNG76) Date: Thu, 30 Oct 2008 19:36:31 -0400 Subject: Linkage problem while building OpenJDK with shark and llvm. Message-ID: <40C664BC8DEC2A4F8E8DD6B78C9C6D120522639D@ct11exm63.ds.mot.com> Hi All, My gcc is 4.3.2 on fedora 7 PowerPC. I'm building latest OpenJDK with shark. As Gary Benson suggested I build llvm rev 54012 - it did not compile under gcc 4.3.2 but compiled fine under gcc 4.1.2. So I used it while compiled OpenJDK under gcc 4.3.2. Below is last part of make.log. Looks like linkage error. Can someone help? Is it possible that I have newer revision than 54012 of llvm installed in /usr/local/lib ? Attached is my make.log Thanks, Evgueni cat /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/build/linux/makefiles/ma pfile-vers-product > mapfile Generating launcher.c { \ echo '#define debug launcher_debug'; \ echo '#include "java.c"'; \ echo '#include "java_md.c"'; \ } > launcher.c Making signal interposition lib... gcc -m32 -shared -fPIC \ -D_GNU_SOURCE -D_REENTRANT -o libjsig.so /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/os/linux/vm/jsig.c -ldl if [ -d /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/agent -a "zero" != "ia64" -a "zero" != "zero" ] ; then \ /usr/bin/make -f vm.make libsaproc.so; \ fi rm -f mapfile_reorder cat mapfile > mapfile_reorder gcc -g -c -o launcher.o launcher.c -m32 -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/os/linux/launcher -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/prims -DFULL_VERSION=\"10.0-b19\" -DARCH=\"ppc\" -DGAMMA -DLAUNCHER_TYPE=\"gamma\" -DLINK_INTO_LIBJVM -DLINUX -D_GNU_SOURCE -DCC_INTERP -DZERO -DPPC -DZERO_LIBARCH=\"ppc\" -DASSERT -I. -I../generated/adfiles -I../generated/jvmtifiles -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/asm -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/c1 -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/ci -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/classfile -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/code -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/compiler -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/concurrentMarkSweep -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/parallelScavenge -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/parNew -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/shared -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_interf ace -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/interpret er -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/memory -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/oops -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/prims -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/runtime -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/services -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/utilities -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/cpu/zero/vm -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/os/linux/vm -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/os_cpu/linux_zero/ vm -I../generated -DHOTSPOT_RELEASE_VERSION="\"10.0-b19\"" -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"root\"" -DJRE_RELEASE_VERSION="\"1.6.0_0-b12\"" -DHOTSPOT_VM_DISTRO="\"OpenJDK\"" Compiling /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/runtime/vm_ version.cpp rm -f vm_version.o g++ -DLINUX -D_GNU_SOURCE -DCC_INTERP -DZERO -DPPC -DZERO_LIBARCH=\"ppc\" -DASSERT -I. -I../generated/adfiles -I../generated/jvmtifiles -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/asm -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/c1 -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/ci -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/classfile -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/code -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/compiler -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/concurrentMarkSweep -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/parallelScavenge -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/parNew -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_implem entation/shared -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/gc_interf ace -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/interpret er -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/memory -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/oops -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/prims -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/runtime -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/services -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/shark -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/utilities -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/cpu/zero/vm -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/os/linux/vm -I/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/os_cpu/linux_zero/ vm -I../generated -DHOTSPOT_RELEASE_VERSION="\"10.0-b19\"" -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"root\"" -DJRE_RELEASE_VERSION="\"1.6.0_0-b12\"" -DHOTSPOT_VM_DISTRO="\"OpenJDK\"" -DSHARK -I/usr/local/lib/libffi-3.0.6/include -I/opt/build-icedtea/llvm/Release/include -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -fPIC -fPIC -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -g -m32 -pipe -O0 -fno-strict-aliasing -Werror -Wpointer-arith -Wconversion -Wsign-compare -c -o vm_version.o /opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/src/share/vm/runtime/vm_ version.cpp { \ echo Linking vm...; \ \ gcc -m32 -Xlinker -O1 -shared \ -Xlinker --version-script=mapfile_reorder -Xlinker -soname=libjvm.so -L/opt/build-icedtea/llvm/Release/lib -lpthread -ldl -lm -lelf -o libjvm.so abstractCompiler.o accessFlags.o adaptiveSizePolicy.o adjoiningGenerations.o adjoiningVirtualSpaces.o ageTable.o allocation.o allocationStats.o aprofiler.o arguments.o array.o arrayKlass.o arrayKlassKlass.o arrayOop.o asPSOldGen.o asPSYoungGen.o asParNewGeneration.o assembler.o assembler_linux_zero.o assembler_zero.o atomic.o attachListener.o attachListener_linux.o bcEscapeAnalyzer.o biasedLocking.o binaryTreeDictionary.o bitMap.o blockOffsetTable.o bytecode.o bytecodeHistogram.o bytecodeInterpreter.o bytecodeInterpreterWithChecks.o bytecodeInterpreter_zero.o bytecodeStream.o bytecodeTracer.o bytecodes.o bytecodes_zero.o cSpaceCounters.o cardTableExtension.o cardTableModRefBS.o cardTableRS.o ciArray.o ciArrayKlass.o ciConstant.o ciConstantPoolCache.o ciEnv.o ciExceptionHandler.o ciField.o ciFlags.o ciInstance.o ciInstanceKlass.o ciInstanceKlassKlass.o ciKlass.o ciKlassKlass.o ciMethod.o ciMethodBlocks.o ciMethodData.o ciMethodKlass.o ciNullObject.o ciObjArrayKlass.o ciObjArrayKlassKlass.o ciObject.o ciObjectFactory.o ciSignature.o ciStreams.o ciSymbol.o ciSymbolKlass.o ciType.o ciTypeArray.o ciTypeArrayKlass.o ciTypeArrayKlassKlass.o ciTypeFlow.o ciUtilities.o classFileError.o classFileParser.o classFileStream.o classLoader.o classLoadingService.o classify.o cmsAdaptiveSizePolicy.o cmsCollectorPolicy.o cmsGCAdaptivePolicyCounters.o cmsLockVerifier.o cmsPermGen.o codeBlob.o codeBuffer.o codeCache.o collectedHeap.o collectorCounters.o collectorPolicy.o compactibleFreeListSpace.o compactingPermGenGen.o compilationPolicy.o compileBroker.o compileLog.o compiledIC.o compiledICHolderKlass.o compiledICHolderOop.o compilerOracle.o compressedStream.o concurrentGCThread.o concurrentMarkSweepGeneration.o concurrentMarkSweepThread.o constMethodKlass.o constMethodOop.o constantPoolKlass.o constantPoolOop.o constantTag.o copy.o cpCacheKlass.o cpCacheOop.o cppInterpreter.o cppInterpreter_zero.o debug.o debugInfo.o debugInfoRec.o debug_zero.o defNewGeneration.o deoptimization.o depChecker_zero.o dependencies.o dictionary.o disassembler_zero.o dtraceAttacher.o dump.o dump_zero.o events.o evmCompat.o exceptionHandlerTable.o exceptions.o fieldDescriptor.o fieldType.o filemap.o forte.o fprofiler.o frame.o frame_zero.o freeBlockDictionary.o freeChunk.o freeList.o gSpaceCounters.o gcAdaptivePolicyCounters.o gcCause.o gcLocker.o gcPolicyCounters.o gcStats.o gcTaskManager.o gcTaskThread.o gcUtil.o genCollectedHeap.o genMarkSweep.o genRemSet.o generateOopMap.o generation.o generationCounters.o generationSpec.o globalDefinitions.o globals.o growableArray.o handles.o hashtable.o heap.o heapDumper.o heapInspection.o histogram.o hpi.o hpi_linux.o icBuffer.o icBuffer_zero.o icache.o icache_zero.o immutableSpace.o init.o instanceKlass.o instanceKlassKlass.o instanceOop.o instanceRefKlass.o interfaceSupport.o interp_masm_zero.o interpreter.o interpreterRT_zero.o interpreterRuntime.o interpreter_zero.o invocationCounter.o iterator.o java.o javaAssertions.o javaCalls.o javaClasses.o jni.o jniCheck.o jniFastGetField.o jniFastGetField_zero.o jniHandles.o jniPeriodicChecker.o jvm.o jvm_linux.o jvmtiClassFileReconstituter.o jvmtiCodeBlobEvents.o jvmtiEnter.o jvmtiEnterTrace.o jvmtiEnv.o jvmtiEnvBase.o jvmtiEnvThreadState.o jvmtiEventController.o jvmtiExport.o jvmtiExtensions.o jvmtiGetLoadedClasses.o jvmtiImpl.o jvmtiManageCapabilities.o jvmtiRedefineClasses.o jvmtiTagMap.o jvmtiThreadState.o jvmtiTrace.o jvmtiUtil.o klass.o klassKlass.o klassOop.o klassVtable.o linkResolver.o loaderConstraints.o location.o lowMemoryDetector.o management.o markOop.o markSweep.o memRegion.o memoryManager.o memoryPool.o memoryService.o memprofiler.o methodComparator.o methodDataKlass.o methodDataOop.o methodKlass.o methodLiveness.o methodOop.o monitorChunk.o mutableNUMASpace.o mutableSpace.o mutex.o mutexLocker.o mutex_linux.o nativeInst_zero.o nativeLookup.o nmethod.o objArrayKlass.o objArrayKlassKlass.o objArrayOop.o objectMonitor_linux.o objectStartArray.o oop.o oopFactory.o oopMap.o oopMapCache.o oopRecorder.o oopsHierarchy.o orderAccess.o os.o osThread.o osThread_linux.o os_linux.o os_linux_zero.o ostream.o parCardTableModRefBS.o parGCAllocBuffer.o parMarkBitMap.o parNewGeneration.o parallelScavengeHeap.o pcDesc.o pcTasks.o perf.o perfData.o perfMemory.o perfMemory_linux.o permGen.o placeholders.o preserveException.o privilegedStack.o psAdaptiveSizePolicy.o psCompactionManager.o psGCAdaptivePolicyCounters.o psGenerationCounters.o psMarkSweep.o psMarkSweepDecorator.o psMemoryPool.o psOldGen.o psParallelCompact.o psPermGen.o psPromotionLAB.o psPromotionManager.o psScavenge.o psTasks.o psVirtualspace.o psYoungGen.o referencePolicy.o referenceProcessor.o reflection.o reflectionUtils.o register.o register_definitions_zero.o register_zero.o relocInfo.o relocInfo_zero.o relocator.o resolutionErrors.o resourceArea.o restore.o rewriter.o rframe.o runtimeService.o safepoint.o scopeDesc.o serialize.o sharedHeap.o sharedRuntime.o sharedRuntimeTrans.o sharedRuntimeTrig.o sharedRuntime_zero.o sharkBlock.o sharkBuilder.o sharkBytecodeTracer.o sharkCacheDecache.o sharkCompiler.o sharkConstantPool.o sharkEntry.o sharkFunction.o sharkMonitor.o sharkRuntime.o sharkState.o sharkStateScanner.o shark_globals.o signature.o sizes.o space.o spaceCounters.o specialized_oop_closures.o stackMapFrame.o stackMapTable.o stackValue.o stackValueCollection.o statSampler.o stubCodeGenerator.o stubGenerator_zero.o stubRoutines.o stubRoutines_linux.o stubRoutines_zero.o stubs.o sweeper.o symbolKlass.o symbolOop.o symbolTable.o synchronizer.o systemDictionary.o task.o taskqueue.o templateInterpreter.o templateInterpreter_zero.o templateTable.o templateTable_zero.o tenuredGeneration.o thread.o threadCritical_linux.o threadLS_linux_zero.o threadLocalAllocBuffer.o threadLocalStorage.o threadService.o thread_linux_zero.o timer.o typeArrayKlass.o typeArrayKlassKlass.o typeArrayOop.o unhandledOops.o universe.o unsafe.o utf8.o verificationType.o verifier.o vframe.o vframeArray.o vframe_hp.o virtualspace.o vmCMSOperations.o vmError.o vmError_linux.o vmGCOperations.o vmPSOperations.o vmStructs.o vmSymbols.o vmThread.o vm_operations.o vm_version.o vm_version_linux_zero.o vm_version_zero.o vmreg.o vmreg_zero.o vtableStubs.o vtableStubs_zero.o vtune_linux.o workgroup.o xmlstream.o yieldingWorkgroup.o sharkType.o -lstdc++ -lm -ldl -lpthread -L/usr/local/lib -lffi /opt/build-icedtea/llvm/Release/lib/LLVMPowerPC.o -lLLVMSelectionDAG /opt/build-icedtea/llvm/Release/lib/LLVMExecutionEngine.o /opt/build-icedtea/llvm/Release/lib/LLVMJIT.o -lLLVMCodeGen -lLLVMScalarOpts -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMCore -lLLVMSupport -lLLVMSystem; \ \ rm -f libjvm.so.1; ln -s libjvm.so libjvm.so.1; \ if [ -x /usr/sbin/selinuxenabled ] ; then \ /usr/sbin/selinuxenabled; \ if [ $? = 0 ] ; then \ /usr/bin/chcon -t textrel_shlib_t libjvm.so; \ if [ $? != 0 ]; then \ echo "ERROR: Cannot chcon libjvm.so"; exit 1; \ fi \ fi \ fi \ } Linking vm... { \ echo Linking launcher...; \ \ gcc -m32 -Xlinker -O1 -m32 -export-dynamic -L `pwd` -o gamma launcher.o -ljvm -lm -ldl -lpthread; \ \ } Linking launcher... /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::CmpInst::CmpInst(llvm::Instruction::OtherOps, unsigned short, llvm::Value*, llvm::Value*, std::basic_string, std::allocator > const&, llvm::Instruction*)' /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::BinaryOperator::create(llvm::Instruction::BinaryOps, llvm::Value*, llvm::Value*, std::basic_string, std::allocator > const&, llvm::Instruction*)' /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::CastInst::create(llvm::Instruction::CastOps, llvm::Value*, llvm::Type const*, std::basic_string, std::allocator > const&, llvm::Instruction*)' /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::CastInst::createIntegerCast(llvm::Value*, llvm::Type const*, bool, std::basic_string, std::allocator > const&, llvm::Instruction*)' /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::GetElementPtrInst::init(llvm::Value*, llvm::Value* const*, unsigned int)' /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::GetElementPtrInst::getIndexedType(llvm::Type const*, llvm::Value* const*, unsigned int, bool)' /opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot/ outputdir/linux_zero_shark/product/libjvm.so: undefined reference to `llvm::BinaryOperator::createNeg(llvm::Value*, std::basic_string, std::allocator > const&, llvm::Instruction*)' collect2: ld returned 1 exit status make[6]: *** [gamma] Error 1 make[6]: Leaving directory `/opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot /outputdir/linux_zero_shark/product' make[5]: *** [the_vm] Error 2 make[5]: Leaving directory `/opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot /outputdir/linux_zero_shark/product' make[4]: *** [productshark] Error 2 make[4]: Leaving directory `/opt/build-icedtea/icedtea6/openjdk-ecj/control/build/linux-ppc/hotspot /outputdir' make[3]: *** [generic_buildshark] Error 2 make[3]: Leaving directory `/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/make' make[2]: *** [productshark] Error 2 make[2]: Leaving directory `/opt/build-icedtea/icedtea6/openjdk-ecj/hotspot/make' make[1]: *** [hotspot-build] Error 2 make[1]: Leaving directory `/opt/build-icedtea/icedtea6/openjdk-ecj/control/make' make: *** [stamps/icedtea-ecj.stamp] Error 2 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081030/9563bf0c/attachment.html -------------- next part -------------- A non-text attachment was scrubbed... Name: make.zip Type: application/x-zip-compressed Size: 64464 bytes Desc: make.zip Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20081030/9563bf0c/make.zip From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 00:59:47 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 07:59:47 +0000 Subject: [Bug 240] New: IcedTeaPlugin does not work with proxy Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=240 Summary: IcedTeaPlugin does not work with proxy Product: IcedTea Version: unspecified Platform: PC URL: http://bugs.debian.org/503932 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com forwarded from the Debian BTS ... icedtea6-plugin does not work at all with a proxy. Probably the same error as bug 459558 - gcjwebplugin, bug 459554 - java-gcj-compat-plugin and bug 503930 - icedtea-gcjwebplugin . -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 01:29:44 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 08:29:44 +0000 Subject: [Bug 241] New: jmol applet not working with IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=241 Summary: jmol applet not working with IcedTeaPlugin Product: IcedTea Version: unspecified Platform: PC URL: https://bugs.launchpad.net/bugs/291377 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com this is with r1154, although I don't see the class loading error mentioned in the bug report, but the applet loads, and the loading animation continues to count. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 01:41:30 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 08:41:30 +0000 Subject: [Bug 241] jmol applet not working with IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=241 ------- Comment #1 from mark at klomp.org 2008-10-31 08:41 ------- Do you have a link to this applet? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 01:44:04 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 08:44:04 +0000 Subject: [Bug 241] jmol applet not working with IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=241 ------- Comment #2 from doko at ubuntu.com 2008-10-31 08:44 ------- sorry, forgot to copy from the orginal (linked ;) report: http://jmol.sourceforge.net/demo/atoms/ -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 03:57:03 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 10:57:03 +0000 Subject: [Bug 241] jmol applet not working with IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=241 ------- Comment #3 from mark at klomp.org 2008-10-31 10:57 ------- Confirmed against IcedTea Web Browser Plugin 1.4-r1166 Initializing JVM... Detaching after fork from child process 21469. NOT IMPLEMENTED: virtual nsresult IcedTeaPluginInstance::Start() Jar string: JmolApplet0.jar jars length: 1 JNLPRuntime already initialized urlImage=jar:file:/home/mark/.icedteaplugin/cache/http/jmol.sourceforge.net/jmol/JmolApplet0.jar!/jmol75x29x8.gif error preloading org.jmol.popup.JmolPopup: org.jmol.popup.JmolPopup net.sourceforge.jnlp.runtime.JNLPClassLoader - 700 - loadClassExt net.sourceforge.jnlp.runtime.JNLPClassLoader - 657 - loadClass java.lang.ClassLoader - 336 - loadClassInternal java.lang.Class - -2 - forName0 java.lang.Class - 186 - forName org.jmol.appletwrapper.ClassPreloader - -1 - run Jmol applet jmolApplet0__3249581883451766__ initializing language=en_US AppletRegistry.checkIn(jmolApplet0__3249581883451766__) applet context: -applet appletDocumentBase=http://jmol.sourceforge.net/demo/atoms/ appletCodeBase=http://jmol.sourceforge.net/jmol/ (C) 2008 Jmol Development Jmol Version 11.6 2008-09-20 22:06 java.vendor:Sun Microsystems Inc. java.version:1.6.0_0 os.name:Linux memory:9.2/31.7 useCommandThread: false appletId:jmolApplet0__3249581883451766__ IcedTeaPlugin.cc:4214: Error: ToString popup menu not available Exception in thread "Thread-10" java.lang.NoClassDefFoundError: org/jmol/popup/JmolPopup at org.jmol.applet.Jmol.getPopupMenu(Unknown Source) at org.jmol.applet.Jmol.initApplication(Unknown Source) at org.jmol.applet.Jmol.init(Unknown Source) at org.jmol.appletwrapper.WrappedAppletLoader.run(Unknown Source) Caused by: java.lang.ClassNotFoundException: org.jmol.popup.JmolPopup at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClassExt(JNLPClassLoader.java:700) at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:657) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336) ... 4 more -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 04:07:34 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 11:07:34 +0000 Subject: [Bug 241] jmol applet not working with IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=241 ------- Comment #4 from mark at klomp.org 2008-10-31 11:07 ------- Note that this applet is loaded through http://jmol.sourceforge.net/jmol/Jmol.js which is a big javascript library described at http://jmol.sourceforge.net/jslibrary/ -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From langel at redhat.com Fri Oct 31 10:14:33 2008 From: langel at redhat.com (Lillian Angel) Date: Fri, 31 Oct 2008 17:14:33 +0000 Subject: changeset in /hg/icedtea6: 2008-10-31 Lillian Angel changeset 119acc15bc38 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=119acc15bc38 description: 2008-10-31 Lillian Angel * Makefile.am: Updated for new visualvm 1.0.1. * patches/icedtea-visualvm.patch: Updated. diffstat: 3 files changed, 12 insertions(+), 7 deletions(-) ChangeLog | 5 +++++ Makefile.am | 2 +- patches/icedtea-visualvm.patch | 12 ++++++------ diffs (52 lines): diff -r 5176cf42d236 -r 119acc15bc38 ChangeLog --- a/ChangeLog Wed Oct 29 11:29:20 2008 -0400 +++ b/ChangeLog Fri Oct 31 13:14:28 2008 -0400 @@ -1,3 +1,8 @@ 2008-10-29 Gary Benson + + * Makefile.am: Updated for new visualvm 1.0.1. + * patches/icedtea-visualvm.patch: Updated. + 2008-10-29 Gary Benson PR icedtea/238: diff -r 5176cf42d236 -r 119acc15bc38 Makefile.am --- a/Makefile.am Wed Oct 29 11:29:20 2008 -0400 +++ b/Makefile.am Fri Oct 31 13:14:28 2008 -0400 @@ -315,7 +315,7 @@ if USE_ALT_VISUALVM_SRC_ZIP if USE_ALT_VISUALVM_SRC_ZIP VISUALVM_SRC_ZIP = $(ALT_VISUALVM_SRC_ZIP) else - VISUALVM_SRC_ZIP = visualvm-20080728-src.tar.gz + VISUALVM_SRC_ZIP = visualvm-20081031-src.tar.gz endif stamps/download.stamp: diff -r 5176cf42d236 -r 119acc15bc38 patches/icedtea-visualvm.patch --- a/patches/icedtea-visualvm.patch Wed Oct 29 11:29:20 2008 -0400 +++ b/patches/icedtea-visualvm.patch Fri Oct 31 13:14:28 2008 -0400 @@ -1,5 +1,5 @@ ---- oldplatform.properties 2008-09-29 13:52:36.000000000 -0400 -+++ visualvm/visualvm/jvm/nbproject/platform.properties 2008-09-29 13:53:33.000000000 -0400 +--- pp 2008-10-31 11:24:42.000000000 -0400 ++++ visualvm/visualvm/jvm/nbproject/platform.properties 2008-10-31 11:24:48.000000000 -0400 @@ -16,8 +16,8 @@ org.openide.compat,\ org.openide.util.enumerations @@ -8,12 +8,12 @@ - profiler2 + platform8,\ + profiler3 - nbjdk.active=Java_HotSpot_TM__Client_VM_1.6.0-b88-17-release + nbjdk.active=default nbplatform.active=NetBeans_Platform_Dev_(Build_200711261600) suite.dir=${basedir} ---- oldplatform.properties1 2008-09-29 13:52:46.000000000 -0400 -+++ visualvm/visualvm/nbproject/platform.properties 2008-09-29 13:53:41.000000000 -0400 -@@ -15,8 +15,8 @@ +--- pp2 2008-10-31 11:50:40.000000000 -0400 ++++ visualvm/visualvm/nbproject/platform.properties 2008-10-31 11:50:47.000000000 -0400 +@@ -14,8 +14,8 @@ org.openide.compat,\ org.openide.util.enumerations enabled.clusters=\ From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 10:28:27 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 17:28:27 +0000 Subject: [Bug 242] New: No ALSA based mixers available in icedtea (openjdk 7 branch) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=242 Summary: No ALSA based mixers available in icedtea (openjdk 7 branch) Product: IcedTea Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea AssignedTo: unassigned at icedtea.classpath.org ReportedBy: omajid at redhat.com With icedtea6, compiled without pulseaudio support [omajid at toddler bin]$ java Mixers Mixer Line 0: default [default] Direct Audio Device: default, default, default Mixer Line 1: ICH5 [plughw:0,0] Direct Audio Device: Intel ICH5, Intel ICH, Intel ICH5 Mixer Line 2: ICH5 [plughw:0,1] Direct Audio Device: Intel ICH5, Intel ICH - MIC ADC, Intel ICH5 - MIC ADC Mixer Line 3: ICH5 [plughw:0,2] Direct Audio Device: Intel ICH5, Intel ICH - MIC2 ADC, Intel ICH5 - MIC2 ADC Mixer Line 4: ICH5 [plughw:0,3] Direct Audio Device: Intel ICH5, Intel ICH - ADC2, Intel ICH5 - ADC2 Mixer Line 5: ICH5 [plughw:0,4] Direct Audio Device: Intel ICH5, Intel ICH - IEC958, Intel ICH5 - IEC958 Mixer Line 6: Port ICH5 [hw:0] Intel ICH5, Analog Devices AD1981B [omajid at toddler bin]$ With icedtea (the openjdk 7 branch ) built without pulseaudio support, no mixers are available: [omajid at toddler bin]$ /notnfs/omajid/icedtea7-build/openjdk/build/linux-i586/j2sdk-image/bin/java Mixers [omajid at toddler bin]$ -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 10:29:47 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 17:29:47 +0000 Subject: [Bug 242] No ALSA based mixers available in icedtea (openjdk 7 branch) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=242 ------- Comment #1 from omajid at redhat.com 2008-10-31 17:29 ------- Created an attachment (id=130) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=130&action=view) Test case to reproduce the issue -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Fri Oct 31 12:19:18 2008 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 31 Oct 2008 19:19:18 +0000 Subject: changeset in /hg/icedtea6: - Fix potential DoS issue when dealin... Message-ID: changeset a5e8efb4fcff in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a5e8efb4fcff description: - Fix potential DoS issue when dealing with very long URL/targets. - Decode param values correctly. - Bypass authentication check when origin matches. - Show proper Name/Publisher/Origin values when no certificate is associated. diffstat: 5 files changed, 87 insertions(+), 21 deletions(-) ChangeLog | 12 ++ IcedTeaPlugin.cc | 20 ++-- plugin/icedtea/sun/applet/PluginAppletViewer.java | 4 rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java | 65 +++++++++++--- rt/net/sourceforge/jnlp/security/AccessWarningPane.java | 7 - diffs (211 lines): diff -r 119acc15bc38 -r a5e8efb4fcff ChangeLog --- a/ChangeLog Fri Oct 31 13:14:28 2008 -0400 +++ b/ChangeLog Fri Oct 31 15:19:14 2008 -0400 @@ -1,3 +1,15 @@ 2008-10-31 Lillian Angel + + * IcedTeaPlugin.cc: Fix potential DoS issue when dealing with very long + URL/target addresses. + * plugin/icedtea/sun/applet/PluginAppletViewer.java: Decode param values + correctly. + * rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java: Bypass + authentication check when origin matches. + * rt/net/sourceforge/jnlp/security/AccessWarningPane.java: Show proper + Name/Publisher/Origin values when no certificate is associated. + + 2008-10-31 Lillian Angel * Makefile.am: Updated for new visualvm 1.0.1. diff -r 119acc15bc38 -r a5e8efb4fcff IcedTeaPlugin.cc --- a/IcedTeaPlugin.cc Fri Oct 31 13:14:28 2008 -0400 +++ b/IcedTeaPlugin.cc Fri Oct 31 15:19:14 2008 -0400 @@ -1409,19 +1409,19 @@ public: NS_DECL_ISUPPORTS NS_DECL_NSIRUNNABLE - GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target); + GetURLRunnable (nsIPluginInstancePeer* peer, nsCString url, nsCString target); ~GetURLRunnable (); private: nsIPluginInstancePeer* peer; - const char* url; - const char* target; + nsCString url; + nsCString target; }; NS_IMPL_ISUPPORTS1 (GetURLRunnable, nsIRunnable) -GetURLRunnable::GetURLRunnable (nsIPluginInstancePeer* peer, const char* url, const char* target) +GetURLRunnable::GetURLRunnable (nsIPluginInstancePeer* peer, nsCString url, nsCString target) : peer(peer), url(url), target(target) @@ -1442,7 +1442,7 @@ GetURLRunnable::Run () nsIPluginInstanceOwner* owner = nsnull; ownerGetter->GetOwner (&owner); - return owner->GetURL ((const char*) url, (const char*) target, + return owner->GetURL ((const char*) url.get(), (const char*) target.get(), nsnull, 0, nsnull, 0); } @@ -2869,8 +2869,8 @@ IcedTeaPluginFactory::HandleMessage (nsC ownerGetter->GetOwner (&owner); PLUGIN_DEBUG_2ARG ("Calling GetURL with %s and %s\n", nsCString (url).get (), nsCString (target).get ()); nsCOMPtr event = new GetURLRunnable (instance->peer, - nsCString (url).get (), - nsCString (target).get ()); + nsCString (url), + nsCString (target)); current->Dispatch(event, nsIEventTarget::DISPATCH_NORMAL); } } @@ -4062,7 +4062,11 @@ IcedTeaPluginFactory::Eval () { if (!factory->js_cleared_handles.Get(javascript_identifier, NULL)) { - PLUGIN_DEBUG_2ARG ("Calling Eval: %d, %d\n", javascript_identifier, strSize); + nsCString evStr(""); + for (int i=0; i < strSize; i++) + evStr += nameString[i]; + + PLUGIN_DEBUG_2ARG ("Calling Eval: %d, %s\n", javascript_identifier, evStr.get()); result = liveconnect->Eval(proxyEnv, javascript_identifier, nameString, strSize, diff -r 119acc15bc38 -r a5e8efb4fcff plugin/icedtea/sun/applet/PluginAppletViewer.java --- a/plugin/icedtea/sun/applet/PluginAppletViewer.java Fri Oct 31 13:14:28 2008 -0400 +++ b/plugin/icedtea/sun/applet/PluginAppletViewer.java Fri Oct 31 15:19:14 2008 -0400 @@ -1265,6 +1265,10 @@ import sun.misc.Ref; skipSpace(in); val = buf.toString(); } + + val = val.replace(">", ">"); + val = val.replace("<", "<"); + val = val.replace("&", "&"); PluginDebug.debug("PUT " + att + " = '" + val + "'"); atts.put(att.toLowerCase(java.util.Locale.ENGLISH), val); while (true) { diff -r 119acc15bc38 -r a5e8efb4fcff rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java --- a/rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java Fri Oct 31 13:14:28 2008 -0400 +++ b/rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java Fri Oct 31 15:19:14 2008 -0400 @@ -17,19 +17,23 @@ package net.sourceforge.jnlp.runtime; -import java.awt.*; -import java.awt.event.*; -import java.lang.ref.*; -import javax.swing.*; -import java.security.*; - +import java.awt.Frame; +import java.awt.Window; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.lang.ref.WeakReference; +import java.net.SocketPermission; +import java.security.AccessController; +import java.security.Permission; +import java.security.PrivilegedAction; + +import javax.swing.JWindow; + +import net.sourceforge.jnlp.JNLPFile; import net.sourceforge.jnlp.security.SecurityWarningDialog; import net.sourceforge.jnlp.services.ServiceUtil; -import net.sourceforge.jnlp.util.*; - +import net.sourceforge.jnlp.util.WeakList; import sun.security.util.SecurityConstants; - -import java.net.SocketPermission; /** * Security manager for JNLP environment. This security manager @@ -124,6 +128,7 @@ class JNLPSecurityManager extends Securi } public void windowClosing(WindowEvent e) { + System.err.println("Disposing window"); e.getWindow().dispose(); } }; @@ -282,6 +287,46 @@ class JNLPSecurityManager extends Securi if (perm instanceof SocketPermission) { tmpPerm = new SocketPermission(perm.getName(), SecurityConstants.SOCKET_CONNECT_ACCEPT_ACTION); + + // before proceeding, check if we are trying to connect to same origin + ApplicationInstance app = getApplication(); + JNLPFile file = app.getJNLPFile(); + + String srcHost = file.getSourceLocation().getAuthority(); + String destHost = name; + + // host = abc.xyz.com or abc.xyz.com: + if (destHost.indexOf(':') >= 0) + destHost = destHost.substring(0, destHost.indexOf(':')); + + // host = abc.xyz.com + String[] hostComponents = destHost.split("\\."); + + int length = hostComponents.length; + if (length >= 2) { + + // address is in xxx.xxx.xxx format + destHost = hostComponents[length -2] + "." + hostComponents[length -1]; + + // host = xyz.com i.e. origin + boolean isDestHostName = false; + + // make sure that it is not an ip address + try { + Integer.parseInt(hostComponents[length -1]); + } catch (NumberFormatException e) { + isDestHostName = true; + } + + if (isDestHostName) { + // okay, destination is hostname. Now figure out if it is a subset of origin + if (srcHost.endsWith(destHost)) { + addPermission(tmpPerm); + return; + } + } + } + } else tmpPerm = perm; diff -r 119acc15bc38 -r a5e8efb4fcff rt/net/sourceforge/jnlp/security/AccessWarningPane.java --- a/rt/net/sourceforge/jnlp/security/AccessWarningPane.java Fri Oct 31 13:14:28 2008 -0400 +++ b/rt/net/sourceforge/jnlp/security/AccessWarningPane.java Fri Oct 31 15:19:14 2008 -0400 @@ -84,18 +84,19 @@ public class AccessWarningPane extends S //We don't worry about exceptions when trying to fill in //these strings -- we just want to fill in as many as possible. try { - name = file.getInformation().getTitle(); + name = file.getInformation().getTitle() != null ? file.getInformation().getTitle() : ""; } catch (Exception e) { } try { - publisher = file.getInformation().getVendor(); + publisher = file.getInformation().getVendor() != null ? file.getInformation().getVendor() : ""; } catch (Exception e) { } try { - from = file.getInformation().getHomepage().toString(); + from = !file.getInformation().getHomepage().toString().equals("") ? file.getInformation().getHomepage().toString() : file.getSourceLocation().getAuthority(); } catch (Exception e) { + from = file.getSourceLocation().getAuthority(); } //Top label From bugzilla-daemon at icedtea.classpath.org Fri Oct 31 12:49:49 2008 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 31 Oct 2008 19:49:49 +0000 Subject: [Bug 241] jmol applet not working with IcedTeaPlugin Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=241 dbhole at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | ------- Comment #5 from dbhole at redhat.com 2008-10-31 19:49 ------- Yeah, this is a known issue. I haven't tracked it down yet, but it is on my list. It is also reported on Red Hat bugzilla btw: https://bugzilla.redhat.com/show_bug.cgi?id=453290 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee.