Merge branch 'jk/no-textconv-symlink'
* jk/no-textconv-symlink: diff: don't use pathname-based diff drivers for symlinks
This commit is contained in:
11
diff.c
11
diff.c
@ -1771,8 +1771,14 @@ static void emit_binary_diff(FILE *file, mmfile_t *one, mmfile_t *two, char *pre
|
||||
|
||||
static void diff_filespec_load_driver(struct diff_filespec *one)
|
||||
{
|
||||
if (!one->driver)
|
||||
/* Use already-loaded driver */
|
||||
if (one->driver)
|
||||
return;
|
||||
|
||||
if (S_ISREG(one->mode))
|
||||
one->driver = userdiff_find_by_path(one->path);
|
||||
|
||||
/* Fallback to default settings */
|
||||
if (!one->driver)
|
||||
one->driver = userdiff_find_by_name("default");
|
||||
}
|
||||
@ -1820,8 +1826,7 @@ struct userdiff_driver *get_textconv(struct diff_filespec *one)
|
||||
{
|
||||
if (!DIFF_FILE_VALID(one))
|
||||
return NULL;
|
||||
if (!S_ISREG(one->mode))
|
||||
return NULL;
|
||||
|
||||
diff_filespec_load_driver(one);
|
||||
if (!one->driver->textconv)
|
||||
return NULL;
|
||||
|
||||
Reference in New Issue
Block a user