On Thu, Oct 1, 2009 at 09:30, Bert Huijben <rhuijben_at_sharpsvn.net> wrote:
>...
> +++ trunk/subversion/libsvn_client/merge.c Thu Oct 1 06:30:29 2009 (r39737)
> @@ -415,38 +415,46 @@ obstructed_or_missing(const char *path,
>...
> + else
> + {
> + err = svn_wc__get_entry_versioned(&entry, merge_b->ctx->wc_ctx,
> + local_abspath, svn_node_unknown,
> + FALSE, FALSE, pool, pool);
> +
> + if (err)
> + {
> + svn_error_clear(err);
> + entry = NULL;
> + }
> + }
>
> - if (entry && entry->absent)
> + if ((wc_kind == svn_node_dir || wc_kind == svn_node_file)
> + && !entry)
> return svn_wc_notify_state_missing;
>
> - /* svn_wc__maybe_get_entry ignores node kind errors, so check if we
> - didn't get the parent stub */
> + /* ### This check (and most of this function)
> + can be removed after we move to one DB */
> + /* svn_wc__get_entry_versioned ignores node kind errors, so check if we
> + didn't get the parent stub, instead of the real thing */
> if (entry && entry->kind == svn_node_dir && *entry->name != '\0')
> return svn_wc_notify_state_missing; /* Only found parent entry */
This won't ever happen. svn_wc__get_entry_versioned() returns an
error, rather than the parent stub.
>
> - err = svn_wc__temp_node_obstructed(&obstructed, merge_b->ctx->wc_ctx,
> - local_abspath, pool);
> -
> - if (err)
> - svn_error_clear(err);
> - else if (obstructed)
> - return svn_wc_notify_state_obstructed;
I don't see where any of the above code returns this state. It does
look like the code below this context does, however.
>...
Cheers,
-g
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2402537
Received on 2009-10-01 16:01:11 CEST