antlr / antlr/stringtemplate3

PathGroupLoader portability on Windows and multiple drives

Open
#2 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
15
Forks
11
PR merge metrics
No merged PRs in 30d

Description

Hello,

Class org.antlr.stringtemplate.PathGroupLoader.java has an issue concerning Windows-specific applications, when the program using StringTemplates is located on a hard drive (e.g. "C:\") and you run the program from another drive (e.g. "D:\"), having it in your path.

Error message in that case:
"String template error: no such group file " (+ file name)

At line 36, tokenization is done thanks to the ":" separator which is wrong with Windows (think about "C:\"...).

Suggestion: use File.pathSeparator instead and the problem is solved. An other solution for users is to override the constructor and do this instead.

Best regards !

Contributor guide

No contributing guide indexed for this repository

Research direction

Open org.antlr.stringtemplate.PathGroupLoader.java and inspect line 36, where paths are tokenized using a colon. Reproduce the lookup with the application on one Windows drive and launched from another, then verify that drive-letter paths resolve correctly using the platform path separator.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
operating-systems
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.