gdx-texture-packer-gui icon indicating copy to clipboard operation
gdx-texture-packer-gui copied to clipboard

Crash when choosing destination folder for sprites

Open v79 opened this issue 3 years ago • 4 comments
trafficstars

After adding two sprites to a new, blank spritesheet, Texture Packer crashes while I am trying to choose a destination folder. Log is:

Application Log
Version: 4.10.0
OS: Windows 10 10.0 amd64
JRE: 11.0.9 AdoptOpenJDK
GPU: Radeon RX 580 Series
OpenGL vendor: ATI Technologies Inc.
OpenGL version: 4.6.14761 Compatibility Profile Context 21.11.3 30.0.13037.1003
[ExtensionModuleRepositoryService] Cached data was loaded
[ConfigurationController] Incremental fonts are disabled
[VisUI] Warning, using invalid libGDX version for VisUI 1.4.8.
You are using libGDX 1.9.11 but you need 1.9.12. This may cause unexpected problems and runtime exceptions.
[GlobalShortcutHandler] Parsing shortcut file: hotkeys_default.txt
[ERROR] Exception occured on event listener.
com.badlogic.gdx.utils.GdxRuntimeException: Unable to invoke method: onEvent of type: com.crashinvaders.texturepackergui.controllers.InitialUpdateCheckService@5710768a with parameters: [com.crashinvaders.texturepackergui.events.VersionUpdateCheckEvent@199e4c2b]
	at com.github.czyzby.autumn.context.impl.method.MethodInvocation.invoke(MethodInvocation.java:50)
	at com.github.czyzby.autumn.processor.event.impl.ReflectionEventListener.processEvent(ReflectionEventListener.java:63)
	at com.github.czyzby.autumn.processor.event.EventDispatcher.invokeEventListeners(EventDispatcher.java:134)
	at com.github.czyzby.autumn.processor.event.EventDispatcher.postEvent(EventDispatcher.java:121)
	at com.crashinvaders.texturepackergui.controllers.versioncheck.VersionCheckService$1.handleResponseSync(VersionCheckService.java:71)
	at com.crashinvaders.SyncHttpResponseListener.lambda$handleHttpResponse$1(SyncHttpResponseListener.java:21)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:157)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:117)
	at com.crashinvaders.texturepackergui.desktop.ApplicationStarter.start(ApplicationStarter.java:56)
	at com.crashinvaders.texturepackergui.desktop.ApplicationStarter.main(ApplicationStarter.java:35)
Caused by: com.badlogic.gdx.utils.reflect.ReflectionException: Exception occurred in method: onEvent
	at com.badlogic.gdx.utils.reflect.Method.invoke(Method.java:114)
	at com.github.czyzby.kiwi.util.gdx.reflection.Reflection.invokeMethod(Reflection.java:130)
	at com.github.czyzby.autumn.context.impl.method.MethodInvocation.invoke(MethodInvocation.java:47)
	... 9 more
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at com.badlogic.gdx.utils.reflect.Method.invoke(Method.java:108)
	... 11 more
Caused by: com.github.czyzby.lml.util.LmlParsingException: Error occurred during parsing near line 15 of the original file: "toastNewVersionAvailable.lml".
REASON: I18N bundle not found for bundle line: @toastNewVersionAvailable
	Due implementation of the parser, the real problematic line might SLIGHTLY vary from the given line number(s), but exception message should be clear enough to find the actual error.
	Currently parsed template part:
