On Sat, Jun 16, 2012 at 3:42 PM, Greg Stein <gst...@gmail.com> wrote: > > On Jun 15, 2012 10:44 PM, <i...@apache.org> wrote: >>... > > >> +++ subversion/trunk/subversion/libsvn_client/repos_diff.c Fri Jun 15 >> 20:44:00 2012 >> ... > >> @@ -1101,17 +1099,28 @@ close_directory(void *dir_baton, >> >> scratch_pool = b->pool; >> >> - if (!b->added && b->propchanges->nelts > 0) >> - remove_non_prop_changes(b->pristine_props, b->propchanges); >> + if (b->added) >> + { >> + pristine_props = eb->empty_hash; >> + } >> + else >> + { >> + SVN_ERR(svn_ra_get_dir2(eb->ra_session, NULL, NULL, >> &pristine_props, >> + b->path, b->base_revision, 0, >> scratch_pool)); >> + } >> + >> + if (b->propchanges->nelts > 0) >> + { >> + remove_non_prop_changes(pristine_props, b->propchanges); >> + } > > Shouldn't the remove_non_prop_changes() be moved into the else block? That > would be the same as before, and there is no need to try and remove stuff > from an empty hash. > remove_non_prop_changes() removes the changes from propchanges list, not from pristine cache.
-- Ivan Zhakov