vcs-svn: pass paths through to fast-import

Now that there is no internal representation of the repo, it is not
necessary to tokenise paths.  Use strbuf instead and bypass
string_pool.

This means svn-fe can handle arbitrarily long paths (as long as a
strbuf can fit them), with arbitrarily many path components.

While at it, since we now treat paths in their entirety, only quote
when necessary.

Signed-off-by: David Barr <david.barr@cordelta.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
This commit is contained in:
David Barr
2010-12-13 16:41:12 +11:00
committed by Jonathan Nieder
parent fa6c4bceab
commit 030879718f
5 changed files with 62 additions and 62 deletions

View File

@ -8,15 +8,12 @@
#define REPO_MODE_EXE 0100755
#define REPO_MODE_LNK 0120000
#define REPO_MAX_PATH_LEN 4096
#define REPO_MAX_PATH_DEPTH 1000
uint32_t next_blob_mark(void);
void repo_copy(uint32_t revision, const uint32_t *src, const uint32_t *dst);
void repo_add(uint32_t *path, uint32_t mode, uint32_t blob_mark);
const char *repo_read_path(const uint32_t *path);
uint32_t repo_read_mode(const uint32_t *path);
void repo_delete(uint32_t *path);
void repo_copy(uint32_t revision, const char *src, const char *dst);
void repo_add(const char *path, uint32_t mode, uint32_t blob_mark);
const char *repo_read_path(const char *path);
uint32_t repo_read_mode(const char *path);
void repo_delete(const char *path);
void repo_commit(uint32_t revision, const char *author,
char *log, const char *uuid, const char *url,
long unsigned timestamp);