[GREENFOOT-254] Deleting Actors image from the file system and then Shift-adding it throws StackOverflowError
If you delete an image form the file system that is used by an Actor, then do Shift-add it will go into an infinite loop and throw this exception:
{noformat} Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError at java.io.UnixFileSystem.canonicalize(UnixFileSystem.java:137) at java.io.File.getCanonicalPath(File.java:559) at sun.security.provider.PolicyFile.canonPath(PolicyFile.java:1844) at java.io.FilePermission$1.run(FilePermission.java:186) at java.io.FilePermission$1.run(FilePermission.java:183) at java.security.AccessController.doPrivileged(Native Method) at java.io.FilePermission.init(FilePermission.java:183) at java.io.FilePermission.(FilePermission.java:249) at sun.net.www.protocol.file.FileURLConnection.getPermission(FileURLConnection.java:198) at sun.misc.URLClassPath.check(URLClassPath.java:405) at sun.misc.URLClassPath$FileLoader.getResource(URLClassPath.java:981) at sun.misc.URLClassPath$FileLoader.findResource(URLClassPath.java:962) at sun.misc.URLClassPath.findResource(URLClassPath.java:145) at java.net.URLClassLoader$2.run(URLClassLoader.java:362) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findResource(URLClassLoader.java:359) at java.lang.ClassLoader.getResource(ClassLoader.java:1060) at java.lang.ClassLoader.getResource(ClassLoader.java:1055) at greenfoot.platforms.ide.GreenfootUtilDelegateIDE.getResource(GreenfootUtilDelegateIDE.java:82) at greenfoot.util.GreenfootUtil.getURL(GreenfootUtil.java:508) at greenfoot.GreenfootImage.loadFile(GreenfootImage.java:199) at greenfoot.GreenfootImage.(GreenfootImage.java:100) at greenfoot.core.ProjectProperties.getImage(ProjectProperties.java:267) at greenfoot.gui.classbrowser.role.ImageClassRole.getClassThatHasImage(ImageClassRole.java:101) at greenfoot.gui.classbrowser.role.ImageClassRole.getGreenfootImage(ImageClassRole.java:120) at greenfoot.gui.classbrowser.role.ImageClassRole.createObjectDragProxy(ImageClassRole.java:153) at greenfoot.gui.DragGlassPane.quickAddIfActive(DragGlassPane.java:476) at greenfoot.gui.DragGlassPane.dragFinished(DragGlassPane.java:506) at greenfoot.gui.DragGlassPane.endDrag(DragGlassPane.java:273) at greenfoot.gui.DragGlassPane.startDrag(DragGlassPane.java:210) at greenfoot.gui.DragGlassPane.quickAddIfActive(DragGlassPane.java:477) at greenfoot.gui.DragGlassPane.dragFinished(DragGlassPane.java:506) at greenfoot.gui.DragGlassPane.endDrag(DragGlassPane.java:273) at greenfoot.gui.DragGlassPane.startDrag(DragGlassPane.java:210) at greenfoot.gui.DragGlassPane.quickAddIfActive(DragGlassPane.java:477) at greenfoot.gui.DragGlassPane.dragFinished(DragGlassPane.java:506) at greenfoot.gui.DragGlassPane.endDrag(DragGlassPane.java:273) and so on.... {noformat}
Issue metadata
- Issue type: Bug
- Priority: Low
- Fix versions: 1.5.5