Fix root folder logic in the filesystem #100161
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR should:
Fix #100159
Fix #99932
The previous logic appears to check that the root folder is not selected using the following bit of logic:
But the function that populates p_path, which is _tree_get_selected(...), inserts the actively selected item at p_path[0]. This means that the root folder may still be selected, but may not be the first element in p_path:
The root folder will only be at p_path[0] if it is the actively selected item, but otherwise it will exist at p_path[1]. To compensate for this, I have added an additional check that verifies that the root folder is not at p_path[0] and also not at p_path[1] before determining if the root folder is selected: