From 7e8934bba206bf28e3f51eb583aadde051129b11 Mon Sep 17 00:00:00 2001 From: Linquize Date: Tue, 17 Sep 2013 23:29:02 +0800 Subject: [PATCH] Can guess win32 git template dir --- src/fileops.c | 12 +++++++++++- src/fileops.h | 3 ++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/fileops.c b/src/fileops.c index 4dfc8a533..b7ae94b75 100644 --- a/src/fileops.c +++ b/src/fileops.c @@ -624,15 +624,25 @@ static int git_futils_guess_xdg_dirs(git_buf *out) #endif } +static int git_futils_guess_template_dirs(git_buf *out) +{ +#ifdef GIT_WIN32 + return git_win32__find_system_dirs(out, L"share\\git-core\\templates"); +#else + return git_buf_sets(out, "/usr/share/git-core/templates"); +#endif +} + typedef int (*git_futils_dirs_guess_cb)(git_buf *out); static git_buf git_futils__dirs[GIT_FUTILS_DIR__MAX] = - { GIT_BUF_INIT, GIT_BUF_INIT, GIT_BUF_INIT }; + { GIT_BUF_INIT, GIT_BUF_INIT, GIT_BUF_INIT, GIT_BUF_INIT }; static git_futils_dirs_guess_cb git_futils__dir_guess[GIT_FUTILS_DIR__MAX] = { git_futils_guess_system_dirs, git_futils_guess_global_dirs, git_futils_guess_xdg_dirs, + git_futils_guess_template_dirs, }; int git_futils_dirs_global_init(void) diff --git a/src/fileops.h b/src/fileops.h index 02f79b9e7..0ac9b9007 100644 --- a/src/fileops.h +++ b/src/fileops.h @@ -310,7 +310,8 @@ typedef enum { GIT_FUTILS_DIR_SYSTEM = 0, GIT_FUTILS_DIR_GLOBAL = 1, GIT_FUTILS_DIR_XDG = 2, - GIT_FUTILS_DIR__MAX = 3, + GIT_FUTILS_DIR_TEMPLATE = 3, + GIT_FUTILS_DIR__MAX = 4, } git_futils_dir_t; /**