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 2011/07/21 17:06:09 UTC

svn commit: r1149210 - /subversion/trunk/subversion/libsvn_client/externals.c

Author: rhuijben
Date: Thu Jul 21 15:06:08 2011
New Revision: 1149210

URL: http://svn.apache.org/viewvc?rev=1149210&view=rev
Log:
* subversion/libsvn_client/externals.c
  (handle_externals_change): Check for cancellation in this long loop to
    allow breaking the loop from cancel functions. This allows cancelation
    for cancel functions that don't return SVN_ERR_CANCELLED and for
    cancellations that are wrapped by the update handling.

Modified:
    subversion/trunk/subversion/libsvn_client/externals.c

Modified: subversion/trunk/subversion/libsvn_client/externals.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/externals.c?rev=1149210&r1=1149209&r2=1149210&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/externals.c (original)
+++ subversion/trunk/subversion/libsvn_client/externals.c Thu Jul 21 15:06:08 2011
@@ -1044,6 +1044,9 @@ handle_externals_change(const struct ext
 
       svn_pool_clear(iterpool);
 
+      if (eb->ctx->cancel_func)
+        SVN_ERR(eb->ctx->cancel_func(eb->ctx->cancel_baton));
+
       target_abspath = svn_dirent_join(local_abspath, new_item->target_dir,
                                        iterpool);