Commit | Line | Data |
---|---|---|
8c24706b BJ |
1 | static char *sccsid = "@(#)basename.c 4.1 (Berkeley) %G%"; |
2 | #include "stdio.h" | |
3 | ||
4 | main(argc, argv) | |
5 | char **argv; | |
6 | { | |
7 | register char *p1, *p2, *p3; | |
8 | ||
9 | if (argc < 2) { | |
10 | putchar('\n'); | |
11 | exit(1); | |
12 | } | |
13 | p1 = argv[1]; | |
14 | p2 = p1; | |
15 | while (*p1) { | |
16 | if (*p1++ == '/') | |
17 | p2 = p1; | |
18 | } | |
19 | if (argc>2) { | |
20 | for(p3=argv[2]; *p3; p3++) | |
21 | ; | |
22 | while(p1>p2 && p3>argv[2]) | |
23 | if(*--p3 != *--p1) | |
24 | goto output; | |
25 | *p1 = '\0'; | |
26 | } | |
27 | output: | |
28 | puts(p2, stdout); | |
29 | exit(0); | |
30 | } |