Author: rinrab
Date: Fri Dec  6 15:51:02 2024
New Revision: 1922348

URL: http://svn.apache.org/viewvc?rev=1922348&view=rev
Log:
On the 'apply-processor' branch: replay r1922347 from 'trunk', marking it as
merged.

This is a follow-up to r1922333 (regarding apply-processor), which is similar
to r1922266 (this revision has been committed to trunk). So complicated...

* Revert changes in record_skip() and record_tree_conflict() functions.

Modified:
    subversion/branches/apply-processor/   (props changed)
    
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c

Propchange: subversion/branches/apply-processor/
------------------------------------------------------------------------------
  Reverse-merged /subversion/trunk:r1922328
  Merged /subversion/trunk:r1922347

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=1922348&r1=1922347&r2=1922348&view=diff
==============================================================================
--- 
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c 
(original)
+++ 
subversion/branches/apply-processor/subversion/libsvn_client/merge_processor.c 
Fri Dec  6 15:51:02 2024
@@ -594,7 +594,7 @@ record_skip(merge_apply_processor_baton_
   if (merge_b->record_only)
     return SVN_NO_ERROR; /* ### Why? - Legacy compatibility */
 
-  if (pdb->shadowed)
+  if (!(pdb && pdb->shadowed))
     SVN_ERR(notify_skipped_path(merge_b, local_abspath, scratch_pool));
 
   if (merge_b->notify_func)
@@ -647,7 +647,8 @@ record_tree_conflict(merge_apply_process
       svn_wc_conflict_description2_t *conflict;
       const svn_wc_conflict_version_t *left;
       const svn_wc_conflict_version_t *right;
-      apr_pool_t *result_pool = parent_baton->pool;
+      apr_pool_t *result_pool = parent_baton ? parent_baton->pool
+                                            : scratch_pool;
       svn_client__merge_source_t *source;
 
       if (reason == svn_wc_conflict_reason_deleted)
@@ -711,12 +712,15 @@ record_tree_conflict(merge_apply_process
       SVN_ERR(svn_wc__add_tree_conflict(merge_b->ctx->wc_ctx, conflict,
                                         scratch_pool));
 
-      if (! parent_baton->new_tree_conflicts)
-        parent_baton->new_tree_conflicts = apr_hash_make(result_pool);
+      if (parent_baton)
+        {
+          if (! parent_baton->new_tree_conflicts)
+            parent_baton->new_tree_conflicts = apr_hash_make(result_pool);
 
-      svn_hash_sets(parent_baton->new_tree_conflicts,
-                    apr_pstrdup(result_pool, local_abspath),
-                    conflict);
+          svn_hash_sets(parent_baton->new_tree_conflicts,
+                        apr_pstrdup(result_pool, local_abspath),
+                        conflict);
+        }
 
       /* ### TODO: Store in parent baton */
     }


Reply via email to