When there is a parent directory that a user has write access to (eg. through group permission) and that user has write access to files in that directory, when the parent directory is deleted in WinSCP, WinSCP displays the 'Permission Denied' for the deletion of the parent directory but still recurses the directory and deletes any files the user has the ability to delete below the directory.
To reproduce, create the following structure on a Linux host:
mkdir toplevel chmod 2770 toplevel chown root:mygroup toplevel touch toplevel/myfile chmod 664 toplevel/myfile chown root:mygroup toplevel/myfile
When you WinSCP as a user that is a member of 'mygroup' that isn't root, select the 'toplevel' directory and delete. The result is a 'Permission Denied' error for the 'toplevel' directory, but the 'myfile' file is still deleted. Essentially, it recurses below 'toplevel' because it has read access, where I would have expected it to stop recursing if it can't delete the 'toplevel' directory. Is this expected behaviour?