FreeBSD/contrib/subversion/subversion/libsvn_client/delete.c
/* Check whether LOCAL_ABSPATH is an external and raise an error if it is.

   A file external should not be deleted since the file external is
   implemented as a switched file and it would delete the file the
   file external is switched to, which is not the behavior the user
   would probably want.

   A directory external should not be deleted since it is the root
   of a different working copy. */
Check whether LOCAL_ABSPATH is an external and raise an error if it is.
A file external should not be deleted since the file external is
implemented as a switched file and it would delete the file the
file external is switched to, which is not the behavior the user
would probably want.

A directory external should not be deleted since it is the root
of a different working copy.
Check whether LOCAL_ABSPATH is an external and raise an error if it is . A file external should not be deleted since the file external is implemented as a switched file and it would delete the file the file external is switched to which is not the behavior the user would probably want . A directory external should not be deleted since it is the root of a different working copy .
static svn_error_t *
check_external(const char *local_abspath,
               svn_client_ctx_t *ctx,
               apr_pool_t *scratch_pool)
{
  svn_node_kind_t external_kind;
  const char *defining_abspath;
  SVN_ERR(svn_wc__read_external_info(&external_kind, &defining_abspath, NULL,
                                     NULL, NULL,
                                     ctx->wc_ctx, local_abspath,
                                     local_abspath, TRUE,
                                     scratch_pool, scratch_pool));
  if (external_kind != svn_node_none)
    return svn_error_createf(SVN_ERR_WC_CANNOT_DELETE_FILE_EXTERNAL, NULL,
                             _("Cannot remove the external at '%s'; "
                               "please edit or delete the svn:externals "
                               "property on '%s'"),
                             svn_dirent_local_style(local_abspath,
                                                    scratch_pool),
                             svn_dirent_local_style(defining_abspath,
                                                    scratch_pool));
  return SVN_NO_ERROR;
}
static svn_error_t * check_external ( const char * local_abspath , svn_client_ctx_t * ctx , apr_pool_t * scratch_pool ) { svn_node_kind_t external_kind ; const char * defining_abspath ; SVN_ERR ( svn_wc__read_external_info ( & external_kind , & defining_abspath , NULL , NULL , NULL , ctx -> wc_ctx , local_abspath , local_abspath , TRUE , scratch_pool , scratch_pool ) ) ; if ( external_kind != svn_node_none ) return svn_error_createf ( SVN_ERR_WC_CANNOT_DELETE_FILE_EXTERNAL , NULL , _ ( " " " " " " ) , svn_dirent_local_style ( local_abspath , scratch_pool ) , svn_dirent_local_style ( defining_abspath , scratch_pool ) ) ; return SVN_NO_ERROR ; }
Check whether LOCAL_ABSPATH is an external and raise an error if it is.
Check whether LOCAL_ABSPATH is an external and raise an error if it is .