Author: rinrab
Date: Tue Nov 26 17:42:09 2024
New Revision: 1922126
URL: http://svn.apache.org/viewvc?rev=1922126&view=rev
Log:
On the 'apply-processor' branch: Notify mergeinfo_changed() from the
prepare_merge_props_changed() function.
* subversion/libsvn_client/merge_processor.c
(prepare_merge_props_changed): Implement few TODO_STORE_PATH. Add
initialization of the old_mergeinfo variable to invoke
cb_table->mergeinfo_changed()
Modified:
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c
Modified:
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c
URL:
http://svn.apache.org/viewvc/subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c?rev=1922126&r1=1922125&r2=1922126&view=diff
==============================================================================
---
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c
(original)
+++
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c
Tue Nov 26 17:42:09 2024
@@ -344,7 +344,8 @@ prepare_merge_props_changed(const apr_ar
/* Make a record in BATON if we find a PATH where mergeinfo is added
where none existed previously or PATH is having its existing
mergeinfo deleted. */
- if (props->nelts)
+ if (merge_b->cb_table && merge_b->cb_table->mergeinfo_changed
+ && props->nelts)
{
int i;
@@ -355,7 +356,7 @@ prepare_merge_props_changed(const apr_ar
if (strcmp(prop->name, SVN_PROP_MERGEINFO) == 0)
{
/* Does LOCAL_ABSPATH have any pristine mergeinfo? */
- svn_boolean_t has_pristine_mergeinfo = FALSE;
+ const svn_string_t *old_mergeinfo;
apr_hash_t *pristine_props;
SVN_ERR(svn_wc_get_pristine_props(&pristine_props,
@@ -364,24 +365,16 @@ prepare_merge_props_changed(const apr_ar
scratch_pool,
scratch_pool));
- if (pristine_props
- && svn_hash_gets(pristine_props, SVN_PROP_MERGEINFO))
- has_pristine_mergeinfo = TRUE;
+ if (pristine_props)
+ old_mergeinfo = svn_hash_gets(pristine_props,
SVN_PROP_MERGEINFO);
+ else
+ old_mergeinfo = NULL;
- if (!has_pristine_mergeinfo && prop->value)
- {
-#if TODO_STORE_PATH
- alloc_and_store_path(&merge_b->paths_with_new_mergeinfo,
- local_abspath, merge_b->pool);
-#endif
- }
- else if (has_pristine_mergeinfo && !prop->value)
- {
-#if TODO_STORE_PATH
- alloc_and_store_path(&merge_b->paths_with_deleted_mergeinfo,
- local_abspath, merge_b->pool);
-#endif
- }
+ SVN_ERR(merge_b->cb_table->mergeinfo_changed(merge_b->cb_baton,
+ local_abspath,
+ old_mergeinfo,
+ prop->value,
+ scratch_pool));
}
}
}