crashinvaders / gdx-texture-packer-gui

A simple way to pack and manage texture atlases for libGDX game framework.
Apache License 2.0
618 stars 74 forks source link

Crash report #143

Open iSperia opened 1 year ago

iSperia commented 1 year ago

Please paste the crash log in here (already in your clipboard) and, if possible, provide any information that may help to reproduce the issue. Version: 4.11.0 OS: Windows 10 10.0 amd64 JRE: 17.0.7 Eclipse Adoptium GPU: NVIDIA TITAN RTX/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation OpenGL version: 4.6.0 NVIDIA 531.14 [ExtensionModuleRepositoryService] Cached data was loaded [ConfigurationController] Incremental fonts are disabled [GlobalShortcutHandler] Parsing shortcut file: hotkeys_default.txt [SystemUtils] Recognized system configuration is Windows (x64) Packing is started Packing.... Writing 2048x2048: F:\swipe\resources\atlases\charValerion.png Packing is done Total pack files size is 3255836 bytes 1 pages Total processing time: 0.78sec

java.lang.RuntimeException: Actor: VisTextButton: ��������� at com.badlogic.gdx.scenes.scene2d.Actor.notify(Actor.java:192) at com.badlogic.gdx.scenes.scene2d.Actor.fire(Actor.java:152) at com.badlogic.gdx.scenes.scene2d.ui.Button.setChecked(Button.java:125) at com.badlogic.gdx.scenes.scene2d.ui.Button$1.clicked(Button.java:93) at com.badlogic.gdx.scenes.scene2d.utils.ClickListener.touchUp(ClickListener.java:88) at com.badlogic.gdx.scenes.scene2d.InputListener.handle(InputListener.java:71) at com.badlogic.gdx.scenes.scene2d.Stage.touchUp(Stage.java:355) at com.crashinvaders.common.PrioritizedInputMultiplexer$Wrapper.touchUp(PrioritizedInputMultiplexer.java:136) at com.crashinvaders.common.PrioritizedInputMultiplexer.touchUp(PrioritizedInputMultiplexer.java:83) at com.badlogic.gdx.InputEventQueue.drain(InputEventQueue.java:70) at com.badlogic.gdx.backends.lwjgl3.DefaultLwjgl3Input.update(DefaultLwjgl3Input.java:189) at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:378) at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:192) at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.(Lwjgl3Application.java:166) at com.crashinvaders.texturepackergui.desktop.ApplicationStarter.start(ApplicationStarter.java:62) at com.crashinvaders.texturepackergui.desktop.ApplicationStarter.main(ApplicationStarter.java:35) Caused by: java.lang.StringIndexOutOfBoundsException: begin 27, end 26, length 26 at java.base/java.lang.String.checkBoundsBeginEnd(String.java:4602) at java.base/java.lang.String.substring(String.java:2705) at java.base/java.lang.String.substring(String.java:2678) at com.crashinvaders.texturepackergui.utils.PathUtils.relativize(PathUtils.java:96) at com.crashinvaders.texturepackergui.controllers.projectserializer.ProjectSerializer.serializePack(ProjectSerializer.java:127) at com.crashinvaders.texturepackergui.controllers.projectserializer.ProjectSerializer.serializeProject(ProjectSerializer.java:94) at com.crashinvaders.texturepackergui.controllers.projectserializer.ProjectSerializer.saveProject(ProjectSerializer.java:52) at com.crashinvaders.texturepackergui.controllers.GlobalActions$4.selected(GlobalActions.java:235) at com.crashinvaders.texturepackergui.controllers.DefaultFileDialogService$FileChooserListenerWrapper.selected(DefaultFileDialogService.java:124) at com.kotcrab.vis.ui.widget.file.FileChooser.notifyListenerAndCloseDialog(FileChooser.java:727) at com.kotcrab.vis.ui.widget.file.FileChooser.selectionFinished(FileChooser.java:689) at com.kotcrab.vis.ui.widget.file.FileChooser.access$2200(FileChooser.java:76) at com.kotcrab.vis.ui.widget.file.FileChooser$18.changed(FileChooser.java:618) at com.badlogic.gdx.scenes.scene2d.utils.ChangeListener.handle(ChangeListener.java:28) at com.badlogic.gdx.scenes.scene2d.Actor.notify(Actor.java:188) ... 15 more

metaphore commented 1 year ago

Hi and thanks for the report!

From what I can see the crash happens during project saving on the file chooser dialog, correct? The log looks very similar to #126, but there could be another bug related to the path relativization.

  1. Could you please provide a minimalistic project setup that reproduces the issue or describes it in steps? In this case, it's important to figure out where the pack images come from and where you try to save the project. Because all the image paths get saved relative to the project file after saving.
  2. I noticed that you use non-native file picker dialogs. Which are no longer used in the app by default (you need to start the app with specific parameters to use them). Did you manually activate them or did they just work for you out of the box?
iSperia commented 1 year ago

I notices that it crashes every time I choose the folder by clicking button and selecting folder via directory browser (system). When I type path manually it works perfectly. My picker dialogs are system default from box, from windows 10