[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Re: Reviewing r34562

From: Kamesh Jayachandran <kamesh_at_collab.net>
Date: Wed, 17 Dec 2008 21:34:13 +0530

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

r34762 and r34766.

We may need to fix the logical/real merge/conflict of
SVN_ERR_ASSERT->assert.

With regards
Kamesh Jayachandran

C. Michael Pilato wrote:
> 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);
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJSSL83WHvyO0YTCwRApACAJ4iw8H9OyKznDRdBk5acpaymkNKdACfXQRP
Kj5MWlrDOl6xMOwaAksRI1o=
=eA1F
-----END PGP SIGNATURE-----

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=985829
Received on 2008-12-17 17:03:10 CET

This is an archived mail posted to the Subversion Dev mailing list.