launch_editor(): Heed GIT_EDITOR and core.editor settings
In the commit 'Add GIT_EDITOR environment and core.editor configuration variables', this was done for the shell scripts. Port it over to builtin-tag's version of launch_editor(), which is just about to be refactored into editor.c. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
62e09ce998
commit
4d87b9c5db
@ -24,7 +24,11 @@ static void launch_editor(const char *path, char **buffer, unsigned long *len)
|
||||
const char *args[3];
|
||||
int fd;
|
||||
|
||||
editor = getenv("VISUAL");
|
||||
editor = getenv("GIT_EDITOR");
|
||||
if (!editor && editor_program)
|
||||
editor = editor_program;
|
||||
if (!editor)
|
||||
editor = getenv("VISUAL");
|
||||
if (!editor)
|
||||
editor = getenv("EDITOR");
|
||||
|
||||
@ -249,9 +253,9 @@ static void create_tag(const unsigned char *object, const char *tag,
|
||||
char *message, int sign, unsigned char *result)
|
||||
{
|
||||
enum object_type type;
|
||||
char header_buf[1024], *buffer;
|
||||
char header_buf[1024], *buffer = NULL;
|
||||
int header_len, max_size;
|
||||
unsigned long size;
|
||||
unsigned long size = 0;
|
||||
|
||||
type = sha1_object_info(object, NULL);
|
||||
if (type <= 0)
|
||||
|
2
cache.h
2
cache.h
@ -560,6 +560,8 @@ extern char *pager_program;
|
||||
extern int pager_in_use;
|
||||
extern int pager_use_color;
|
||||
|
||||
extern char *editor_program;
|
||||
|
||||
/* base85 */
|
||||
int decode_85(char *dst, const char *line, int linelen);
|
||||
void encode_85(char *buf, const unsigned char *data, int bytes);
|
||||
|
5
config.c
5
config.c
@ -426,6 +426,11 @@ int git_default_config(const char *var, const char *value)
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!strcmp(var, "core.editor")) {
|
||||
editor_program = xstrdup(value);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Add other config variables here and to Documentation/config.txt. */
|
||||
return 0;
|
||||
}
|
||||
|
@ -33,6 +33,7 @@ size_t delta_base_cache_limit = 16 * 1024 * 1024;
|
||||
char *pager_program;
|
||||
int pager_in_use;
|
||||
int pager_use_color = 1;
|
||||
char *editor_program;
|
||||
int auto_crlf = 0; /* 1: both ways, -1: only when adding git objects */
|
||||
|
||||
static const char *git_dir;
|
||||
|
Loading…
Reference in New Issue
Block a user