| * I don't want too many of these, |
| * but the ones we have are just too useful. |
| "#9", nil, /* must be first */ |
| plan9translate(char *old) |
| if(replace[0].new == nil){ |
| replace[0].new = getenv("PLAN9"); |
| if(replace[0].new == nil) |
| replace[0].new = "/usr/local/plan9"; |
| for(i=0; i<nelem(replace); i++){ |
| olen = strlen(replace[i].old); |
| if(strncmp(old, replace[i].old, olen) != 0 |
| || (old[olen] != '\0' && old[olen] != '/')) |
| nlen = strlen(replace[i].new); |
| len = strlen(old)+nlen-olen; |
| return "<out of memory>"; |
| strcpy(new, replace[i].new); |
| strcpy(new+nlen, old+olen); |
| assert(strlen(new) == len); |