12 |VALID|         <horizontalgroup spacing="4">
13 |VALID|             @toastNewVersionAvailable
14 |VALID|             {newVersionCode}
15 |ERROR|         </horizontalgroup>
16 |     | 
17 |     |         <:row padtop="4"/>
18 |     | 

	If this is not enough to determine the error, call AbstractLmlParser#setLinesAmountPrintedOnException(int) with a suitable number. If you keep a lot of nested macros and want to see the whole invocation tree, try debugging through parsing and use getTemplateReader().toString() before exception occurs to check all current parsed template layers.
	at com.github.czyzby.lml.parser.impl.AbstractLmlParser.throwError(AbstractLmlParser.java:875)
	at com.github.czyzby.lml.parser.impl.AbstractLmlParser.throwError(AbstractLmlParser.java:870)
	at com.github.czyzby.lml.parser.impl.AbstractLmlParser.parseBundleLine(AbstractLmlParser.java:584)
	at com.github.czyzby.lml.parser.impl.AbstractLmlParser.parseString(AbstractLmlParser.java:554)
	at com.github.czyzby.lml.parser.impl.tag.AbstractActorLmlTag.toLabel(AbstractActorLmlTag.java:230)
	at com.github.czyzby.lml.parser.impl.tag.AbstractGroupLmlTag.handlePlainTextLine(AbstractGroupLmlTag.java:31)
	at com.github.czyzby.lml.parser.impl.tag.AbstractActorLmlTag.handleDataBetweenTags(AbstractActorLmlTag.java:207)
	at com.github.czyzby.lml.parser.impl.DefaultLmlParser.parse(DefaultLmlParser.java:136)
	at com.github.czyzby.lml.parser.impl.DefaultLmlParser.parseTemplate(DefaultLmlParser.java:100)
	at com.github.czyzby.lml.parser.impl.AbstractLmlParser.parseTemplate(AbstractLmlParser.java:197)
	at com.crashinvaders.texturepackergui.controllers.InitialUpdateCheckService.showUpdateNotification(InitialUpdateCheckService.java:81)
	at com.crashinvaders.texturepackergui.controllers.InitialUpdateCheckService.onEvent(InitialUpdateCheckService.java:53)
	... 16 more
java.lang.IllegalArgumentException: actor cannot be null.
	at com.badlogic.gdx.scenes.scene2d.ui.Table.getCell(Table.java:417)
	at com.kotcrab.vis.ui.widget.MenuItem.getImageCell(MenuItem.java:352)
	at com.kotcrab.vis.ui.widget.file.internal.AbstractSuggestionPopup.createMenuItem(AbstractSuggestionPopup.java:36)
	at com.kotcrab.vis.ui.widget.file.internal.DirsSuggestionPopup$1$1.run(DirsSuggestionPopup.java:88)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:157)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:117)
	at com.crashinvaders.texturepackergui.desktop.ApplicationStarter.start(ApplicationStarter.java:56)
	at com.crashinvaders.texturepackergui.desktop.ApplicationStarter.main(ApplicationStarter.java:35)

v79 avatar Dec 29 '21 09:12 v79

May be the same as #121 - there is nothing unusual about the folder path D:\Development\Games\TheAlchemist\src\commonMain\resources\sprites\icons\seeds

v79 avatar Dec 29 '21 09:12 v79

The really strange bit is that in the log, it seems to only be having issues with the version update toast, which could probably pop up at any time and just happens to overlap with the destination folder selection. Could this be related to 4.10.1 being released but not being the recommended version?

tommyettinger avatar Dec 29 '21 09:12 tommyettinger

I saw the note not to upgrade to 4.10.1, so I didn't.

v79 avatar Dec 29 '21 09:12 v79

That's a really weird one indead. I think Tommy's right and this is just a coincidence and overlap with the dreaded file selector path editing issue that's being fixed in 4.10.1. And while it has a note about being a non-recommended release, it has nothing special to it and still recognized by GitHub as the latest stable version.

We have the hotfix release is coming up in the next couple of days and I guess this issue should be gone along with it. But let's keep it open for some time, see if someone else reports a similar problem.

metaphore avatar Dec 30 '21 20:12 metaphore

I guess this but must be fixed at this point. Feel free to reopen if the problem stands.

metaphore avatar Nov 01 '22 19:11 metaphore