Sérgio Basto wrote:
> Philip Martin wrote:
>> Or you could rebuild the current APR with a
>> one-line patch to set ht->seed to 0 in apr_hash.c:apr_hash_make.
>
> I think when subversion receive the result of this apr_function , we
> should do the sort , ie , subversion should not depend on sort or not
> sort of the apr .
>
> So where in source code we have the return of apr function ?
There is not just one place, there are many places, even within the diff code. Start in subversion/svn/diff-cmd.c, at svn_cl__diff(), and follow the function calls down. For a WC-to-WC diff, these are the main calls:
svn_cl__diff
|
svn_client_diff[_summarize]6, svn_client_diff[_summarize]_peg2
|
svn_wc_diff6
|
svn_wc__internal_walk_status
|
get_dir_status
|
/* Walk all the children of this directory. */
for (hi = apr_hash_first(subpool, all_children);
hi; hi = apr_hash_next(hi))
This place determines the order of entries within a directory, for a WC-to-WC diff. That's just one of the code paths involved in diff. There are several others, depending on the kind of diff. For diffs against the repository, it is more complex. Also
look for code that determines the order of property changes.
- Julian
Received on 2012-03-22 09:23:56 CET