subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From julianf...@apache.org
Subject svn commit: r1833141 - /subversion/trunk/subversion/libsvn_client/shelf.c
Date Thu, 07 Jun 2018 19:17:08 GMT
Author: julianfoad
Date: Thu Jun  7 19:17:08 2018
New Revision: 1833141

URL: http://svn.apache.org/viewvc?rev=1833141&view=rev
Log:
Shelving: Detect and refuse to shelve an unversioned tree-conflicted victim path.

Previously a path with this status was silently skipped.

* subversion/libsvn_client/shelf.c
  (write_changes_visitor): Detect and refuse all conflicts.

* subversion/tests/cmdline/shelf_tests.py
  (refuse_to_shelve_conflict): New test.
  (test_list): Run it.

Modified:
    subversion/trunk/subversion/libsvn_client/shelf.c

Modified: subversion/trunk/subversion/libsvn_client/shelf.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/shelf.c?rev=1833141&r1=1833140&r2=1833141&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/shelf.c (original)
+++ subversion/trunk/subversion/libsvn_client/shelf.c Thu Jun  7 19:17:08 2018
@@ -974,7 +974,14 @@ write_changes_visitor(void *baton,
   const char *wc_relpath = svn_dirent_skip_ancestor(wb->wc_root_abspath,
                                                     local_abspath);
 
-  switch (status->node_status)
+  /* Catch any conflict, even a tree conflict on a path that has
+     node-status 'unversioned'. */
+  if (status->conflicted)
+    {
+      SVN_ERR(notify_not_shelved(wb, wc_relpath, local_abspath,
+                                 status, scratch_pool));
+    }
+  else switch (status->node_status)
     {
       case svn_wc_status_deleted:
       case svn_wc_status_added:



Mime
View raw message