Fix files_external:notify command when running withing a subdirectory #25129
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.
To reproduce, mount an SMB storage with a path like
Path\To\Subdirectory
and try to run the files_external:notify command. The self-test will fail as the root and change path inserver/apps/files_external/lib/Lib/Notify/SMBNotifyHandler.php
Line 59 in 9ee7d0b
The change object itself already uses UNIX path separators so this makes sure we have a normalized root as well.
I've recognized when testing that using
Path/To/Subdirectory
as subdirectory in the external storage config solves the issue as well, however since entering backslash separated paths there is supported i feel this patch solves causing confusion there for admins who might be used to the Windows path separators.