subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From phi...@apache.org
Subject svn commit: r1451690 - in /subversion/trunk/subversion: libsvn_wc/wc_db_update_move.c tests/cmdline/move_tests.py
Date Fri, 01 Mar 2013 19:09:16 GMT
Author: philip
Date: Fri Mar  1 19:09:16 2013
New Revision: 1451690

URL: http://svn.apache.org/r1451690
Log:
Fix a move-update SEGV in property handling.

* subversion/libsvn_wc/wc_db_update_move.c
  (tc_editor_alter_file): Remove a workqueue item merge.

* subversion/tests/cmdline/move_tests.py
  (prop_test1): Start testing status after resolve, mark XFAIL rather
   than WIMP since it is now a status mismatch rather than a SEGV. 

Modified:
    subversion/trunk/subversion/libsvn_wc/wc_db_update_move.c
    subversion/trunk/subversion/tests/cmdline/move_tests.py

Modified: subversion/trunk/subversion/libsvn_wc/wc_db_update_move.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/wc_db_update_move.c?rev=1451690&r1=1451689&r2=1451690&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/wc_db_update_move.c (original)
+++ subversion/trunk/subversion/libsvn_wc/wc_db_update_move.c Fri Mar  1 19:09:16 2013
@@ -1021,13 +1021,11 @@ tc_editor_alter_file(void *baton,
     {
       svn_skel_t *work_items;
 
-      SVN_ERR(update_working_file(&work_items, dst_relpath,
+      SVN_ERR(update_working_file(b->work_items, dst_relpath,
                                   move_dst_repos_relpath,
                                   b->operation, &old_version, &new_version,
                                   b->wcroot, b->db,
                                   b->result_pool, scratch_pool));
-      *b->work_items = svn_wc__wq_merge(*b->work_items, work_items,
-                                        b->result_pool);
     }
 
   return SVN_NO_ERROR;

Modified: subversion/trunk/subversion/tests/cmdline/move_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/move_tests.py?rev=1451690&r1=1451689&r2=1451690&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/move_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/move_tests.py Fri Mar  1 19:09:16 2013
@@ -1027,7 +1027,7 @@ def deeper_move_file_test(sbox):
   move_file_tests(sbox, source, dest, move_func, tests)
 
 
-@Wimp("SEGV in add_single_work_item")
+@XFail()
 def prop_test1(sbox):
   "test property merging on move-update"
 
@@ -1074,27 +1074,27 @@ def prop_test1(sbox):
   expected_status = svntest.actions.get_virginal_state(wc_dir, 2)
   expected_status.tweak('A/C', status='D ', moved_to='A/C2')
   expected_status.add({
-      'A/C/D1'  : Item(status='D ', wc_rev =2),
-      'A/C/D2'  : Item(status='D ', wc_rev =2),
-      'A/C/D3'  : Item(status='D ', wc_rev =2),
-      'A/C/D4'  : Item(status='D ', wc_rev =2),
-      'A/C/D5'  : Item(status='D ', wc_rev =2),
-      'A/C/f1'  : Item(status='D ', wc_rev =2),
-      'A/C/f2'  : Item(status='D ', wc_rev =2),
-      'A/C/f3'  : Item(status='D ', wc_rev =2),
-      'A/C/f4'  : Item(status='D ', wc_rev =2),
-      'A/C/f5'  : Item(status='D ', wc_rev =2),
-      'A/C2'    : Item(status='A ', copied='+', wc_rev ='-', moved_from='A/C'),
-      'A/C2/D1' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/D2' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/D3' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/D4' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/D5' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/f1' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/f2' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/f3' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/f4' : Item(status=' M', copied='+', wc_rev ='-'),
-      'A/C2/f5' : Item(status=' M', copied='+', wc_rev ='-'),
+      'A/C/D1'  : Item(status='D ', wc_rev=2),
+      'A/C/D2'  : Item(status='D ', wc_rev=2),
+      'A/C/D3'  : Item(status='D ', wc_rev=2),
+      'A/C/D4'  : Item(status='D ', wc_rev=2),
+      'A/C/D5'  : Item(status='D ', wc_rev=2),
+      'A/C/f1'  : Item(status='D ', wc_rev=2),
+      'A/C/f2'  : Item(status='D ', wc_rev=2),
+      'A/C/f3'  : Item(status='D ', wc_rev=2),
+      'A/C/f4'  : Item(status='D ', wc_rev=2),
+      'A/C/f5'  : Item(status='D ', wc_rev=2),
+      'A/C2'    : Item(status='A ', copied='+', wc_rev='-', moved_from='A/C'),
+      'A/C2/D1' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/D2' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/D3' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/D4' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/D5' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/f1' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/f2' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/f3' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/f4' : Item(status=' M', copied='+', wc_rev='-'),
+      'A/C2/f5' : Item(status=' M', copied='+', wc_rev='-'),
       })
   svntest.actions.run_and_verify_status(wc_dir, expected_status)
 
@@ -1104,6 +1104,19 @@ def prop_test1(sbox):
                                      '--accept=mine-conflict',
                                      sbox.ospath('A/C'))
 
+  expected_status.tweak(wc_rev=3)
+  expected_status.tweak('A/C2',
+                        'A/C2/D1', 'A/C2/D2', 'A/C2/D3', 'A/C2/D4', 'A/C2/D5',
+                        'A/C2/f1', 'A/C2/f2', 'A/C2/f3', 'A/C2/f4', 'A/C2/f5',
+                        wc_rev='-')
+  expected_status.tweak('A/C2/D3', 'A/C2/D3',
+                        status='  ')
+  expected_status.tweak('A/C2/D4', 'A/C2/D5',
+                        'A/C2/f4', 'A/C2/f5',
+                        status=' C')
+
+  svntest.actions.run_and_verify_status(wc_dir, expected_status)
+
 
 #######################################################################
 # Run the tests



Mime
View raw message