In verifyAndGetDestinationPathForCopyOrMove, we check to make sure you're not moving a directory into its child. However, we just do a pure path check. If the two paths aren't in the same filesystem, they're not directly comparable, and we should skip the check. This prevents e.g. moving temporary file /foo/bar into the persistent root, as the root is the parent of every path. I'm CCing folks familiar with the filesystem code, in case they have time to grab this. If not, I'll get to it when I can.
*** This bug has been marked as a duplicate of bug 84135 ***