-/*
- * Hacky hacky. This depends not only on -p1, but on
- * filenames not having some special characters in them,
- * like tilde.
- */
-static void show_filename(char *line)
-{
- int len;
- char *name = strchr(line, '/');
-
- if (!name || !isspace(*line))
- return;
- name++;
- len = 0;
- for (;;) {
- unsigned char c = name[len];
- switch (c) {
- default:
- len++;
- continue;
-
- case 0: case ' ':
- case '\t': case '\n':
- break;
-
- /* patch tends to special-case these things.. */
- case '~':
- break;
- }
- break;
- }
- /* remove ".orig" from the end - common patch behaviour */
- if (len > 5 && !memcmp(name+len-5, ".orig", 5))
- len -=5;
- if (!len)
- return;
- fprintf(filelist, "%.*s\n", len, name);
-}
-