Author: philip
Date: Wed Jun 9 15:01:58 2010
New Revision: 953036
URL: http://svn.apache.org/viewvc?rev=953036&view=rev
Log:
Fix the dav cache; it was being set too early so any values stored
didn't persist.
* subversion/libsvn_wc/update_editor.c
(close_file, close_directory): Set the dav cache after the base
node is constructed.
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=953036&r1=953035&r2=953036&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/update_editor.c (original)
+++ subversion/trunk/subversion/libsvn_wc/update_editor.c Wed Jun 9 15:01:58
2010
@@ -3057,15 +3057,6 @@ close_directory(void *dir_baton,
&new_changed_author,
eb->db, db->local_abspath, entry_props,
pool, pool));
-
- /* Handle the wcprops. */
- if (wc_props && wc_props->nelts > 0)
- {
- SVN_ERR(svn_wc__db_base_set_dav_cache(eb->db, db->local_abspath,
- prop_hash_from_array(wc_props,
- pool),
- pool));
- }
}
/* If this directory is merely an anchor for a targeted child, then we
@@ -3171,6 +3162,15 @@ close_directory(void *dir_baton,
work_items,
pool));
}
+
+ /* Handle the wcprops. */
+ if (wc_props && wc_props->nelts > 0)
+ {
+ SVN_ERR(svn_wc__db_base_set_dav_cache(eb->db, db->local_abspath,
+ prop_hash_from_array(wc_props,
+ pool),
+ pool));
+ }
}
/* Process all of the queued work items for this directory. */
@@ -4859,13 +4859,6 @@ close_file(void *file_baton,
all_work_items = svn_wc__wq_merge(all_work_items, work_item, pool);
}
- /* This writes a whole bunch of log commands to install wcprops. */
- /* ### no it doesn't. this immediately modifies them. should probably
- ### occur later, when we know the (new) BASE node exists. */
- SVN_ERR(svn_wc__db_base_set_dav_cache(eb->db, fb->local_abspath,
- prop_hash_from_array(wc_props, pool),
- pool));
-
/* Do the hard work. This will queue some additional work. */
SVN_ERR(merge_file(&work_item, &install_pristine, &install_from,
&content_state, fb, new_text_base_abspath, pool));
@@ -4981,6 +4974,12 @@ close_file(void *file_baton,
all_work_items,
pool));
+ /* This writes a whole bunch of log commands to install wcprops. */
+ /* ### no it doesn't. this immediately modifies them. */
+ SVN_ERR(svn_wc__db_base_set_dav_cache(eb->db, fb->local_abspath,
+ prop_hash_from_array(wc_props, pool),
+ pool));
+
/* ### ugh. deal with preserving the file external value in the database.
### there is no official API, so we do it this way. maybe we should
### have a temp API into wc_db. */