Gaming window

The worst monsters in the Hearthlands warp the fabric of space and time..

Gaming window

Postby Redmun » Mon May 24, 2010 6:06 pm

I'm not sure if this is a bug, or a problem with my system, but my gaming window doesn't open anymore, does anyone know how to sort this out? xx
Redmun
 
Posts: 3
Joined: Mon May 24, 2010 5:55 pm

Re: Gaming window

Postby sabinati » Mon May 24, 2010 6:18 pm

check your running processes and end any javaw that you see and try again
User avatar
sabinati
 
Posts: 15513
Joined: Mon Jul 13, 2009 4:25 am
Location: View active topics

Re: Gaming window

Postby loftar » Tue May 25, 2010 2:42 am

I finally had what I think is this bug happen to myself, so now I've finally got some info on it.

It appears that one of the resource loader threads and the main thread deadlock on each other somewhere deep inside the JNLP client code. I haven't analyzed it in detail yet, but let me post the stack traces of the locked threads both for the sake of noting them to myself and giving the information to someone else who might want to try solving it.

Resource loader:
Code: Select all
Name: Haven resource loader
State: BLOCKED on com.sun.jnlp.JNLPClassLoader@11756a4 owned by: Haven main thread
Total blocked: 2  Total waited: 0

Stack trace:
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:247)
java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
com.sun.deploy.cache.CacheEntry$12.run(CacheEntry.java:1978)
java.security.AccessController.doPrivileged(Native Method)
com.sun.deploy.cache.CacheEntry.readSigners(CacheEntry.java:1943)
com.sun.deploy.cache.CacheEntry.getCodeSourceCache(CacheEntry.java:1104)
com.sun.deploy.cache.CacheEntry.getCodeSources(CacheEntry.java:1179)
com.sun.deploy.cache.CachedJarFile.getCodeSources(CachedJarFile.java:634)
com.sun.deploy.cache.DeployCacheJarAccessImpl.getCodeSources(DeployCacheJarAccessImpl.java:56)
com.sun.deploy.security.CPCallbackHandler$ParentCallback.openClassPathElement(CPCallbackHandler.java:139)
   - locked com.sun.deploy.security.CPCallbackHandler$ParentCallback@2ee7e5
com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(DeployURLClassPath.java:744)
com.sun.deploy.security.DeployURLClassPath$JarLoader.access$700(DeployURLClassPath.java:625)
com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(DeployURLClassPath.java:692)
java.security.AccessController.doPrivileged(Native Method)
com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(DeployURLClassPath.java:684)
com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(DeployURLClassPath.java:646)
com.sun.deploy.security.DeployURLClassPath$3.run(DeployURLClassPath.java:400)
java.security.AccessController.doPrivileged(Native Method)
com.sun.deploy.security.DeployURLClassPath.getLoader(DeployURLClassPath.java:389)
com.sun.deploy.security.DeployURLClassPath.getLoader(DeployURLClassPath.java:366)
   - locked com.sun.deploy.security.DeployURLClassPath@510dc2
com.sun.deploy.security.DeployURLClassPath.access$100(DeployURLClassPath.java:69)
com.sun.deploy.security.DeployURLClassPath$1.next(DeployURLClassPath.java:257)
com.sun.deploy.security.DeployURLClassPath$1.hasMoreElements(DeployURLClassPath.java:269)
java.net.URLClassLoader$3$1.run(URLClassLoader.java:416)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader$3.next(URLClassLoader.java:413)
java.net.URLClassLoader$3.hasMoreElements(URLClassLoader.java:438)
sun.misc.CompoundEnumeration.next(CompoundEnumeration.java:27)
sun.misc.CompoundEnumeration.hasMoreElements(CompoundEnumeration.java:36)
sun.misc.CompoundEnumeration.next(CompoundEnumeration.java:27)
sun.misc.CompoundEnumeration.hasMoreElements(CompoundEnumeration.java:36)
sun.misc.Service$LazyIterator.hasNext(Service.java:255)
javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(IIORegistry.java:188)
javax.imageio.spi.IIORegistry.<init>(IIORegistry.java:121)
javax.imageio.spi.IIORegistry.getDefaultInstance(IIORegistry.java:142)
javax.imageio.ImageIO.<clinit>(ImageIO.java:48)
haven.Resource$Image.<init>(Resource.java:474)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
java.lang.reflect.Constructor.newInstance(Constructor.java:513)
haven.Resource.load(Resource.java:1014)
haven.Resource.access$300(Resource.java:39)
haven.Resource$Loader.handle(Resource.java:396)
haven.Resource$Loader.run(Resource.java:375)
   - locked haven.Resource@328c40
