Cool. How many revisions do we need to add to that backport recommendation
now? :-)
Kamesh Jayachandran wrote:
> Committed at r34766.
>
> With regards
> Kamesh Jayachandran
>
> C. Michael Pilato wrote:
>> Kamesh, I'm not in a position to do testing at the moment. Are you able to
>> shepherd this through?
>
>
>> Kamesh Jayachandran wrote:
>>> +1.
>>>
>>> With regards
>>> Kamesh Jayachandran
>>>
>>> C. Michael Pilato wrote:
>>>> C. Michael Pilato wrote:
>>>>> Julian Foad wrote:
>>>>>> Kamesh Jayachandran wrote:
>>>>>>> Thanks Julian fixed in r34760(revert of r34756) and r34762.
>>>>>> [[[
>>>>>> $ svn diff -c34762
>>>>>> Index: subversion/libsvn_client/merge.c
>>>>>> ===================================================================
>>>>>> --- subversion/libsvn_client/merge.c (revision 34761)
>>>>>> +++ subversion/libsvn_client/merge.c (revision 34762)
>>>>>> @@ -6374,10 +6374,7 @@
>>>>>> SVN_ERR_ASSERT(svn_path_is_child(abs_target_path,
>>>>>> abs_added_path,
>>>>>> iterpool));
>>>>>> - common_ancestor_path =
>>>>>> - svn_path_get_longest_ancestor(abs_added_path,
>>>>>> - abs_target_path,
>>>>>> - iterpool);
>>>>>> + common_ancestor_path = abs_target_path;
>>>>>> /* Need to +1 to avoid a leading '/'. */
>>>>>> rel_added_path =
>>>>>> abs_added_path + strlen(common_ancestor_path) + 1;
>>>>>> ]]]
>>>>>>
>>>>>> That looks better, but isn't the next line simply setting rel_added_path
>>>>>> to the result of the svn_path_is_child() call above?
>>>>> Yup.
>>>>>
>>>> Is this what's needed here?
>>>> Index: subversion/libsvn_client/merge.c
>>>> ===================================================================
>>>> --- subversion/libsvn_client/merge.c (revision 34765)
>>>> +++ subversion/libsvn_client/merge.c (working copy)
>>>> @@ -6340,7 +6340,7 @@
>>>> svn_mergeinfo_t merge_mergeinfo, added_path_mergeinfo;
>>>> apr_array_header_t *rangelist;
>>>> const svn_wc_entry_t *entry;
>>>> - const char *rel_added_path, *common_ancestor_path,
>>>> + const char *rel_added_path,
>>>> *abs_added_path, *abs_target_path,
>>>> *added_path_mergeinfo_path;
>>>> @@ -6369,15 +6369,14 @@
>>>> SVN_ERR(svn_path_get_absolute(&abs_added_path,
>>>> added_path,
>>>> iterpool));
>>>> +
>>>> /* abs_added_path had better be a child of abs_target_path
>>>> or something is *really* wrong. */
>>>> - SVN_ERR_ASSERT(svn_path_is_child(abs_target_path,
>>>> - abs_added_path,
>>>> - iterpool));
>>>> - common_ancestor_path = abs_target_path;
>>>> - /* Need to +1 to avoid a leading '/'. */
>>>> - rel_added_path =
>>>> - abs_added_path + strlen(common_ancestor_path) + 1;
>>>> + rel_added_path = svn_path_is_child(abs_target_path,
>>>> + abs_added_path,
>>>> + iterpool);
>>>> + SVN_ERR_ASSERT(rel_added_path);
>>>> +
>>>> added_path_mergeinfo_path = svn_path_join(mergeinfo_path,
>>>> rel_added_path,
>>>> iterpool);
--
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=985824
Received on 2008-12-17 16:56:46 CET