# # patch "work.cc" # from [d4d35c96d2580fa04568041deb8e1e786df1dfa8] # to [941f2073a7cccf5548e7e0bdbfffabf649089684] # # patch "work.hh" # from [28d98ab9888bd1305d1f0110f3fb08f616f4846a] # to [8a4681dd53c7a2f7b69d946818fd95be1628b225] # ======================================================================== --- work.cc d4d35c96d2580fa04568041deb8e1e786df1dfa8 +++ work.cc 941f2073a7cccf5548e7e0bdbfffabf649089684 @@ -154,6 +154,8 @@ roster_t base_roster, new_roster; get_base_and_current_roster(base_roster, new_roster, nis, app); + editable_roster_base er(new_roster, nis); + if (!new_roster.has_root()) { split_path root; @@ -171,7 +173,7 @@ cset new_work; make_cset(base_roster, new_roster, new_work); put_work_cset(new_work); - update_any_attrs(new_work); + update_any_attrs(app); } void @@ -182,7 +184,7 @@ temp_node_id_source nis; roster_t base_roster, new_roster; - get_base_and_current_roster(base_roster, current_roster, nis, app); + get_base_and_current_roster(base_roster, new_roster, nis, app); // we traverse the the paths backwards, so that we always hit deep paths // before shallow paths (because path_set is lexicographically sorted). ======================================================================== --- work.hh 28d98ab9888bd1305d1f0110f3fb08f616f4846a +++ work.hh 8a4681dd53c7a2f7b69d946818fd95be1628b225 @@ -94,9 +94,9 @@ revision_id & rid, roster_t & ros, marking_map & mm); -void get_base_revision(revision_id & rid, - roster_t & ros, - app_state & app); +void get_base_revision(app_state & app, + revision_id & rid, + roster_t & ros); void get_base_roster(app_state & app, roster_t & ros); void get_current_roster(roster_t & ros, node_id_source & nis, app_state & app);