Keegan Dunn wrote:
> This tiny patch for issue #2996 addresses the messy abort due to a
> user passing in a URL instead of a working copy path.
> This is my first patch here. I figured I'd give a tiny issue a try
> just to get my foot in the door. Be sure and let me know what I did
> horribly wrong, if anything.
Thanks for the patch. The log message is in the correct format, and so
is the patch. I think we need to look at a few other things though.
I think the problem is a little deeper than just replacing the abort.
The abort is occurring in diff_repos_wc(), and it ensures that the
internal API for that function isn't violated. Somewhere, we're
violating it, and *that's* the real problem.
From a little bit of investigation, it appears that check_paths(),
called from do_diff(), is saying that path1 (in do_diff()) is a working
copy path, when it really isn't. Could it be because we are using the
BASE revision keyword, which is a local keyword, and that is causing a
problem somewhere? If so, that might be the error, which should be
caught, and probably documented somewhere.
Keegan, would you like to look at this and see what you can come up with?
> Fix issue #2996: Don't abort on improper diff arguments.
> * subversion/libsvn_client/diff.c
> (diff_repos_wc): Replaced path2 URL assertion with descriptive error throw.
Received on Fri Nov 2 14:13:22 2007