You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by gs...@apache.org on 2013/07/04 01:09:47 UTC

svn commit: r1499596 - in /subversion/branches/1.8.x-busted-proxy: ./ subversion/libsvn_ra_serf/options.c subversion/libsvn_ra_serf/serf.c

Author: gstein
Date: Wed Jul  3 23:09:47 2013
New Revision: 1499596

URL: http://svn.apache.org/r1499596
Log:
On the 1.8.x-busted-proxy branch:

Merge: r1499423, r1499595

Modified:
    subversion/branches/1.8.x-busted-proxy/   (props changed)
    subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/options.c
    subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c

Propchange: subversion/branches/1.8.x-busted-proxy/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1499423,1499595

Modified: subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/options.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/options.c?rev=1499596&r1=1499595&r2=1499596&view=diff
==============================================================================
--- subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/options.c (original)
+++ subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/options.c Wed Jul  3 23:09:47 2013
@@ -545,7 +545,6 @@ svn_ra_serf__probe_proxy(svn_ra_serf__se
                          apr_pool_t *scratch_pool)
 {
   svn_ra_serf__handler_t *handler;
-  svn_error_t *err;
 
   handler = apr_pcalloc(scratch_pool, sizeof(*handler));
   handler->handler_pool = scratch_pool;
@@ -562,27 +561,19 @@ svn_ra_serf__probe_proxy(svn_ra_serf__se
 
   /* No special headers.  */
 
-  err = svn_ra_serf__context_run_one(handler, scratch_pool);
-  if (err)
+  SVN_ERR(svn_ra_serf__context_run_one(handler, scratch_pool));
+  /* Some versions of nginx in reverse proxy mode will return 411. They want
+     a Content-Length header, rather than chunked requests. We can keep other
+     HTTP/1.1 features, but will disable the chunking.  */
+  if (handler->sline.code == 411)
     {
-      /* Some versions of nginx in reverse proxy mode will return 411. They want
-         a Content-Length header, rather than chunked requests. We can keep other
-         HTTP/1.1 features, but will disable the chunking.  */
-      if (handler->sline.code == 411)
-        {
-          serf_sess->using_chunked_requests = FALSE;
-
-          svn_error_clear(err);
-          return SVN_NO_ERROR;
-        }
+      serf_sess->using_chunked_requests = FALSE;
 
-      return svn_error_trace(
-        svn_error_compose_create(
-          svn_ra_serf__error_on_status(handler->sline,
-                                       serf_sess->session_url.path,
-                                       handler->location),
-          err));
+      return SVN_NO_ERROR;
     }
+  SVN_ERR(svn_ra_serf__error_on_status(handler->sline,
+                                       handler->path,
+                                       handler->location));
 
   return SVN_NO_ERROR;
 }

Modified: subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c?rev=1499596&r1=1499595&r2=1499596&view=diff
==============================================================================
--- subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c (original)
+++ subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c Wed Jul  3 23:09:47 2013
@@ -509,10 +509,12 @@ svn_ra_serf__open(svn_ra_session_t *sess
                             _("Connection to '%s' failed"), session_URL);
   SVN_ERR(err);
 
-  /* We have set up a useful connection. If we've been told there is possibly a
-     busted proxy in our path to the server AND we switched to HTTP/1.1 (chunked
-     requests), then probe for problems in any proxy.  */
-  if (serf_sess->busted_proxy && !serf_sess->http10)
+  /* We have set up a useful connection (that doesn't indication a redirect).
+     If we've been told there is possibly a busted proxy in our path to the
+     server AND we switched to HTTP/1.1 (chunked requests), then probe for
+     problems in any proxy.  */
+  if ((corrected_url == NULL || *corrected_url == NULL)
+      && serf_sess->busted_proxy && !serf_sess->http10)
     SVN_ERR(svn_ra_serf__probe_proxy(serf_sess, pool));
 
   return SVN_NO_ERROR;