|
Lines 731-748
matchc(int patln, char *pat, int strln,
Link Here
|
| 731 |
register char *ep = pat + patln; |
731 |
register char *ep = pat + patln; |
| 732 |
register char pc = *pat++; |
732 |
register char pc = *pat++; |
| 733 |
|
733 |
|
| 734 |
for(;;) { |
734 |
for(;str <= es; str++) { |
| 735 |
while (pc != *str++) |
735 |
if (pc != *str) |
| 736 |
if (str > es) |
736 |
continue; |
| 737 |
return 0; |
|
|
| 738 |
if (str > es+1) |
737 |
if (str > es+1) |
| 739 |
return 0; |
738 |
return 0; |
| 740 |
sp = str; pp = pat; |
739 |
sp = str+1; pp = pat; |
| 741 |
while (pp < ep && *sp++ == *pp) |
740 |
while (pp < ep && *sp++ == *pp) |
| 742 |
pp++; |
741 |
pp++; |
| 743 |
if (pp >= ep) |
742 |
if (pp >= ep) |
| 744 |
return ((unsigned char *)--str); |
743 |
return ((unsigned char *)str); |
| 745 |
} |
744 |
} |
|
|
745 |
return 0; |
| 746 |
} |
746 |
} |
| 747 |
|
747 |
|
| 748 |
|
748 |
|