manual merge
This commit is contained in:
commit
d7d61f59dd
@ -1445,34 +1445,38 @@ static int run_tool(const char *tool_path, DYNAMIC_STRING *ds_res, ...)
|
|||||||
Test if diff is present. This is needed on Windows systems
|
Test if diff is present. This is needed on Windows systems
|
||||||
as the OS returns 1 whether diff is successful or if it is
|
as the OS returns 1 whether diff is successful or if it is
|
||||||
not present.
|
not present.
|
||||||
Takes name of diff program as argument
|
|
||||||
|
|
||||||
We run diff -v and look for output in stdout.
|
We run diff -v and look for output in stdout.
|
||||||
We don't redirect stderr to stdout to make for a simplified check
|
We don't redirect stderr to stdout to make for a simplified check
|
||||||
Windows will output '"diff"' is not recognized... to stderr if it is
|
Windows will output '"diff"' is not recognized... to stderr if it is
|
||||||
not present.
|
not present.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int diff_check (const char *diff_name)
|
#ifdef __WIN__
|
||||||
|
|
||||||
|
static int diff_check(const char *diff_name)
|
||||||
{
|
{
|
||||||
char buf[512]= {0};
|
FILE *res_file;
|
||||||
FILE *res_file;
|
char buf[128];
|
||||||
char cmd[128];
|
int have_diff= 0;
|
||||||
my_snprintf (cmd, sizeof(cmd), "%s -v", diff_name);
|
|
||||||
int have_diff = 0;
|
|
||||||
|
|
||||||
if (!(res_file= popen(cmd, "r")))
|
my_snprintf(buf, sizeof(buf), "%s -v", diff_name);
|
||||||
die("popen(\"%s\", \"r\") failed", cmd);
|
|
||||||
|
|
||||||
/* if diff is not present, nothing will be in stdout to increment have_diff */
|
if (!(res_file= popen(buf, "r")))
|
||||||
if (fgets(buf, sizeof(buf), res_file))
|
die("popen(\"%s\", \"r\") failed", buf);
|
||||||
{
|
|
||||||
have_diff += 1;
|
/* if diff is not present, nothing will be in stdout to increment have_diff */
|
||||||
}
|
if (fgets(buf, sizeof(buf), res_file))
|
||||||
pclose(res_file);
|
have_diff= 1;
|
||||||
return have_diff;
|
|
||||||
|
pclose(res_file);
|
||||||
|
|
||||||
|
return have_diff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Show the diff of two files using the systems builtin diff
|
Show the diff of two files using the systems builtin diff
|
||||||
command. If no such diff command exist, just dump the content
|
command. If no such diff command exist, just dump the content
|
||||||
|
Loading…
x
Reference in New Issue
Block a user