For bug #168646, don't bail out immediately when rsync detects protocol incompatibili...
authorZac Medico <zmedico@gentoo.org>
Thu, 1 Mar 2007 12:46:08 +0000 (12:46 -0000)
committerZac Medico <zmedico@gentoo.org>
Thu, 1 Mar 2007 12:46:08 +0000 (12:46 -0000)
svn path=/main/branches/2.1.2/; revision=6105

bin/emerge

index 9ae4beb78b6c36dd5491484fc578cb647099ecaf..3133ae29e001e65e9d7f18cdc060d45d6dd48038 100755 (executable)
@@ -3977,8 +3977,14 @@ def action_sync(settings, trees, mtimedb, myopts, myaction):
                                                env=settings.environ())
                                        if exitcode in [0,1,2,3,4,11,14,20,21]:
                                                break
-                       elif exitcode in [0,1,2,3,4,11,14,20,21]:
+                       elif exitcode in [1,3,4,11,14,20,21]:
                                break
+                       else:
+                               # Code 2 indicates protocol incompatibility, which is expected
+                               # for servers with protocol < 29 that don't support
+                               # --prune-empty-directories.  Retry for a server that supports
+                               # at least rsync protocol version 29 (>=rsync-2.6.7).
+                               pass
 
                        retries=retries+1