Eliminate erroneous warning when unstowing (#65)
When unstowing a package, cleanup_invalid_links() is invoked to remove
any invalid links owned by Stow. It was invoking link_owned_by_package()
to check whether each existing link is owned by Stow. This in turn
called find_stowed_path() which since 40a0807185
was not allowing for
the possibility that it could be passed a symlink *not* owned by Stow
with an absolute target and consequently emitting an erroneous warning.
So remove this erroneous warning, and refactor find_stowed_path()
to use two new helper functions for detecting stow directories:
link_dest_within_stow_dir() and find_containing_marked_stow_dir().
Also refactor the logic within each to be simpler and more accurate,
and add more test cases to the corresponding parts of the test suite.
Fixes #65.
Closes #103.
https://github.com/aspiers/stow/issues/65
This commit is contained in:
parent
877fc0ce7e
commit
8436768144
4 changed files with 331 additions and 114 deletions
9
NEWS
9
NEWS
|
@ -2,6 +2,15 @@ News file for Stow.
|
|||
|
||||
* Changes in version 2.3.2
|
||||
|
||||
*** Eliminated a spurious warning on unstowing
|
||||
|
||||
2.3.1 introduced a benign but annoying warning when unstowing
|
||||
in certain circumstances. It looked like:
|
||||
|
||||
BUG in find_stowed_path? Absolute/relative mismatch between Stow dir X and path Y
|
||||
|
||||
This was caused by erroneous logic, and has now been fixed.
|
||||
|
||||
*** Improved debug output
|
||||
|
||||
Extra output resulting from use of the -v / --verbose flag
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue