diff --git a/uppsrc/usvn/SvnSync.cpp b/uppsrc/usvn/SvnSync.cpp index 416fb4333..5c1e5ef43 100644 --- a/uppsrc/usvn/SvnSync.cpp +++ b/uppsrc/usvn/SvnSync.cpp @@ -368,7 +368,15 @@ String SvnSync::GetMsgs() bool IsSvnDir(const String& p) { - return DirectoryExists(AppendFileName(p, ".svn")) || DirectoryExists(AppendFileName(p, "_svn")); + if(DirectoryExists(AppendFileName(p, ".svn")) || DirectoryExists(AppendFileName(p, "_svn"))) + return true; + String path(p); + while(path.GetCount()>1){ + DirectoryUp(path); + if(DirectoryExists(AppendFileName(path, ".svn"))) + return true; + } + return false; } #ifdef flagMAIN