[prev in list] [next in list] [prev in thread] [next in thread] 

List:       fossil-dev
Subject:    [fossil-dev] Bug in output created by "fossil export --git"
From:       Rowan Thorpe <rowan () rowanthorpe ! com>
Date:       2018-01-29 20:46:31
Message-ID: CACgDUr62s5OQF3JbLeQGo7a=g3mZBhjui81-_BTMKXHQ4OAVOA () mail ! gmail ! com
[Download RAW message or body]

I already reported this as a bug at the git mailing list (thinking it
was a bug in how "git fast-import" imported the output of "fossil
export --git"), but it was clarified that it is actually a bug in
fossil, where it is not adequately quoting some filenames on export.
That thread (for context) is at:

 https://marc.info/?t=151724462800008

but the crux of the problem is that the input to "git fast-import"
must obey the following:

> A <path> string must use UNIX-style directory separators (forward
> slash /), may contain any byte other than LF, and must not start
> with double quote (").
>
> A path can use C-style string quoting; this is accepted in all
> cases and mandatory if the filename starts with double quote or
> contains LF. In C-style quoting, the complete name should be
> surrounded with double quotes, and any LF, backslash, or double
> quote characters must be escaped by preceding them with a backslash
> (e.g., "path/with\n, \\ and \" in it").

whereas "fossil export --git" doesn't quote the filenames in any form.
A test-case for this is the Fossil repo itself - when exporting it to
git, in one of the unit-tests the file with embedded newline
("abc[NEWLINE]def.txt") causes faulty input and a consequent crash in
"git fast-import".
_______________________________________________
fossil-dev mailing list
fossil-dev@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/fossil-dev

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic