Seems like path to files included in project is stored only in absolute way if it’s not near a patch. It will always cause an error if you have a repository with relative location of the *.csproject file and it’s not next to the patch.
Maybe it would be better to use relative path by default? And if it doesn’t match any of the location criteria, it should be stored as absolute? Also, it might be a good security feature since the full path is stored in the patch.