You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Philip Martin <ph...@codematters.co.uk> on 2006/10/05 22:47:01 UTC

[PATCH] Crash with svn 1.4.0

Philip Martin <ph...@codematters.co.uk> writes:

> Reverting r19196, the non-recursive closing stuff, stops the crash.

r19196 stopped removing pool cleanup handlers which makes it more
likely batons get closed more than once, it also started to check
svn_wc__adm_access_closed to detect double closes.  The combination of
the two reveals that svn_wc__adm_access_closed does not always get
set:

Index: subversion/libsvn_wc/lock.c
===================================================================
--- subversion/libsvn_wc/lock.c	(revision 21766)
+++ subversion/libsvn_wc/lock.c	(working copy)
@@ -1336,10 +1336,11 @@
           SVN_ERR(remove_lock(adm_access->path, adm_access->pool));
           adm_access->lock_exists = FALSE;
         }
-      /* Reset to prevent further use of the write lock. */
-      adm_access->type = svn_wc__adm_access_closed;
     }
 
+  /* Reset to prevent further use of the lock. */
+  adm_access->type = svn_wc__adm_access_closed;
+
   /* Detach from set */
   if (adm_access->set)
     {

-- 
Philip Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org