You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by gs...@apache.org on 2010/05/10 05:55:08 UTC
svn commit: r942653 - /subversion/trunk/subversion/libsvn_wc/update_editor.c
Author: gstein
Date: Mon May 10 03:55:08 2010
New Revision: 942653
URL: http://svn.apache.org/viewvc?rev=942653&view=rev
Log:
We can now skip some immediate queuing of work items, since we can order
them properly against the merge_file() work. We still need to handle the
ACTUAL props earlier than desired, but we can (at least) omit the work
item queueing.
* subversion/libsvn_wc/update_editor.c:
(close_file): don't force queuing of the old-style props file
installation operations. they can go in with the rest, since we now
order them properly.
Modified:
subversion/trunk/subversion/libsvn_wc/update_editor.c
Modified: subversion/trunk/subversion/libsvn_wc/update_editor.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/update_editor.c?rev=942653&r1=942652&r2=942653&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/update_editor.c (original)
+++ subversion/trunk/subversion/libsvn_wc/update_editor.c Mon May 10 03:55:08 2010
@@ -4903,15 +4903,13 @@ close_file(void *file_baton,
apr_hash_t *props;
apr_array_header_t *prop_diffs;
- /* ### grr. the props changes need to occur before the merge_file()
- ### queued work. we need merge_file() to return a set of work
- ### items so that we can order them correctly. for now, get the
- ### new props into their old files. the in-database values are
- ### going to occur later (skew!), but we'll get that fixed before
- ### switching to db properties. */
- SVN_ERR(svn_wc__db_wq_add(eb->db, fb->local_abspath, all_work_items,
- pool));
-
+ /* ### grr. the BASE/ACTUAL props changes need to occur before the
+ ### merge_file() work. we may be able to solve this by shifting
+ ### some of the code blocks in this function up to here. in any
+ ### case, get the old-style props files written now, before
+ ### merge_file. the in-database values are going to occur later
+ ### (skew!), but we'll get that fixed before switching over to
+ ### db properties. */
props = new_actual_props;
SVN_ERR(svn_prop_diffs(&prop_diffs, new_actual_props, new_base_props,
pool));
@@ -4922,10 +4920,7 @@ close_file(void *file_baton,
svn_wc__db_kind_file,
props,
pool));
- SVN_ERR(svn_wc__db_wq_add(eb->db, fb->local_abspath, work_item, pool));
-
- /* ### nothing for add_file to queue up. */
- all_work_items = NULL;
+ all_work_items = svn_wc__wq_merge(all_work_items, work_item, pool);
}
/* This writes a whole bunch of log commands to install wcprops. */