2018-03-24 08:45:04 +01:00
|
|
|
#include "test-tool.h"
|
2012-10-15 08:25:55 +02:00
|
|
|
#include "cache.h"
|
|
|
|
|
2018-03-24 08:45:04 +01:00
|
|
|
int cmd__wildmatch(int argc, const char **argv)
|
2012-10-15 08:25:55 +02:00
|
|
|
{
|
2012-11-20 08:02:39 +01:00
|
|
|
int i;
|
|
|
|
for (i = 2; i < argc; i++) {
|
|
|
|
if (argv[i][0] == '/')
|
|
|
|
die("Forward slash is not allowed at the beginning of the\n"
|
|
|
|
"pattern because Windows does not like it. Use `XXX/' instead.");
|
|
|
|
else if (!strncmp(argv[i], "XXX/", 4))
|
|
|
|
argv[i] += 3;
|
|
|
|
}
|
2012-10-15 08:25:55 +02:00
|
|
|
if (!strcmp(argv[1], "wildmatch"))
|
2017-06-22 23:38:08 +02:00
|
|
|
return !!wildmatch(argv[3], argv[2], WM_PATHNAME);
|
2012-10-15 08:25:55 +02:00
|
|
|
else if (!strcmp(argv[1], "iwildmatch"))
|
2017-06-22 23:38:08 +02:00
|
|
|
return !!wildmatch(argv[3], argv[2], WM_PATHNAME | WM_CASEFOLD);
|
2013-01-01 03:44:07 +01:00
|
|
|
else if (!strcmp(argv[1], "pathmatch"))
|
2017-06-22 23:38:08 +02:00
|
|
|
return !!wildmatch(argv[3], argv[2], 0);
|
2018-01-30 22:21:21 +01:00
|
|
|
else if (!strcmp(argv[1], "ipathmatch"))
|
|
|
|
return !!wildmatch(argv[3], argv[2], WM_CASEFOLD);
|
2012-10-15 08:25:55 +02:00
|
|
|
else
|
|
|
|
return 1;
|
|
|
|
}
|