Web lists-archives.com

Re: subversion problem

Hi David,

I had some doubt that the modification suggested in my mail:
Cygwin subversion and UNC path https://cygwin.com/ml/cygwin/2018-04/msg00271.html
would cause the failure.
However, this would not be the case.

I'm afraid to say that it seems to be an oversight in 05-retry-loop.patch.

The first call of the loop target function must be made BEFORE the call of WIN32_RETRY_LOOP() while Cygwin branch of svn_io_file_rename2() calls WIN32_RETRY_LOOP() directly. 

I've made just simple tests only but applying the following patch additionally and replacing cygsvn_subr-1-0.dll seems to fix the issues.

--- origsrc/subversion-1.10.0/subversion/libsvn_subr/io.c	2018-04-24 15:58:49.920742300 +0900
+++ src/subversion-1.10.0/subversion/libsvn_subr/io.c	2018-04-24 21:16:56.215447100 +0900
@@ -4294,6 +4294,7 @@ svn_io_file_rename2(const char *from_pat
       status = apr_file_rename(from_path_apr, to_path_apr, pool);
 #elif defined (__CYGWIN__)
+  status = apr_file_rename(from_path_apr, to_path_apr, pool);
   WIN32_RETRY_LOOP(status, apr_file_rename(from_path_apr, to_path_apr, pool));
   status = apr_file_rename(from_path_apr, to_path_apr, pool);


Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple