[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] svnmucc assertion failure

From: Alexey Neyman <stilor_at_att.net>
Date: Sat, 3 Aug 2013 14:57:12 -0700

[Resending to dev@, as it is probably more appropriate audience for the patch]

Hi,

I've hit the following assertion in svnmucc:

svnmucc: subversion/libsvn_subr/dirent_uri.c:1373:
svn_uri_get_longest_ancestor: Assertion `svn_uri_is_canonical(uri1, ((void
*)0))' failed.
Aborted (core dumped)

The assertion was triggered when svnmucc was supplied with a script file that
had inconsistent URL specifications (it was cut-and-pasted from two different
scripts, one of which referred to SVN server by IP and the other by its domain
name). It can be easily reproduced with the following script, for example (no
repository setup is needed, as this assertion is triggered even before svnmucc
contacts the repository):

mkdir
svn://localhost/svn/branches/try
cp
1234
svn://127.0.0.1/svn/trunk/foo
svn://localhost/svn/branches/try/foo

I am not sure if it is a valid use case, but at the very least, the error
message should probably be a bit more user-friendly than an assertion.
Patch making svnmucc err out gracefully attached.

[[[
* subversion/svnmucc/svnmucc.c
  (main): Check for URLs not having a common ancestor and emit an error
  message instead of failing an assertion later.
]]]

Regards,
Alexey.

Received on 2013-08-03 23:58:08 CEST

This is an archived mail posted to the Subversion Dev mailing list.