On Mon, Jan 11, 2010 at 08:42:33PM +0100, Daniel Näslund wrote: > Hi! > > [[[ > Fix #3493 - svn patch skips missing dirs.
I'm having trouble getting this to work reliably in case an error is thrown between svn_wc_acquire_write_lock() and svn_wc__release_write_lock(). The working copy stays locked and I have to run svn cleanup to get it usable again. Simple test case: svn patch /tmp/thisdoesnotexist If I revert back to using the adm access, recursively adding directories fails entirely: $ svn patch /tmp/test.diff subversion/svn/patch-cmd.c:79: (apr_err=155004) subversion/libsvn_client/patch.c:1195: (apr_err=155004) subversion/libsvn_client/patch.c:1159: (apr_err=155004) subversion/libsvn_client/patch.c:1069: (apr_err=155004) subversion/libsvn_client/add.c:866: (apr_err=155004) subversion/libsvn_client/add.c:610: (apr_err=155004) subversion/libsvn_wc/lock.c:1799: (apr_err=155004) subversion/libsvn_wc/wc_db.c:5606: (apr_err=155004) svn: Working copy '/tmp/svn-sandbox/trunk/foo' locked subversion/libsvn_subr/sqlite.c:210: (apr_err=200030) subversion/libsvn_subr/sqlite.c:193: (apr_err=200030) svn: constraint failed subversion/libsvn_subr/sqlite.c:495: (apr_err=200030) svn: columns wc_id, local_dir_relpath are not unique svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details) Looks like a current wc-ng limitation? Stefan