Describe the bug
Emulator can't handle a file which name contains comma.
To Reproduce
Steps to reproduce the behavior:
- Prepare a file with comma in name. I copy
notepad.exe to notepad, 1.exe.
- Import the file into Ghidra and Analyze it.
- Open Emulator and load it.
- Right click on any instruction and select "Emulate Program in New Trace".
Expected behavior
Emulator should emulate it.
Screenshots
Attachments
Path element contains invalid character: ','
java.lang.IllegalArgumentException: Path element contains invalid character: ','
at ghidra.util.NamingUtilities.checkName(NamingUtilities.java:112)
at ghidra.framework.protocol.ghidra.GhidraURL.checkValidProjectPath(GhidraURL.java:448)
at ghidra.framework.protocol.ghidra.GhidraURL.resolve(GhidraURL.java:510)
at ghidra.framework.protocol.ghidra.GhidraURL.makeURL(GhidraURL.java:867)
at ghidra.framework.data.GhidraFileData.getLocalProjectURL(GhidraFileData.java:417)
at ghidra.framework.data.GhidraFile.getLocalProjectURL(GhidraFile.java:139)
at ghidra.app.plugin.core.debug.utils.ProgramURLUtils.getUrlFromProgram(ProgramURLUtils.java:44)
at ghidra.app.plugin.core.debug.service.modules.DebuggerStaticMappingUtils.addMapping(DebuggerStaticMappingUtils.java:117)
at ghidra.app.plugin.core.debug.service.emulation.ProgramEmulationUtils.loadExecutable(ProgramEmulationUtils.java:270)
at ghidra.app.plugin.core.debug.service.emulation.ProgramEmulationUtils.launchEmulationTrace(ProgramEmulationUtils.java:646)
at ghidra.app.plugin.core.debug.service.emulation.DebuggerEmulationServicePlugin.emulateProgramActivated(DebuggerEmulationServicePlugin.java:471)
at docking.action.builder.ActionBuilder$1.actionPerformed(ActionBuilder.java:48)
at docking.PopupMenuHandler$1.run(PopupMenuHandler.java:63)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
---------------------------------------------------
Build Date: 2026-Jun-05 1317 EDT
Ghidra Version: 12.1.2
Java Home: C:\Program Files\Java\jdk-21.0.11
JVM Version: Oracle Corporation 21.0.11
OS: Windows 11 10.0 amd64
Environment (please complete the following information):
- OS: Windows 11 25H2
- Java Version: Oracle JDK 21.0.11
- Ghidra Version: 12.1.2
- Ghidra Origin: official GitHub distro
Additional context
Add any other context about the problem here.
Describe the bug
Emulator can't handle a file which name contains comma.
To Reproduce
Steps to reproduce the behavior:
notepad.exetonotepad, 1.exe.Expected behavior
Emulator should emulate it.
Screenshots
Attachments
Environment (please complete the following information):
Additional context
Add any other context about the problem here.