> -----Original Message-----
> From: phi...@apache.org [mailto:phi...@apache.org]
> Sent: donderdag 12 mei 2011 16:18
> To: comm...@subversion.apache.org
> Subject: svn commit: r1102321 -
> /subversion/trunk/subversion/libsvn_wc/entries.c
> 
> Author: philip
> Date: Thu May 12 14:17:32 2011
> New Revision: 1102321
> 
> URL: http://svn.apache.org/viewvc?rev=1102321&view=rev
> Log:
> Return an error, rather than assert, for upgrades involving replaced
> directories that are copies.
> 
> * subversion/libsvn_wc/entries.c
>   (write_entry): Return error rather than assert.
> 
> Modified:
>     subversion/trunk/subversion/libsvn_wc/entries.c
> 
> Modified: subversion/trunk/subversion/libsvn_wc/entries.c
> URL:
> http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/entri
> es.c?rev=1102321&r1=1102320&r2=1102321&view=diff
> ==========================================================
> ====================
> --- subversion/trunk/subversion/libsvn_wc/entries.c (original)
> +++ subversion/trunk/subversion/libsvn_wc/entries.c Thu May 12 14:17:32
> 2011
> @@ -1723,6 +1723,12 @@ write_entry(struct write_baton **entry_n
>          break;
> 
>        case svn_wc_schedule_delete:
> +        if (entry->copied)
> +          return svn_error_createf(SVN_ERR_UNSUPPORTED_FEATURE, NULL,
> +                   _("Cannot upgrade with copied/replaced directory '%s'"),
> +                   svn_dirent_local_style(parent_node->base->local_relpath,
> +                                          scratch_pool));
> +
>          SVN_ERR_ASSERT(!entry->copied);
>          working_node = MAYBE_ALLOC(working_node, result_pool);
>          if (parent_node->base)
> @@ -1730,6 +1736,12 @@ write_entry(struct write_baton **entry_n
>          break;
> 
>        case svn_wc_schedule_replace:
> +        if (parent_node->base && parent_node->work)
> +          return svn_error_createf(SVN_ERR_UNSUPPORTED_FEATURE, NULL,
> +                   _("Cannot upgrade with copied/replaced directory '%s'"),
> +                   svn_dirent_local_style(parent_node->base->local_relpath,
> +                                          scratch_pool));
> +

Isn't this a limitation from before we introduced multiple layers in NODES?

In the BASE+WORKING world where we lived until half a year ago, you couldn't 
replace WORKING with something else. But now we can just introduce a new 
op_depth layer on top.

        Bert

Reply via email to