On Tue, May 22, 2012 at 9:31 PM, <rhuij...@apache.org> wrote: >... > +++ subversion/trunk/subversion/libsvn_wc/wc_db.c Wed May 23 01:31:09 2012 > @@ -4947,17 +4947,29 @@ populate_targets_tree(svn_wc__db_wcroot_ > const char *changelist = APR_ARRAY_IDX(changelist_filter, i, > const char *); > > - SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb, stmt_idx)); > + SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb, > + STMT_INSERT_TARGET_WITH_CHANGELIST)); > SVN_ERR(svn_sqlite__bindf(stmt, "iss", wcroot->wc_id, > local_relpath, changelist)); > SVN_ERR(svn_sqlite__update(&sub_affected, stmt)); > > + /* If the root is matched by the changelist, we don't have to match > + the children. As that tells us the root is a file */ > + if (!sub_affected && depth > svn_depth_empty) > + { > + SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb, > stmt_idx)); > + SVN_ERR(svn_sqlite__bindf(stmt, "iss", wcroot->wc_id, > + local_relpath, changelist)); > + SVN_ERR(svn_sqlite__update(&sub_affected, stmt)); > + } > + > affected_rows += sub_affected; > } > } > else /* No changelist filtering */ > { > int stmt_idx; > + int sub_affected; > > switch (depth) > { > @@ -4983,9 +4995,19 @@ populate_targets_tree(svn_wc__db_wcroot_ > break; > } > > - SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb, stmt_idx)); > + SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb, > + STMT_INSERT_TARGET)); > SVN_ERR(svn_sqlite__bindf(stmt, "is", wcroot->wc_id, local_relpath)); > - SVN_ERR(svn_sqlite__update(&affected_rows, stmt)); > + SVN_ERR(svn_sqlite__update(&sub_affected, stmt)); > + affected_rows += sub_affected; > + > + if (depth > svn_depth_empty) > + {
Why is sub_affected not used here? (like above) ... should a comment be added to explain? >... Cheers, -g