[prev in list] [next in list] [prev in thread] [next in thread]
List: subversion-issues
Subject: [Issue 4412] report_context_t.lock_token_paths don't match
From: philip () tigris ! org
Date: 2014-03-26 11:23:04
Message-ID: 20140326112304.52EFB5400D1 () sc157-tigr ! sjc ! collab ! net
[Download RAW message or body]
http://subversion.tigris.org/issues/show_bug.cgi?id=4412
------- Additional comments from philip@tigris.org Wed Mar 26 04:23:04 -0700 2014 -------
Patch below fixes causes the broken lock to be reported by the client, but it
introduces a new bug: the lock gets reported as broken when it is still present.
Did this code ever work?
Index: ../src/subversion/libsvn_ra_serf/update.c
===================================================================
--- ../src/subversion/libsvn_ra_serf/update.c (revision 1581775)
+++ ../src/subversion/libsvn_ra_serf/update.c (working copy)
@@ -642,6 +642,7 @@
dir_baton_t *parent = ctx->cur_dir;
apr_pool_t *file_pool;
file_baton_t *file;
+ const char *report_relpath;
file_pool = svn_pool_create(parent->pool);
@@ -663,8 +664,12 @@
file->base_rev = SVN_INVALID_REVNUM;
file->copyfrom_rev = SVN_INVALID_REVNUM;
- file->lock_token = svn_hash_gets(ctx->lock_path_tokens,
- file->relpath);
+ /* We need to query with the same relpath passed to set_path. */
+ report_relpath = svn_relpath_skip_ancestor(ctx->update_target,
+ file->relpath);
+ if (report_relpath)
+ file->lock_token = svn_hash_gets(ctx->lock_path_tokens,
+ report_relpath);
*new_file = file;
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=463&dsMessageId=3075256
To unsubscribe from this discussion, e-mail: [issues-unsubscribe@subversion.tigris.org].
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic