Hi All,
Currently 'svn merge' from a WC which has no copy_source segfaults.
The attached patch fixes it.
With regards
Kamesh Jayachandran
[[[
Fix segfault on svn merge source detection.
* subversion/libsvn_client/log.c
(svn_client__suggest_merge_sources):
Don't assume copy source to exist always.
Patch by: kameshj
]]]
Index: subversion/libsvn_client/log.c
===================================================================
--- subversion/libsvn_client/log.c (revision 25012)
+++ subversion/libsvn_client/log.c (working copy)
@@ -233,7 +233,8 @@
/* ### TODO: Use RA APIs directly to improve efficiency. */
SVN_ERR(svn_client__get_copy_source(path_or_url, revision, ©from_path,
©from_rev, ctx, pool));
- APR_ARRAY_PUSH(*suggestions, const char *) = copyfrom_path;
+ if (copyfrom_path)
+ APR_ARRAY_PUSH(*suggestions, const char *) = copyfrom_path;
SVN_ERR(svn_client_get_mergeinfo(&mergeinfo, path_or_url, revision,
ctx, pool));
@@ -241,7 +242,7 @@
{
const char *path;
apr_hash_this(hi, (void *) &path, NULL, NULL);
- if (strcmp(path, copyfrom_path) != 0)
+ if (copyfrom_path && strcmp(path, copyfrom_path) != 0)
{
APR_ARRAY_PUSH(*suggestions, const char *) = apr_pstrdup(pool, path);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue May 15 06:24:46 2007