[PATCH] Fix git-init-db creating crap directories
- From
Petr Baudis <pasky@suse.cz>
- Date
- Sep 20, 2005, 00:07 UTC
- Message-ID
- <20050920000731.GJ18320@pasky.or.cz>
- In-Reply-To
- <432F50BC.5000304@zytor.com>
Dear diary, on Tue, Sep 20, 2005 at 01:58:52AM CEST, I got a letter where "H. Peter Anvin" <hpa@zytor.com> told me that...
Show 19 quoted lines
> Petr Baudis wrote: > >Dear diary, on Tue, Sep 20, 2005 at 01:16:14AM CEST, I got a letter > > > >Another idea - try this patch: > > > >diff --git a/init-db.c b/init-db.c > >--- a/init-db.c > >+++ b/init-db.c > >@@ -154,6 +154,7 @@ static void copy_templates(const char *g > > } > > > > memcpy(path, git_dir, len); > >+ path[len] = 0; > > copy_templates_1(path, len, > > template_path, template_len, > > dir); > > > > This seems to have worked.
Great. Resending a marginally better version with a cool log message and everything.
--
The base target directory for the templates copying was initialized to git_dir, but git_dir[len] is not zero but / at the time we do the initialization. This is not what we want for our target directory string since we pass it to mkdir(), so make it zero-terminated manually.
Signed-off-by: Petr Baudis <pasky@suse.cz>
--- commit dbe1fe2f0d6de58bc0c9f98e6cf9573874612890 tree 30398d409fa27e95e3e592c803f6cd5a93652234 parent 79d2a11ec497fe940ca9a1fd8e0b9f295d39c290 author Petr Baudis <pasky@suse.cz> Tue, 20 Sep 2005 01:55:53 +0200 committer Petr Baudis <xpasky@machine.(none)> Tue, 20 Sep 2005 01:55:53 +0200
init-db.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/init-db.c b/init-db.c --- a/init-db.c +++ b/init-db.c @@ -153,7 +153,8 @@ static void copy_templates(const char *g return; } - memcpy(path, git_dir, len); + memcpy(path, git_dir, len-1); + path[len] = 0; copy_templates_1(path, len, template_path, template_len, dir);
-- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ VI has two modes: the one in which it beeps and the one in which it doesn't.