Make the working copy status reporter always report tree conflicts; even if the node with the tree conflict is shadowed by a file, somewhere up the tree.
Usually the status walker doesn't descend below files that used to be directories, but after this patch it will descend if there are tree conflicts below this file.
This fixes the ugly case that currently the tree conflict resolver doesn't even see these tree conflicts, unless it just created them. So it certainly wouldn't have resolved them properly.
* subversion/libsvn_wc/status.c (svn_wc__internal_status_t): New struct. (edit_baton): Update status type. (internal_status, assemble_status, assemble_unversioned): Produce svn_wc__internal_status_t instead of svn_wc_status3_t. (send_status_structure, send_unversioned_item): Update caller.,
(one_child_status): Update has descendants check. (hash_stash): Copy private values. (tweak_status_hash): Update init. (find_dir_repos_relpath): Update usage. (make_dir_baton): Update has descendants check. (is_sendable_status): Update type. (handle_statii): Update has descendants check. (close_directory): Update caller. (svn_wc__internal_walk_status): Update has descendants check. (internal_status): Update output type. (svn_wc_status3): Update caller. (svn_wc_dup_status3): Create svn_wc__internal_status_t, but duplicate only svn_wc_status3_t.
* subversion/libsvn_wc/wc-queries.sql (STMT_FIND_CONFLICT_DESCENDANT): New query.
* subversion/libsvn_wc/wc_db.c (find_conflict_descendants): New function. (read_children_info): Set has_descendants on a node if it is a directory in WORKING/ACTUAL or it was a directory at some layer, and has actual descendants. (read_single_info): Set has_descendants.