Unsigned applets aren't getting destroy() call on Max OS X when page is navigated away.

RESOLVED INVALID

Status

()

RESOLVED INVALID
8 years ago
a year ago

People

(Reporter: ajgregory, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(URL)

(Reporter)

Description

8 years ago
User-Agent:       Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15
Build Identifier: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15

Applets destroy() method isn't called on unsigned applets on MAX OS X when the page is navigated away.  It works on Win32 and also seems to work on SIGNED applets.

I've got a test applet that prints out a message on init,start,stop,destroy but the destroy message is never printed and instead there is an exception in the Java Console at the point I'd expect to see the destroy happen right after stop() is called:


--- Stop applet: com.screencastomatic.detect.DetectApplet[panel5,0,0,1x1,hidden,layout=java.awt.FlowLayout]
Exception in thread "AWT-EventQueue-3" java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup)
	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:374)
	at java.security.AccessController.checkPermission(AccessController.java:546)
	at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
	at sun.applet.AppletSecurity.checkAccess(AppletSecurity.java:235)
	at sun.plugin.security.ActivatorSecurityManager.checkAccess(ActivatorSecurityManager.java:155)
	at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:299)
	at java.lang.Thread.init(Thread.java:336)
	at java.lang.Thread.<init>(Thread.java:564)
	at jep.AppletFrame.destroyAppletDirectly1(Unknown Source)
	at jep.AppletFrame$Destroy1.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:678)
	at java.awt.EventQueue.access$000(EventQueue.java:86)
	at java.awt.EventQueue$1.run(EventQueue.java:639)
	at java.awt.EventQueue$1.run(EventQueue.java:637)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
	at java.awt.EventQueue$2.run(EventQueue.java:653)
	at java.awt.EventQueue$2.run(EventQueue.java:651)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:650)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)




Reproducible: Always

Steps to Reproduce:
1.Make sure Java Preferences is showing the Java Console
2.Go to this page http://www.screencast-o-matic.com/detect.html
3.Navigate away from that page and you'll see error in Java Console and Applet.destroy() isn't called
Actual Results:  
Applet is left undestroyed and still running.

Expected Results:  
Applet destroy() should be called
Component: General → Plug-ins
Product: Firefox → Core
QA Contact: general → plugins
The HTML <applet> element and related java functionality was removed from Gecko in Bug 1279218. Marking related bugs as invalid.
Status: UNCONFIRMED → RESOLVED
Last Resolved: a year ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.