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

svn commit: r1499686 - /subversion/trunk/subversion/libsvn_ra_serf/update.c

Author: rhuijben
Date: Thu Jul  4 08:52:55 2013
New Revision: 1499686

URL: http://svn.apache.org/r1499686
Log:
Resolve a theoretical error leak in ra_serf's update logic. (Found by review,
not by reproducing)

* subversion/libsvn_ra_serf/update.c
  (finish_report): Don't leak pending errors when the time is up.

Modified:
    subversion/trunk/subversion/libsvn_ra_serf/update.c

Modified: subversion/trunk/subversion/libsvn_ra_serf/update.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/update.c?rev=1499686&r1=1499685&r2=1499686&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/update.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/update.c Thu Jul  4 08:52:55 2013
@@ -2939,8 +2939,10 @@ finish_report(void *report_baton,
          the connection timed out.  */
       if (APR_STATUS_IS_TIMEUP(status))
         {
-          svn_error_clear(err);
-          err = SVN_NO_ERROR;
+          /* If there is a pending error, handle it.
+             Unlikely case, as this should have made serf_context run return
+             an error but we shouldn't ignore true errors */
+          SVN_ERR(err);
           status = 0;
 
           if (sess->timeout)