Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Avoid relativizing paths in the project outline
Browse files Browse the repository at this point in the history
In the project outline view, paths for the Makefile and build log were
automatically made relative. If the setting was an absolute path, the
result would be ugly:

For a makeDirectory setting '/tmp/amhello-debug', the outline would print

Makefile: [../../../tmp/amhello-debug/Makefile]

This was not only unsightly, but also wrong. See
https://unix.stackexchange.com/questions/13858/do-the-parent-directorys-permissions-matter-when-accessing-a-subdirectory

In short, if one of the parent directories (..) would be inaccessible,
the ../../../tmp/amhello-debug path is wrong because it's inaccessible,
even though /tmp/amhello-debug is accessible.
drok committed Oct 17, 2023
1 parent 5a47164 commit c2238dc
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/tree.ts
Original file line number Diff line number Diff line change
@@ -321,9 +321,9 @@ export class ProjectOutlineProvider implements vscode.TreeDataProvider<BaseNode>
this._currentConfigurationItem.update(configuration || this._unsetString);
this._currentBuildTargetItem.update(buildTarget || this._unsetString);
await this._currentLaunchTargetItem.update(launchTarget || this._unsetString);
this._currentMakefilePathInfoItem.update(makefilePathInfo || this._unsetString, this.pathDisplayed(makefilePathInfo, "Makefile", false, true));
this._currentMakefilePathInfoItem.update(makefilePathInfo || this._unsetString, this.pathDisplayed(makefilePathInfo, "Makefile", false, false));
this._currentMakePathInfoItem.update(makePathInfo || this._unsetString, this.pathDisplayed(makePathInfo, "Make", true, false));
this._currentBuildLogPathInfoItem.update(buildLogInfo || this._unsetString, this.pathDisplayed(buildLogInfo, "Build Log", false, true));
this._currentBuildLogPathInfoItem.update(buildLogInfo || this._unsetString, this.pathDisplayed(buildLogInfo, "Build Log", false, false));

this.updateTree();
}

0 comments on commit c2238dc

Please sign in to comment.