Why is there a windows newline in your dump file? Svn dumps are binary
files, not text.
Now, maybe the svn:mergeinfo property in general should allow windows
newlines (which is what your patch does), but why?
--dave
On May 8, 2009 3:23 PM, "John Skopis" <jskopis_at_backstopsolutions.com> wrote:
Hello,
svnadmin load fails while importing a dump that contains a windows newline
in svn:mergeinfo prop. I have not done extensive testing on this patch, but
it should work (in that it doesn't segfault when I attempt to import a
revision with \r\n in mergeinfo). Be advised I am not actually a developer.
Thanks,
John Skopis
Systems Administration
[[[
* subversion/libsvn_subr/mergeinfo.c
(parse_revlist): Ignore windows newlines in svn:mergeinfo
]]]
Index: subversion/libsvn_subr/mergeinfo.c
===================================================================
--- subversion/libsvn_subr/mergeinfo.c (revision 37647)
+++ subversion/libsvn_subr/mergeinfo.c (working copy)
@@ -402,7 +403,7 @@
svn_revnum_t firstrev;
SVN_ERR(svn_revnum_parse(&firstrev, curr, &curr));
- if (*curr != '-' && *curr != '\n' && *curr != ',' && *curr != '*'
+ if (*curr != '-' && *curr != '\n' && *curr != ',' && *curr != '*' &&
*curr != '\r'
&& curr != end)
return svn_error_createf(SVN_ERR_MERGEINFO_PARSE_ERROR, NULL,
_("Invalid character '%c' found in revision
"
@@ -430,8 +431,10 @@
mrange->end = secondrev;
}
- if (*curr == '\n' || curr == end)
+ if (*curr == '\r' || *curr == '\n' || curr == end)
{
+ if ( *curr == '\r' )
+ curr++;
APR_ARRAY_PUSH(revlist, svn_merge_range_t *) = mrange;
*input = curr;
return SVN_NO_ERROR;
@@ -445,10 +448,10 @@
{
mrange->inheritable = FALSE;
curr++;
- if (*curr == ',' || *curr == '\n' || curr == end)
+ if (*curr == ',' || *curr == '\n' || *curr == '\r' || curr == end
)
{
APR_ARRAY_PUSH(revlist, svn_merge_range_t *) = mrange;
- if (*curr == ',')
+ if (*curr == ',' || *curr == '\r' )
{
curr++;
}
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2121222
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2176270
Received on 2009-05-10 22:33:21 CEST