mirror of
https://github.com/cc65/cc65.git
synced 2024-12-27 15:29:46 +00:00
cl65: fix regression in --print-target-path
since the "empty prefix means run from current dir" hack was removed, cl65 --print-target-path no longer prints the path relative to the binary, but the hardcoded library path which points to prefix, because the code adds the hardcoded path first to the pathsearch, but then actually only returns the first entry rather than looking whether the path exists. closes #1754
This commit is contained in:
parent
8ec1f76b9c
commit
9cb8bf9500
@ -1212,6 +1212,7 @@ static void OptPrintTargetPath (const char* Opt attribute ((unused)),
|
||||
/* Print the target file path */
|
||||
{
|
||||
char* TargetPath;
|
||||
char* tmp;
|
||||
|
||||
SearchPaths* TargetPaths = NewSearchPath ();
|
||||
AddSubSearchPathFromEnv (TargetPaths, "CC65_HOME", "target");
|
||||
@ -1220,7 +1221,15 @@ static void OptPrintTargetPath (const char* Opt attribute ((unused)),
|
||||
#endif
|
||||
AddSubSearchPathFromBin (TargetPaths, "target");
|
||||
|
||||
TargetPath = GetSearchPath (TargetPaths, 0);
|
||||
TargetPath = SearchFile (TargetPaths, ".");
|
||||
if (!TargetPath) {
|
||||
fprintf (stderr, "%s: error - could not determine target path\n", ProgName);
|
||||
exit (EXIT_FAILURE);
|
||||
}
|
||||
tmp = strrchr(TargetPath, '.');
|
||||
if (tmp) {
|
||||
*(--tmp) = 0;
|
||||
}
|
||||
while (*TargetPath) {
|
||||
if (*TargetPath == ' ') {
|
||||
/* Escape spaces */
|
||||
|
Loading…
Reference in New Issue
Block a user