java.lang.Thread.run(Thread.java:619)


Main thread:
Code: Select all
Name: Haven main thread
State: BLOCKED on com.sun.deploy.security.DeployURLClassPath@510dc2 owned by: Haven resource loader
Total blocked: 3  Total waited: 1

Stack trace:
com.sun.deploy.security.DeployURLClassPath.getLoader(DeployURLClassPath.java:343)
com.sun.deploy.security.DeployURLClassPath.getResource(DeployURLClassPath.java:230)
java.net.URLClassLoader$1.run(URLClassLoader.java:194)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:190)
com.sun.jnlp.JNLPClassLoader.findClass(JNLPClassLoader.java:332)
java.lang.ClassLoader.loadClass(ClassLoader.java:307)
   - locked com.sun.jnlp.JNLPClassLoader@13936e1
java.lang.ClassLoader.loadClass(ClassLoader.java:296)
   - locked com.sun.jnlp.JNLPClassLoader@11756a4
java.lang.ClassLoader.loadClass(ClassLoader.java:248)
java.lang.Class.getDeclaredMethods0(Native Method)
java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
java.lang.Class.getDeclaredMethod(Class.java:1935)
java.awt.Component.isCoalesceEventsOverriden(Component.java:5948)
java.awt.Component.access$500(Component.java:169)
java.awt.Component$3.run(Component.java:5902)
java.awt.Component$3.run(Component.java:5900)
java.security.AccessController.doPrivileged(Native Method)
java.awt.Component.checkCoalescing(Component.java:5899)
   - locked java.util.WeakHashMap@95ef17
java.awt.Component.<init>(Component.java:5868)
java.awt.Canvas.<init>(Canvas.java:40)
javax.media.opengl.GLCanvas.<init>(GLCanvas.java:127)
javax.media.opengl.GLCanvas.<init>(GLCanvas.java:90)
haven.HavenPanel.<init>(HavenPanel.java:63)
haven.MainFrame.<init>(MainFrame.java:120)
haven.MainFrame.main2(MainFrame.java:209)
haven.MainFrame.access$100(MainFrame.java:34)
haven.MainFrame$5.run(MainFrame.java:262)
java.lang.Thread.run(Thread.java:619)
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 9045
Joined: Fri Apr 03, 2009 7:05 am

Re: Gaming window

Postby loftar » Tue May 25, 2010 3:21 am

Another JNLP client bug report at the Java forums. It is not directly related, but it does seem that Sun changed something in the JNLP client in JRE 6u19 that's causing problems. I had also just updated from 6u16 to 6u20 when I started getting this problem.

It seems Sun is to blame, then; but is there anything I can reasonably do to work around the problem? It might be possible to call the ImageIO SPI lookup procedure in advance to avoid the simultaneous classloader usage that seems to be causing the problem, but how?
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 9045
Joined: Fri Apr 03, 2009 7:05 am

Re: Gaming window

Postby Pacho » Tue May 25, 2010 3:23 am

Oh, so that's what it is? I always wondered why sometimes there was a jerkoff java process left over from playing H&H. It doesn't just happen with jnlps though, my client sometimes does it for god knows what reason.
Pacho
 
Posts: 712
Joined: Wed Jun 10, 2009 2:21 am

Re: Gaming window

Postby loftar » Tue May 25, 2010 4:14 am

Well, I've got a potential workaround for it now, at least. Please try the latest client and do tell if it didn't help.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 9045
Joined: Fri Apr 03, 2009 7:05 am


Return to Bugs

Who is online

Users browsing this forum: Claude [Bot] and 1 guest